峯言凬语 My life is brilliant~
本无意与众不同,怎奈何口味太重。
文章分类
友情链接

Docker利用Linux核心中的资源分脱机制,以及 Linux 核心名字空间(name space),来创建独立的软件容器(containers),可以在Linux实体下运作,避免启动一个虚拟机造成的额外负担。
L2TP/IPsec的Docker镜像部署很方便,这里以Teddysun.com的镜像部署为例:

1.安装并启动Docker:

wget -qO- get.docker.com | bash 

验证

docker version 

启动

systemctl start docker 

查看状态

systemctl status docker

设置开机自启

systemctl enable docker

2.拉取镜像

docker pull teddysun/l2tp

3.创建启动环境参数文件:

/etc/l2tp.env

内容:

VPN_IPSEC_PSK=nonnix.com
VPN_USER=vpnuser
VPN_PASSWORD=vpnpassword
VPN_PUBLIC_IP=
VPN_L2TP_NET=
VPN_L2TP_LOCAL=
VPN_L2TP_REMOTE=
VPN_XAUTH_NET=
VPN_XAUTH_REMOTE=
VPN_DNS1=
VPN_DNS2=

VPN_IPSEC_PSK:预共享密钥
VPN_USER:默认的登录用户名
VPN_PASSWORD:默认的登录用户密码
VPN_PUBLIC_IP:指定公网 IP 地址,当你的 VPS 有多个公网 IP 时,可能需要手动指定一下
VPN_L2TP_NET:内网 L2TP 网段范围,默认为 192.168.18.0/24,一般此处留空即可
VPN_L2TP_LOCAL:内网 L2TP 网关 IP,默认为 192.168.18.1,一般此处留空即可
VPN_L2TP_REMOTE:内网 L2TP 网段分配给连接的 IP 段,默认为 192.168.18.10-192.168.18.250,一般此处留空即可
VPN_XAUTH_NET:内网 XAUTH 网段范围,默认为 192.168.20.0/24,一般此处留空即可
VPN_XAUTH_REMOTE:内网 XAUTH 网段分配给连接的 IP 段,默认为 192.168.20.10-192.168.20.250,一般此处留空即可
VPN_DNS1:默认 DNS 服务器,8.8.8.8,一般此处留空即可
VPN_DNS2:默认 DNS 服务器,8.8.4.4,一般此处留空即可

4.启动容器:
(注意另外需要将 500 和 4500 端口的 UDP 映射到宿主机的对外端口上)

docker run -d --privileged -p 500:500/udp -p 4500:4500/udp --name l2tp --env-file /etc/l2tp.env -v /lib/modules:/lib/modules teddysun/l2tp

5.一般操作:
查看启动日志

docker logs l2tp

列出全部用户及其密码

docker exec -it l2tp l2tpctl -l

新增一个用户

docker exec -it l2tp l2tpctl -a

删除一个用户

docker exec -it l2tp l2tpctl -d

修改一个用户的密码

docker exec -it l2tp l2tpctl -m

打印容器里 libreswan 和 xl2tpd 的版本信息

docker exec -it l2tp l2tpctl -v 

打印控制脚本 l2tpctl 的帮助信息

docker exec -it l2tp l2tpctl -h 

此镜像基于官方debian:stretch制作,使用了libreswan-3.27和xl2tpd-1.3.12,支持L2TP/IPsec PSK和IPSec Xauth PSK 两种连接方式。

l2tpWindows.png

暂无评论

添加新评论