avatar

Docker-OpenVPN镜像配置

Docker-OpenVPN镜像配置

项目中需要用到OpenVPN来接入到环境中

为了方便起见,所以采用了Docker


前言

kylemanna/openvpn这个镜像将大部分的一键化自动脚本进行整合,通过docker run一步一步进行配置

最后启动service就好了

首先拖取镜像 kylemanna/openvpn

1
docker pull kylemanna/openvpn

启动容器并初始化

1
docker run -v `pwd`/data/openvpn:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://0.0.0.0

生成密钥文件

1
docker run -v `pwd`/data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
1
2
3
4
5
6
7
8
输入私钥密码(输入时是看不见的):
Enter PEM pass phrase:12345678
再输入一遍
Verifying - Enter PEM pass phrase:12345678
输入一个CA名称(我这里直接回车)
Common Name (eg: your user, host, or server name) [Easy-RSA CA]:
输入刚才设置的私钥密码(输入完成后会再让输入一次)
Enter pass phrase for /etc/openvpn/pki/private/ca.key:12345678

生成客户端无密码证书

1
docker run -v `pwd`/data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full $openvpn_client nopass
1
2
输入刚才设置的密码
Enter pass phrase for /etc/openvpn/pki/private/ca.key:12345678

导出客户端证书

1
docker run -v `pwd`/data/openvpn:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient $openvpn_client > ./conf/"$openvpn_client".ovpn

开启OpenVPN服务

1
docker run --name openvpn -v `pwd`/data/openvpn:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn

这种情况下,只能一个证书一个用户,不能一个证书多个用户,所以可以在配置文件中加入以下数据,使得拿到证书就可以连入openvpn,实现一对多

1
duplicate-cn
文章作者: 咲夜南梦
文章链接: http://yoursite.com/2020/03/19/Docker-OpenVPN%E9%95%9C%E5%83%8F%E9%85%8D%E7%BD%AE/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 咲夜南梦's 博客
打赏
  • 微信
    微信
  • 支付宝
    支付宝

评论