l2tp vpn搭建总结(linode ubuntu)
来源:互联网 发布:阿里云服务器域名绑定 编辑:程序博客网 时间:2024/05/22 03:06
前段时间开始,公司的vpn开始不太好用了,因此我也逐步感觉到墙的力量。
恰好@Zealot有一个linode的vps,之前他搭了一个pptp的vpn,但是联通3g又不能使用pptp vpn,于是尝试自己捣鼓一个l2tp的vpn,断断续续尝试了几次,终于在今天成功了。
参考了很多网上的文章,发现网上的文章都没有涵盖到我碰到的种种问题,因此在这里针对我的案例,写一篇总结性的文章。
首先,按照apple4us的文章,安装一系列软件,写配置:
sudo aptitude install openswan
vim /etc/ipsec.conf
config setup nat_traversal=yes virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12 oe=off protostack=netkeyconn L2TP-PSK-NAT rightsubnet=vhost:%priv also=L2TP-PSK-noNATconn L2TP-PSK-noNAT authby=secret pfs=no auto=add keyingtries=3 rekey=no ikelifetime=8h keylife=1h type=transport left=222.222.222.222 leftprotoport=17/1701 right=%any rightprotoport=17/%any
注意,ipsec.conf对格式要求很严格,缩进一定要有。
vim /etc/ipsec.secrets
222.222.222.222 %any: PSK “fan1qiang”
这里的psk要解释一下,这个是你在连接l2tp vpn时,需要填写的secret。
此外,别忘记把222.222.222.222替换成你自己服务器的ip(一共两处)。继续:
for each in /proc/sys/net/ipv4/conf/*
do
echo 0 > $each/accept_redirects
echo 0 > $each/send_redirects
done
然后检查ipsec是否ok了
sudo ipsec verify
下面是我最终的结果:
Version check and ipsec on-path [OK]
Linux Openswan U2.4.12/K2.6.18.8-linode22 (netkey)
Checking for IPsec support in kernel [OK]
NETKEY detected, testing for disabled ICMP send_redirects [OK]
NETKEY detected, testing for disabled ICMP accept_redirects [OK]
Checking for RSA private key (/etc/ipsec.secrets) [DISABLED]
ipsec showhostkey: no default key in “/etc/ipsec.secrets”
Checking that pluto is running [OK]
Two or more interfaces found, checking IP forwarding [OK]
Checking NAT and MASQUERADEing
Checking for ‘ip’ command [OK]
Checking for ‘iptables’ command [OK]
Opportunistic Encryption Support [DISABLED]
其中需要注意两项:Checking for RSA private key和Opportunistic Encryption Support,第一项其实你大可不必管他,disable或者ok都行。如果你实在要解决,可以:
ipsec newhostkey –file /root/tmpkey
cat /root/tmpkey >> /etc/ipsec.secrets
rm /root/tmpkey
第二项DISABLED是正常状态。
出了问题不要被这两项迷惑,不是他们导致的。
接下来启动:
sudo /etc/init.d/ipsec restart
如果出现错误,按照他指出的行数自己看看。接下来是l2tpd。
sudo aptitude install xl2tpd
vim /etc/xl2tpd/xl2tpd.conf
[global]
ipsec saref = yes[lns default]
ip range = 10.1.2.2-10.1.2.255
local ip = 10.1.2.1
;require chap = yes
refuse chap = yes
refuse pap = yes
require authentication = yes
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes
然后安装、配置ppp:
sudo aptitude install ppp
vim /etc/ppp/options.xl2tpd
require-mschap-v2
ms-dns 208.67.222.222
ms-dns 208.67.220.220
asyncmap 0
auth
crtscts
lock
hide-password
modem
debug
name l2tpd
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
添加一个vpn用户:
vim /etc/ppp/chap-secrets
test l2tpd testpassword *
启动l2tpd:
sudo /etc/init.d/xl2tpd restart
设置iptables转发:
iptables –table nat –append POSTROUTING –jump MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
修改包转发设置
for each in /proc/sys/net/ipv4/conf/*
do
echo 0 > $each/accept_redirects
echo 0 > $each/send_redirects
done
vi /etc/sysctl.conf
修改 net.ipv4.ip_forward = 1
sysctl –p
好了,如果一切顺利,你的l2tp应该装好了,尝试用iphone或者android连接一下。如果还有问题,请继续。
第一个问题是执行sudo /etc/init.d/xl2tpd restart时,无法看到执行状态,因此很多时候其实服务没有起来。你可以用ps aux | grep l2tp确认一下,如果发现的确没有这个进程,请使用
xl2tpd -D
开启debug模式启动。
如果你碰见了一些很莫名其妙的配置文件错误提示,比如:
parse_config: line 13: data ‘n parameters:’ occurs with no context
而实际上你这一行并没有错误,请检查一下/etc/xl2tpd/xl2tpd.conf 里面是不是有一行很长的注释,把这些注释分成多行或者删除。
第二个问题,如果你启动了xl2tpd,但是一连接iphone就提示“l2tp-vpn server did not respond”,或者android提示”challenge failed”,那请看看你的openswan 是不是 2.6.22或2.4.12:
dpkg -l | grep openswan
如果是,请重新编译安装:
sudo aptitude install libgmp3-dev gawk flex bison
wget http://www.openswan.org/download/openswan-2.6.24.tar.gz
tar xf openswan-2.6.24.tar.gz
cd openswan-2.6.24
make programs
sudo make install
如果你还有其他问题,欢迎在下面留言,我会尝试帮你解决。
参考文章:
https://apple4.us/2010/05/setting-up-l2tp-vpn-on-debian-ubuntu.html
http://b.gkp.cc/posts/setup-ipsec-l2tp-on-centos-55.html
http://suoluo.org/2010/04/4/ (上面三篇文章是全面介绍安装过程的)
http://lists.openswan.org/pipermail/users/2006-November/011029.html (介绍如何fix Checking for RSA private key)
http://lifegoo.pluskid.org/?p=65 (指出xl2tpd.conf的注释问题)
- l2tp vpn搭建总结(linode ubuntu)
- 【详细贴】Ubuntu Linode搭建海外策略路由VPN IPSec+L2TP(一)
- linode vpn 搭建
- Linode 搭建VPN
- Linode主机搭建(三)—— L2TP协议VPN安装
- L2TP VPN服务器搭建
- ubuntu 16.04 L2TP vpn
- Ubuntu L2TP VPN客户端
- Ubuntu server 12 上搭建 L2TP/IPSec VPN
- 搭建适用于Ubuntu/CentOS的IKEV2/L2TP的VPN
- [L2TP VPN]Win2003搭建常见问题
- 搭建L2TP over IPSec VPN
- CVM ubuntux641604 搭建L2TP VPN
- centos7 L2TP/ipsec vpn搭建
- centos7 L2TP/ipsec vpn搭建
- Centos6.5搭建L2TP VPN
- ubuntu 下配置 L2TP vpn
- ubuntu 安装配置VPN L2TP
- 问题1:Project has no default.properties file! Edit the project properties to set one.
- 文件操作:系统调用和C库函数的区别
- OAuth授权的Java实现详解
- 图的算法演示
- 揭开正则表达式的神秘面纱
- l2tp vpn搭建总结(linode ubuntu)
- 第一讲 - WIN32基础知识-WIN32汇编语言程序设计001
- D3D中的AGP内存、系统内存、显存
- 【汇编】dword型除法
- 修改注册表 打造个性化右键菜单
- twitter4j - update status例子(Java)
- Linux C中库函数和系统调用的区别
- IE6中对于插入的透明背景的.png的图片有灰色背景的解决方案
- 打开MySQL的慢查询记录