Linux(Ubuntu)安装pptp vpn笔记

如是VPS,VPS必须是XEN的。此外支持MPPE,linux 2.6.15-rc1以上内核均已安装,执行命令看MPPE是否安装了:

# modprobe ppp-compress-18 && echo success

输出success则成功,否则请按此文安装MPPE.

1、安装PPTP

这里用apt-get安装,当然也可以源码编译安装,执行:

sudo apt-get install pptpd

启动、停止pptp命令如下

sudo /etc/init.d/pptpd start
sudo /etc/init.d/pptpd stop

2、配置pptp.conf

编辑 /etc/pptp.conf 文件,将文件中下面两行前面的#去掉:

#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245

后者remoteip是设置客户端连接到这个VPN获得的IP地址,如果想增加连接,可扩大地址范围同时注意MAX_CONNECTIONS的值,保证它足够大。完成后重启pptp。

注:如果完成后连接时出现619错误,请尝试将pptp.conf中的logwtmp一行注释掉,即前面加上#。

3、添加用户

用户名和密码放在 /etc/ppp/chap-secrets 中,可直接编辑,如添加用户username,密码password,执行:

# echo "username pptpd password *" >> /etc/ppp/chap-secrets

添加删除用户后不需要重启pptp,用户登录时pptp会验证生效。

4、防火墙配置

如果你的机器没有安装防火墙,该节可跳过,看完第5节再回来。

这里以iptables为防火墙为例,安装iptables命令为:

sudo apt-get install iptables

然后打开1723、47端口,执行:

iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p tcp --dport 47 -j ACCEPT

5、转发设置

在此设置之前,你可以连接上VPN了,能访问VPN内网,但访问不了外网。

启动ip转发:

echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -p

这里用到的转发工具是iptables,iptables不止是防火墙,所以没装iptables的就先到步骤4设置iptables防火墙(因为我们用到iptables,不代表防火墙是必须的)。完成之后设置一些转发:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

其中eth0是网卡名,然后重启pptp,再连接就可以上外网了。如果你出现g.cn这样的网站看得了,twitter.com看不了的情况,请修改本机的DNS为google提供的8.8.8.8,这是因为在国内被DNS劫持。

6、其它问题

配置pptp会遇到挺多问题的,像中国移动的cmnet就用不了pptp,出现619错误。可以打开 /etc/ppp/pptpd-options 中的debug和dump选项,然后在/var/log/debug 和 /var/log/messages中查看出错信息。

本文主要参考:12.

转载请注明:来自pugWoo's Life
本文地址:http://www.pugwoo.com/2010/02/19/ubuntu-install-pptp.html



0 条评论

我要留言