Linux连接CUHK L2TP VPN的方法

几天前成功在Ubuntu 8.10 Intrepid Ibex下连接CUHK L2TP VPN。非常感谢Raptium同学,应该说是他先找出并解决了ITSC所提供方法的问题,我这里所做的基本就是整理工作。

本文以ITSC给出的方法为基础。之前的方法在ITSC关闭PPTP后失效。注意:此方法似乎仍然无法通过无线连接VPN(应该还是route的问题)。其他系统请参考ITSC的方法,并根据本文进行修改。

我使用了以下包(CD中不包含,请提前下载):

dhcp-client:
- dhcpcd_3.2.3-1.1_i386.deb
- pump_0.8.24-2.1_i386.deb
- udhcpc_0.9.8cvs20050303-2.1_i386.deb
ipsec-tools: ipsec-tools_0.7-2.1ubuntu1_i386.deb
ppp: ppp_2.4.4rel-10ubuntu2_i386.deb
racoon: racoon_0.7-2.1ubuntu1_i386.deb
xl2tpd: xl2tpd_1.2.0+dfsg-1ubuntu1_i386.deb [Ubuntu 7.10、Debian 4.0等应该用l2tpd]

逐一安装好(racoon的configuration mode选direct)。

按照ITSC的说明编辑racoon.conf、psk.txt。提示:此处可能需要root权限,可使用gnome-sudo,也可使用sudo nano /etc/racoon/racoon.conf。

修改xl2tpd.conf时,请改为以下内容:

[global]
port = 1701
auth file = /etc/ppp/pap-secrets
[lac connect]
lns = vpn.cuhk.edu.hk
; redial = yes
; redial timeout = 15
; max redials = 5
; hidden bit = yes
require pap = yes
ppp debug = yes
pppoptfile=/etc/ppp/options

修正了两个地方:首先pppoptfile参数应当另起一行;另外应使用/etc/ppp/options而非/etc/ppp/options.xl2tpd。

按照ITSC指示继续修改pap-secrets和options。

ITSC的connect.sh文件有问题,具体来说就是文件格式是Windows的,应转换成Unix格式的(Raptium同学的解释:应该移除所有^M)。Raptium给出的方法:首先用vim打开connect.sh,然后

set ff=unix

不过也可以直接用我转换好的这个connect.sh

注意连接的时候需要有root权限。不妨sudo之。

Ubuntu 8.10使用nm-applet连接CUHK VPN

昨天装上了Ubuntu 8.10 (i386 DVD)。用NetworkManager+nm-applet图形界面连接中大VPN成功。以下为操作步骤。

安装

默认已安装NetworkManager、nm-applet等组件。把DVD光碟作为软件源,用apt/synaptic安装pptp-linux、network-manager-pptp。

配置

打开network configuration(在nm-applet图标上点右键,编辑连接)。切换到VPN,添加。类型是Point-to-Point Tunneling Protocol。设置如下:
* 非自动连接,非系统设置
* 网关:vpn.cuhk.edu.hk
* Username: s0xxxxxx
* Password留空(此处好像是nm的bug。如果这里保存了密码,之后就会出现找不到secret机密的问题。不过我今天觉得通过修改/etc/dbus-1/system.d/NetworkManager.conf和/etc/dbus-1/system.d/nm-applet.conf 可以解决,尚未测试
* Advanced里面:选择PAP、MSCHAP、MSCHAPv2,不选Use Point-to-Point encryption (MPPE)、勾选其他的(包括Send PPP echo packets)
* IPv4里面设置成自动(DHCP)
用nm-applet连接。在弹出的要求密码窗口中输入密码即可连接。

一些问题的解决:

1. 如果nm-applet连接成功,但其他应用无法使用网络……
在终端中输入ip route。如果看到没有把dev ppp0加成default,就输入sudo ip route add default dev ppp0。

2. 如果重新启动后nm-applet图标消失……
修改/etc/dbus-1/system.d/NetworkManager.conf 和 /etc/dbus-1/system.d/nm-applet.conf。除了secrets的以外所有deny都改为allow。
重新启动 dbus:sudo /etc/init.d/dbus restart
停止NetworkManager:sudo /etc/init.d/NetworkManager stop
重建interfaces:sudo rm /etc/network/interfaces
重新启动 NetworkManager:sudo /etc/init.d/NetworkManager start
运行nm-applet。

3. 如果直接显示连接失败……
多数是由于DNS的问题(尤其是无线和有线之间切换造成nm内部DNS处理混乱)。解决方法如下:
sudo nano /etc/resolv.conf
添加内容如下:

nameserver 10.0.255.242
nameserver 10.0.255.243
search resnet.cuhk.edu.hk

按Ctrl+O保存,Ctrl+X退出。


2008-11-24 18:00 Update:修改/etc/dbus-1/system.d/NetworkManager.conf和/etc/dbus-1/system.d/nm-applet.conf没有解决找不到机密的问题。

无觅相关文章插件,快速提升流量