docker配置vpn

docker镜像开箱即用,基本上就是一条命令搞定了。可以在 https://hub.docker.com/ 上搜索镜像,查看帮助。

github : https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md

PPTP VPN

使用的镜像是 mobtitude/vpn-pptp,首先需要把用户名和密码配置一下,打开 /etc/ppp/chap-secrets,

#Secrets for authentication using CHAP
#client server secret IP addresses
ety001 * 123456 *

上面的就是配置了一个用户名 ety001 和 密码 123456 的用户,然后执行下面的命令就可以了,

docker run -d --name pptp --restart always  --privileged -p 1723:1723 -v /etc/ppp/chap-secrets:/etc/ppp/chap-secrets mobtitude/vpn-pptp

最后检查下 tcp 1723 端口在防火墙上是否打开就可以了。

L2TP + IPSEC VPN

使用的镜像是 hwdsl2/ipsec-vpn-server,需要先配置下用户名、密码和PSK,新建一个环境变量的文件 /etc/l2tp-env,内容如下

VPN_IPSEC_PSK=abcdef
VPN_USER=ety001
VPN_PASSWORD=123456

上面的就是配置了一个用户名 ety001,密码 123456,PSK 为 abcdef 的用户,然后执行下面的命令就可以了

docker run --name ipsec-vpn-server --env-file /etc/l2tp-env --restart=always -p 500:500/udp -p 4500:4500/udp -v /lib/modules:/lib/modules:ro -d --privileged hwdsl2/ipsec-vpn-server

最后检查下 udp 500 和 udp 4500 端口在防火墙上是否打开就可以了。

mac客户端连接

系统偏好设置 --> 网络 --> 添加vpn(L2TP)

连接成功后,添加路由。192.168.224.0(机房内网网段),192.168.42.1(VPN网关)

#!/bin/bash
#用户开机密码,免交互执行sudo
password='123456'
echo $password |sudo -S route add -net 192.168.224.0 192.168.42.1