0
0
docker部署openvpn
文章摘要
|
拉取openvpn镜像
sudo docker pull chenji1506/openvpn:2.4.8
创建目录
sudo mkdir -pv /data/openvpn/conf
生成配置文件
1.1.1.1是本机的公网IP,按需改成自己的IP
docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_genconfig -u udp://1.1.1.1
生成密钥文件
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 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]: # 输入一个CA名称。可以不用输入,直接回车
Enter pass phrase for /etc/openvpn/pki/private/ca.key: 123456 # 输入刚才设置的私钥密码,完成后在输入一次
生成客户端证书
chenji改成其他名字
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa build-client-full chenji nopass
Enter pass phrase for /etc/openvpn/pki/private/ca.key: 123456 # 输入刚才设置的密码
导出客户端配置
docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_getclient chenji > /data/openvpn/conf/chenji.ovpn
启动openvpn
docker run -d \
--name openvpn \
-v /data/openvpn:/etc/openvpn \
-p 1194:1194/udp \
--cap-add=NET_ADMIN \
chenji1506/openvpn:2.4.8
openvpn用户管理
添加用户脚本
vim add_user.sh
add_user.sh的内容:
#!/bin/bash
read -p "please your username: " NAME
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa build-client-full $NAME nopass
docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_getclient $NAME > /data/openvpn/conf/"$NAME".ovpn
docker restart openvpn
删除用户脚本
vim del_user.sh
del_user.sh的内容:
#!/bin/bash
read -p "Delete username: " DNAME
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa revoke $DNAME
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa gen-crl
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/reqs/"DNAME".req
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/private/"DNAME".key
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/issued/"DNAME".crt
docker restart openvpn
添加用户
执行add_user.sh
./add_user.sh # 输入要添加的用户名,回车后输入刚才创建的私钥密码
