在docker容器中搭建私人openv*n,源自:github传送门

文件路径~/

1
mkdir openvpn

openvpn目录下docker-compose.yml文件

文件路径~/openvpn/docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
version: '2'
services:
openvpn:
image: kylemanna/openvpn:2.4
container_name: openvpn67
ports:
- "67:1194/udp" #1194端口映射到公网的67端口
restart: always
volumes:
- ./openvpn-data:/etc/openvpn
cap_add:
- NET_ADMIN

文件路径~/openvpn/

1
2
# 在openvpn目录下创建文件夹openvpn-data
mkdir openvpn-data

配置容器

在文件路径~/openvpn/下运行

1
docker-compose run --rm openvpn ovpn_genconfig -u udp://ip:67

ip为公网ip,67为端口

生成密钥

在文件路径~/openvpn/下运行

1
docker-compose run --rm openvpn ovpn_initpki

按照命令提示输入两次密钥的密码(注:密码隐藏显示),一次名称,验证密码后出现CRL file: /etc/openvpn/pki/crl.pem路径即为生成完成.

生成用户配置文件

在文件路径~/openvpn/下运行

1
2
docker-compose run --rm openvpn easyrsa build-client-full tyudp67 nopass
docker-compose run --rm openvpn ovpn_getclient tyudp67 > ./tyudp67.ovpn

这里生成一个无密码的tyudp67用户配置文件

删除用户配置文件

在文件路径~/openvpn/下运行

1
2
3
docker-compose run --rm openvpn easyrsa revoke tyudp67
docker-compose run --rm openvpn easyrsa gen-crl update-db
docker-compose restart

启动open v*n

在文件路径~/openvpn/下运行

1
docker-compose up -d