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