Skip to content

docker部署openvpn

拉取openvpn镜像

sh
	sudo docker pull chenji1506/openvpn:2.4.8

创建目录

sh
sudo mkdir -pv /data/openvpn/conf

生成配置文件

1.1.1.1是本机的公网IP,按需改成自己的IP

sh
docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_genconfig -u udp://1.1.1.1

生成密钥文件

sh
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 ovpn_initpki
sh
		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改成其他名字

sh
docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa build-client-full chenji nopass
sh
	Enter pass phrase for /etc/openvpn/pki/private/ca.key: 123456		# 输入刚才设置的密码

导出客户端配置

sh
docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_getclient chenji > /data/openvpn/conf/chenji.ovpn

启动openvpn

sh
docker run -d \
 --name openvpn \
 -v /data/openvpn:/etc/openvpn \
 -p 1194:1194/udp \
 --cap-add=NET_ADMIN \
 chenji1506/openvpn:2.4.8

openvpn用户管理

添加用户脚本

sh
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

删除用户脚本

sh
vim del_user.sh

del_user.sh的内容:

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

sh
./add_user.sh	# 输入要添加的用户名,回车后输入刚才创建的私钥密码

最近更新:10/11/2024, 5:02:55 AM

原文链接:docker部署openvpn

|下一篇:springboot2整合swagger2