docker部署vpn(转)

/ docker / 没有评论 / 3678浏览

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

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

查看网卡

ifconfig
docker network ls