CentOS6 安装pptp搭建vpn

流弊的杨林哥买了vps之后一直折腾不休,最近又在研究vpn饭强。
可惜发奋的研究了快一周后还是一无所获
今天小道终于看不下去了,趁着中午他在撸啊撸的时候,干脆帮他配置一下
记录一下过程,以备后需

一 检测是否符合pptp的搭建环境的要求
服务器版本:CentOs 6.4 xen vps
如果检查结果没有这些支持的话,是不能安装pptp的,执行指令:

这条执行执行后,显示“ok”则表明通过。不过接下来还需要做另一个检查,输入指令:

如果这条指令显示结果为下面的文本,则表明通过:

上述两条均通过,才能安装pptp。否则就只能考虑openvpn,或者请vps空间商的技术客服为你的VPS打开TUN/TAP/PPP功能了,貌似有部分vps控制面板上提供打开TUN/TAP/PPP功能的按钮。

Cent os 6.4内核版本在2.6.15以上,都默认集成了MPPE和PPP,因此下面检查可以忽略:

检查PPP是否支持MPPE
用以下命令检查PPP是否支持MPPE:

如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,MPPE(Microsoft Point to Point Encryption,微软点对点加密)。

二 开始安装

1.安装ppp和iptables
PPTPD要求Linux内核支持mppe,一般来说CentOS安装时已经包含了

2.安装pptpd
刚才用了yum安装了ppp,但是这里有个问题,几乎大部分的人都会在这里遇到ppp和pptpd不兼容的错误。因为yum安装ppp,总是安装最新版本的ppp,而由于安装的ppp的版本不同,那么就需要安装对应版本的pptpd才行。
使用下面的命令查看ppp的版本,前提你是yum安装的ppp。

显示:

所以,要对根据ppp版本选择对应的pptpd版本。
ppp和pptpd各个版本的下载地址;http://poptop.sourceforge.net/yum/stable/packages/

下载的时候要注意,分清楚系统的版本是64位的还是32位的。建议ppp用yum安装,pptpd用rpm的安装,因为如果全都rpm或者源码安装,依赖关系很是烦人。文件名含有数字64的就是64位版本,没有的就是32位版本。可以用下面的命令查看自己的系统是32位还是64位的。

直接用yum安装pptpd
加入 yum 源

安装 pptpd

手动安装pptpd包

64位安装的时候如果出现:

三 修改配置文件
1.配置文件/etc/ppp/options.pptpd

修改 ms-dns 为google的dns

2.配置文件/etc/pptpd.conf

修改 :

关键点:pptpd.conf这个配置文件必须保证最后是以空行结尾才行,否则会导致启动pptpd服务时,出现“Starting pptpd:”,一直卡着不动的问题,无法启动服务
3.开启路由转发

修改

执行

4.添加账号

四 启动pptp vpn服务和iptables

经过前面步骤,我们的VPN已经可以拨号登录了,但是还不能访问任何网页。最后一步就是添加iptables转发规则了,输入下面的指令:
启动iptables和nat转发功能

需要注意的是,这个指令中的“192.168.9.0/24”是根据之前的配置文件中的“localip”网段来改变的(网上有的教程是192.168.0.0/24 ),比如你设置的 “10.0.0.1”网段,则应该改为“10.0.0.0/24”。此外还有一点需要注意的是eth0,如果你的外网网卡不是eth0,而是eth1(比 如SoftLayer的服务器就是这样的情况),那么请记得将eth0也更改为对应的网卡编号,不然是上不了网的!

五 重启pptp vpn 设置开机启动

注:
有的链接 pptp vpn时候失败,提示619.
解决办法:执行下面的命令:
# rm -r /dev/ppp
# mknod /dev/ppp c 108 0 然后重启VPS即可。
感谢:http://www.dabu.info/centos6-4-structures-pptp-vpn.html