阿里云主机通过Docker安装L2TP
背景
公司业务对接某第三方服务的需要,因为对方服务器白名单机制,需要一个固定IP. 而悲催的是由于公司网络环境无法提供公网IP,只好在外网测试机上面部署一个vpn来进行中转.PPTP因为安全原因现在osx和windows10好像都废弃了,那就直接上l2tp吧!想起以前搭建vpn那累死人的重复劳动,果断使用Docker集装箱.
部署
安装docker
这步骤就不说了,自己去docker.com上找教程,真的是分分钟
pull镜像
hub.docker.com上很多镜像,找了一个下载量最多的hub,pull下来
docker pull hwdsl2/ipsec-vpn-server
启动
启动之前,先执行下:
sudo modprobe af_key
然后建立一个vpn.env文件,内容如下:
VPN_IPSEC_PSK=这里填一个随机字符串,随便输吧,32位以内
VPN_USER=这里输入vpn的登录名
VPN_PASSWORD=这里输入vpn的登录密码
保存该文件在该文件当前目录下执行:
docker run \
--name l2tp-vpn-server \
--env-file ./vpn.env \
-p 500:500/udp \
-p 4500:4500/udp \
-v /lib/modules:/lib/modules:ro \
-d --privileged \
--restart=always \
hwdsl2/ipsec-vpn-server
然后等几秒之后执行:
docker logs l2tp-vpn-server
应该可以看到如下的信息:
Connect to your new VPN with these details:
Server IP: xxxxx
IPsec PSK: xxxx
Username: xxxx
Password: xxxx
好了,基本上这个时候就可以了,如果你发现你连不上,最好检查下你的阿里云的这台主机对应的安全组,记得把500和4500的公网入和公网出的udp权限打开即可!