Gentoo搭建PPTP服务器

安装:emergepptpd

配置:

首先是内核,需要把DeviceDrivers->Networkdevicesupport->PPP(Point-to-pointprotocol)support中的这些选项选上编译:

PPPsupportforansyserialports

PPPsupportforsyncttyports

PPPMPPEcompression(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

这个配置文件当中,可以选择openssllicense的mppe,也可以选择bsdlicense的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-tnat-APOSTROUTING-oeth0-s172.16.0.0/24-jMASQUERADE

/etc/init.d/iptablessave

好吧,差不多是把小付同学的笔记搬了过来搞了个简化版+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,装的是gentoolinux,用以上办法搭建好VPN之后,拿我的手机拨号,VPN能拨上,但怎么也上不了网,没有数据。打开服务器端log一看,好多:Protocol-Rejectforunsupportedprotocol0xbb……

上网搜索了很久,找到这个: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服务器。

相关推荐