如何在 DebianUbuntu 服务器上架设 L2TPIPSec VPN

如何在 DebianUbuntu 服务器上架设 L2TPIPSec VPN,第1张

展开全部
 Ubuntu
/
Debian:自己把点换成
1
2
3
wget
mirrorzeddicus点com/auto-l2tp/12/ubuntu/l2tpsh
chmod
+x
l2tpsh
/l2tpsh
此时需要输入IP段与PSK,值得注意的是,如果希望L2TP的IP段是
10000
的话,则在脚本的IP-RANGE中输入
“1000″。PSK

l2tp
client
共同使用的密匙,同样是必填的。
输入了IP段和PSK之后,程序会显示你的VPS当前的IP(IPV4)、L2TP的本地IP、分配给客户端的IP段以及你所设置的PSK,请确认无误后,按任意键,程序便会开始自动配置。
安装完毕后会运行
ipsec
verify,前面是OK,最后一个为DISABLED,证明配置成功!用于测试的用户名与密码分别是:test
/
test123,记录于
/etc/ppp/chap-secrets
文件当中。

安装软件包
1sudo apt-get install xl2tpd openswan ppp
IPSec / Openswan
打开 /etc/ipsecconf 文件,做如下配置:
1config setup
2nat_traversal=yes
3virtual_private=%v4:10000/8,%v4:19216800/16,%v4:1721600/12,%v4:!1015220/24
4# 这里包含的网络地址允许配置为远程客户端所在的子网。换句话说,
# 这些地址范围应该是你的NAT路由器后面的客户端的地址。
5oe=off
6protostack=netkey
7conn L2TP-PSK-NAT
8rightsubnet=vhost:%priv
9also=L2TP-PSK-noNAT
10conn L2TP-PSK-noNAT
11authby=secret
12pfs=no
13auto=add
14keyingtries=3
15rekey=no
16# Apple 的 iOS 不会发送 delete 提醒,
# 所以我们需要通过死亡对端(dead peer)检测来识别断掉的客户端
17dpddelay=30
18dpdtimeout=120
19dpdaction=clear
20# 设置 ikelifetime 和 keylife 和 Windows 的默认设置一致
21ikelifetime=8h
22keylife=1h
23type=transport
24# 替换 IP 地址为你的本地IP (一般是,私有地址、NAT内的地址)
25left=xxxx
26# 用于升级过的 Windows 2000/XP 客户端
27leftprotoport=17/1701
28# 要支持老的客户端,需要设置 leftprotoport=17/%any
right=%any
29rightprotoport=17/%any
30# 强制所有连接都NAT,因为 iOS
31forceencaps=yes
注意你的ipsecconf文件,"config setup" 和 "L2TP-PSK-NAT"、 "L2TP-PSK-NAT"应该顶着行头写,而其它行应该以8个空格缩进。
打开 /etc/ipsecsecrets,配置:
1xxxx %any: PSK "somegoodpassword"
这里xxxx 替换为你的服务器的IP地址,并设置一个复杂的密码。
启动 IPSEC 服务:
1/etc/initd/ipsec start
使用如下命令确认 ipsec 是否工作正常:
1sudo ipsec verify
应该没有任何错误才行:
1Checking your system to see ifIPsec got installed and started correctly:
2Version check and ipsec on-path [OK]
3LinuxOpenswan U2628/K2632-32-generic-pae (netkey)
4CheckingforIPsec support in kernel [OK]
5NETKEY detected, testing for disabled ICMP send_redirects [OK]
6NETKEY detected, testing for disabled ICMP accept_redirects [OK]
7Checking that pluto is running [OK]
8Pluto listening for IKE on udp 500[OK]
9Pluto listening for NAT-T on udp 4500[OK]
10Checkingfor'ip' command [OK]
11Checkingfor'iptables' command [OK]
12OpportunisticEncryptionSupport[DISABLED]
在 /etc/initd 下创建一个名为 ipsec*** 的文件,内容如下:
1case"$1"in
2start)
3echo "Starting my Ipsec ***"
4iptables -t nat -A POSTROUTING -o eth0 -s 1015220/24-j MASQUERADE
5echo 1>/proc/sys/net/ipv4/ip_forward
6for each in/proc/sys/net/ipv4/conf/
7do
8echo 0 > $each/accept_redirects
9echo 0 > $each/send_redirects
10done
11/etc/initd/ipsec start
12/etc/initd/xl2tpd start
13;;
14stop)
15echo "Stopping my Ipsec ***"
16iptables --table nat --flush
17echo 0 > /proc/sys/net/ipv4/ip_forward
18/etc/initd/ipsec stop
19/etc/initd/xl2tpd stop
20;;
21restart)
22echo "Restarting my Ipsec ***"
23iptables -t nat -A POSTROUTING -o eth0 -s 1015220/24 -j MASQUERADE
24echo 1 > /proc/sys/net/ipv4/ip_forward
25for each in /proc/sys/net/ipv4/conf/
26do
27echo 0 > $each/accept_redirects
28echo 0 > $each/send_redirects
29done
30/etc/initd/ipsec restart
31/etc/initd/xl2tpd restart
32;;
33)
34echo "Usage: /etc/initd/ipsec*** {start|stop|restart}"
35exit 1
36;;
37esac
这会配置防火墙转发。记得修改上面文件的本地IP地址池1015220/24为你自己的。
然后给这个文件设置可执行权限:
1sudo chmod 755 ipsec***
禁止默认的 ipsec 服务脚本运行:
1sudo update-rcd -f ipsec remove
然后,启用我们刚才定制的这个:
1sudo update-rcd ipsec*** defaults


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10552019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存