今でもあなたは私の光丶

docker 部署vpn(转)

手动直接在物理机上安装L2TP的VPN服务器还是比较繁琐的,为了方便,索性用Docker直接搭建,使用国外大神的L2TP服务器镜像即可,特此记录下:

0x01 下载镜像

从DockerHub中拉取镜像

docker pull fcojean/l2tp-ipsec-vpn-server

如果您和我一样,因为是国外网站的原因导致下载速度超慢,可以使用国内镜像,如下:

docker pull registry.docker-cn.com/fcojean/l2tp-ipsec-vpn-server

0x02 创建配置文件

需要创建一个env配置文件来指定我们的用户名密码以及共享密钥,我在我的/data目录下创建了一个config.env配置文件,内容如下:

VPN_IPSEC_PSK=hello
VPN_USER_CREDENTIAL_LIST=[{"login":"1iURI001","password":"liuri"},{"login":"1iURI002","password":"liuri"}]
VPN_NETWORK_INTERFACE=eth0
  • VPN_IPSEC_PSK:预共享密钥
  • VPN_USER_CREDENTIAL_LIST:用户信息数组,每个元素中的login字段为用户名,password为密码
  • VPN_NETWORK_INTERFACE:VPN服务器作用在哪个网卡下,根据你的实际情况来设置

0x03 加载Linux内核模块

在Docker宿主机上运行如下命令来启动IPsec NETKEY内核模块:

sudo modprobe af_key

modprobe可以让Linux不重启的情况下就加载某个内核

0x04 运行!

docker run \
    --name l2tp-ipsec-vpn-server \
    --env-file /data/config.env \
    -p 500:500/udp \
    -p 4500:4500/udp \
    -p 1701:1701/udp \
    -v /lib/modules:/lib/modules:ro \
    -d --privileged \
    registry.docker-cn.com/fcojean/l2tp-ipsec-vpn-server
  • --env-file参数指定为第0x02步创建的配置文件即可

作者:柠檬信息技术有限公司
链接:https://www.jianshu.com/p/8c783fd87f91
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

发表评论

1,591 条评论 “docker 部署vpn(转)”