江苏省吴江市双板桥路3号兴源网络

0512-63028342

ly@wjxy.net.cn

Docker上的IPsec VPN服务器(暂停使用)

环境变量
该Docker映像使用以下两个环境变量,这些变量可以在env文件中声明(请参阅vpn.env.example文件):

VPN_IPSEC_PSK=
VPN_USER_CREDENTIAL_LIST=[{“login”:”userTest1″,”password”:”test1″},{“login”:”userTest2″,”password”:”test2″}]
VPN_NETWORK_INTERFACE=eth0
VPN_IPSEC_PSK :IPsec PSK(预共享密钥)。
VPN_USER_CREDENTIAL_LIST:多个用户的VPN凭据列表。用户登录名和密码必须以json格式数组定义。应该为每个用户定义“登录”和“密码”属性。
VPN_NETWORK_INTERFACE :网络接口名称(默认为eth0)。
注意:在env文件中,请勿在值两边加上单引号或双引号,也不要在周围添加空格=。另外,请勿在值中使用这些字符:\ ” ‘

该映像的所有变量都是可选的,这意味着您不必键入任何环境变量,并且可以直接使用IPsec VPN服务器!请阅读以下各节以获取详细信息。

启动IPsec VPN服务器
很重要 !首先,在Docker主机上运行以下命令以加载IPsec NETKEY内核模块:

sudo modprobe af_key
使用以下命令启动一个新的Docker容器(替换./vpn.env为您自己的env文件):

mkdir -p /etc/l2tp
wget https://raw.githubusercontent.com/fcojean/l2tp-ipsec-vpn-server/master/vpn.env.example
mv /etc/l2tp/vpn.env.example /etc/l2tp/vpn.env
vi /etc/l2tp/vpn.env
-----------------------
修改:
VPN_IPSEC_PSK=
VPN_USER_CREDENTIAL_LIST=
VPN_DNS1 /可选
-------------------
docker run --name l2tp-ipsec-vpn-server --env-file /etc/l2tp/vpn.env -p 500:500/udp -p 4500:4500/udp -v /lib/modules:/lib/modules:ro -d --restart=always --privileged fcojean/l2tp-ipsec-vpn-server
[root@izt4nd88k7g47k96l274qfz l2tp]# cat vpn.env.example
# Define your own values for these variables
# - IPsec pre-shared key, VPN username and password
# - DO NOT put quotes around values, or add space around '='
# - DO NOT use these characters within values: \ " '
VPN_IPSEC_PSK=test_shared_secret_key
# Table of user object with login and password attribute in Json format
VPN_USER_CREDENTIAL_LIST=[{"login":"userTest1","password":"test1"},{"login":"userTest2","password":"test2"}]
VPN_NETWORK_INTERFACE=eth0
#VPN_DNS1=192.168.0.1
#VPN_DNS2=192.168.0.1

二、Windows 10(1803)客户端配置
(1)解决 v*n 服务器 和/或 客户端与 NAT (比如家用路由器)的兼容问题。修改注册表管理员权限打开CMD运行以下命令,或者下载.reg文件,管理员身份运行

REG ADD HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\RasMan\Parameters /v ProhibitIpSec /t REG_DWORD /d 0x0 /f

(2)另外,某些个别的 Windows 系统配置禁用了 IPsec 加密,此时也会导致连接失败。要重新启用它,可以运行以下命令,或者下载.reg文件,管理员身份运行

REG ADD HKLM\SYSTEM\CurrentControlSet\Services\IPSec /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f

==重启计算机后开始配置本地vpn连接

== Windows 10 and 8.x 右键单击系统托盘中的无线/网络图标。 选择 打开网络与共享中心。 单击 设置新的连接或网络。 选择 连接到工作区,然后单击 下一步。 单击 使用我的Internet连接 (vn)。
在 Internet地址 字段中输入你的 vn 服务器 IP。 在 目标名称 字段中输入任意内容。单击 创建。 返回 网络与共享中心。单击左侧的 更改适配器设置。 右键单击新创建的 vn 连接,并选择 属性。
单击 安全 选项卡,从 vn 类型 下拉菜单中选择 “使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)”。 单击 允许使用这些协议。确保选中 “质询握手身份验证协议 (CHAP)” 复选框。 单击 高级设置 按钮。 单击 使用预共享密钥作身份验证 并在 密钥 字段中输入你的 vn IPsec PSK。
单击 确定 关闭 高级设置。
单击 确定 保存 v*n 连接的详细信息。

发表评论

电子邮件地址不会被公开。 必填项已用*标注