欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gentoo搭建PPTP服务器 博客分类: GentooPPTPLinuxVPN LinuxGentooPPTPVPN 

程序员文章站 2024-02-12 14:43:46
...
安装:emerge pptpd

配置:

首先是内核,需要把Device Drivers -> Network device support -> PPP (Point-to-point protocol) support中的这些选项选上编译:

PPP support for ansy serial ports
PPP support for sync tty ports
PPP MPPE compression (encryption)

/etc/ppp/chap-secret (pptp和l2tp都以ppp为基础)

#name  server  secret  ip
 yuan  pptpd  yuan  *

第一项是登录vpn时使用的用户名,第二项是vpn服务器名(pptpd,l2tpd,xl2tpd等,也可以用*号),第三项是密码,第四项是分配给客户端的ip,如果是*号,vpn服务器则会从自己的配置文件中选择一个ip分配给客户端。

/etc/ppp/options.pptpd

name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
lock
nobsdcomp 
novj
novjccomp
nologfd


这个配置文件当中,可以选择openssl license的mppe,也可以选择bsd license的mppe,根据google搜索结果,后者是前者的升级。

/etc/pptpd.conf

ppp /usr/sbin/pppd
option /etc/ppp/options.pptpd
logwtmp
connections 10
localip 172.16.0.1
remoteip 172.16.0.2-254


开启系统的封包转发:
/etc/sysctl.conf

net.ipv4.ip_forward = 1


最后,加iptables规则:
iptables -t nat -A POSTROUTING -o eth0 -s 172.16.0.0/24 -j MASQUERADE
/etc/init.d/iptables save

好吧,差不多是把小付同学的笔记搬了过来搞了个简化版+gentoo版:http://flw521521.iteye.com/blog/941626

gentoo下pptp客户端的安装和使用
http://pptpclient.sourceforge.net/howto-gentoo.phtml
http://en.gentoo-wiki.com/wiki/PPTP
客户端出错的各种诊断
http://pptpclient.sourceforge.net/howto-diagnosis.phtml

p.s:用我的android连接这个pptp服务器有个蛋疼的问题,花了我3天时间没有搞定,假期就这样过去了……
这个蛋疼的问题是这样的:我用的是Linode提供的vps,装的是gentoo linux,用以上办法搭建好VPN之后,拿我的手机拨号,VPN能拨上,但怎么也上不了网,没有数据。打开服务器端log一看,好多:Protocol-Reject for unsupported protocol 0xbb……
上网搜索了很久,找到这个:http://blog.fangjian.me/?p=185和这个http://code.google.com/p/android/issues/detail?id=4706
不过客户端存在问题的可能性比较小,因为rei同学和我用的是同一款手机,他的pptp服务器也设置了require-mppe-128,我和他的手机都可以连接上他的vpn服务器。
另外,我在自己的笔记本上(gentoo)也搭建了一个pptp服务器,同样没有任何问题,我的手机可以直接通过我的笔记本访问网络。

补充:以上Protocol-Reject的问题在公司里怎么都无法重现,但在家里或者在大成家就总是有这问题。

这个问题暂时就先放着吧。准备尝试搭建ipsec/l2tp服务器。