Linux下使用docker搭建Openvpn代理的方法
说明
openvpn方式与pptpd方式对比(个人感觉):
复杂度:openvpn>pptpd
安全性:openvpn>pptpd
稳定性:openvpn>pptpd
1、安装
1.下载
docker pull kylemanna/openvpn
2.全局变量(方便设置)
OVPN_DATA="/root/ovpn-data" // 下面的全局变量换成你的服务器的外网ip IP="xxx.xxx.xxx.xxx"
3.创建文件目录
mkdir ${OVPN_DATA}
4.配置
docker run -v ${OVPN_DATA}:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u tcp://${IP}
5.初始化
docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
Enter PEM pass phrase: 输入123456(你是看不见的) Verifying - Enter PEM pass phrase: 输入123456(你是看不见的) Common Name (eg: your user, host, or server name) [Easy-RSA CA]:回车一下 Enter pass phrase for /etc/openvpn/pki/private/ca.key:输入123456
5.创建用户
docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full CLIENTNAME nopass
Enter pass phrase for /etc/openvpn/pki/private/ca.key:输入123456
6.生成密钥
docker run -v ${OVPN_DATA}:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > ${OVPN_DATA}/CLIENTNAME.ovpn
7.生成docker容器
docker run --name openvpn -v ${OVPN_DATA}:/etc/openvpn -d -p 1194:1194 --privileged kylemanna/openvpn
撤销签署的证书(删除用户)
进入docker
easyrsa revoke client1 easyrsa gen-crl cp /etc/openvpn/pki/crl.pem /etc/openvpn/crl.pem
编辑${OVPN_DATA}/openvpn.conf
crl-verify /etc/openvpn/crl.pe
重启Docker
作者测试环境说明:
系统: ubuntu 16.04 LTS
openvpn版本: