Ubuntu VPN 设置

原文:http://bolsterhoo.com/ubuntu-vpn-setting/

装个VPN,平时可以用来翻翻墙什么的...
A. 当然,首先是安装服务器程序:

apt-get install pptpd

B. 然后编辑 /etc/pptpd.conf 文件,设置客户端连接的IP地址,启用如下的 localip 和 remoteip:

localip 10.100.113.1 remoteip 10.100.113.2-4

C. 查看 /etc/resolv.conf 文件,看看系统的DNS是什么,然后编辑 /etc/ppp/pptpd-options 文件激活如下的ms-dns:

ms-dns 208.67.222.222 ms-dns 208.67.220.220

D. 通过编辑 /etc/ppp/chap-secrets 文件来设置VPN的帐号及密码等,比如一个帐号 "test" 给个密码 "TEST",就如下:

test pptpd TEST *

第一个字符串就是用户名,第二个是服务器名,在那个options文件中可以设置,第三个就是密码,第四个是允许的客户端ip,为*则表示不限制。
E. 重启服务器。

/etc/init.d/pptpd restart

F. 启用Internet连接转发,首先,编辑 /etc/sysctl.conf 文件以启用:

net.ipv4.ip_forward=1

使用sysctl -p可以查看是否启用了。
然后使用iptables(可能需要apt安装一下下)来创建个路由:

iptables -t nat -A POSTROUTING -s 10.100.113.0/24 -o eth0 -j MASQUERADE

G. 重启后自动启用iptables。首先我们还是保存一下现在用的iptables:

iptables-save > /etc/iptables-rules

然后,编辑一下 /etc/network/interfaces 让系统启动时自动启用我们自己的iptables。

# Auto generated eth0 interfaces auto eth0 lo iface eth0 inet static         address 67.215.238.99         netmask 255.255.255.224         up route add -net 67.215.238.0 netmask 255.255.255.224 dev eth0         up route add default gw 67.215.238.97 pre-up iptables-restore < /etc/iptables-rules iface lo inet loopback

Ubuntu 9.04 中的pptpd貌似有个bug,需要禁用 /etc/pptpd.conf 文件中的日志,只要在 logwtmp 前加个注释即可。Ubuntu 9.10 没这个问题,无需修改。

# TAG: logwtmp #       Use wtmp(5) to record client connections and disconnections. # # logwtmp  //加一个#注释掉这行

现在,VPN应该就可以连接了,赶紧试试看吧。


没有评论: