打开 /etc/ipsec.conf 文件,做如下配置:
注意你的ipsec.conf文件,”config setup” 和 “L2TP-PSK-NAT”、 “L2TP-PSK-NAT”应该顶着行头写,而其它行应该以8个空格缩进。
打开 /etc/ipsec.secrets,配置:
这里x.x.x.x 替换为你的服务器的IP地址,并设置一个复杂的密码。
启动 IPSEC 服务:
使用如下命令确认 ipsec 是否工作正常:
应该没有任何错误才行:
在 /etc/init.d 下创建一个名为 ipsec.vpn 的文件,内容如下:
这会配置防火墙转发。记得修改上面文件的本地IP地址池10.152.2.0/24为你自己的。
然后给这个文件设置可执行权限:
禁止默认的 ipsec 服务脚本运行:
然后,启用我们刚才定制的这个:
修改 /etc/xl2tpd/xl2tpd.conf :
配置说明如下:
选择一个复杂的挑战-响应式验证字符串。虽然没有最短长度限制,不过它应该至少有16个字符,也应该足够复杂才能保证安全。
打开文件 /etc/xl2tpd/l2tp-secrets ,填入你的密码:
打开文件 /etc/ppp/options.xl2tpd,做如下配置:
ms-dns 选项设置要给客户端分配的 DNS 服务器,当客户端连接时,就会被分配这些 DNS。如果要加入多个 DNS,就每行一个,分别写几行。
如果你要给客户端推送wins设置,可以分别设置如下选项。
mtu 和 mru 按照openswan.org的说法,减小 mru/mtu 的大小非常重要。因为 l2tp/ipsec 会封装几次,可能导致性能下降,减小这个配置的大小可以一次性传输全部的包。
proxyarp 可以将连接的客户端的IP地址和以太网地址加入的系统的ARP表中。这会影响到本地局域网内其它客户端。
name l2tpd 用在 PPP验证文件里面。
打开文件 /etc/ppp/chap-secrets ,做如下配置:
每行包括如下字段:
注意:你可以添加多个用户。
打开文件 /etc/sysctl.conf,修改配置:
载入新的配置:
如果遇到了问题,以下命令可以帮助你找到问题:
你可以可以在服务器上使用如下命令来监控:
这里aaa.bbb.ccc.ddd 是你的客户端的公网地址。
(本文主要整理自 https://help.ubuntu.com 。)