- 先检查vps是否满足配置pptp vpn的环境。因为有的openvz的vps被母鸡给禁用了。其实,你在配置前最好向vps的客服发TK,可能客服会帮你开通vpn或者客服那里会给你他们自己定制的vpn一键安装包也有可能。
- 接着是安装配置pptp vpn的相关软件,安装ppp和iptables。
- 配置安装好后的pptp软件,这个不像windows那样,安装的过程就是配置的过程。linux的要安装完之后,修改配置文件,才算是完成配置。
- 启动pptp vpn 服务。此时,就是检验你能够vpn拨号成功,如果你拨号成功了,说明你的pptp vpn的安装配置就算真正的完成了。但是此时只能登录vpn,却不能用来上网。
- 开启内核和iptables的转发功能。这个步骤是为了让你连上vpn之后,能够上网,上那些yourporn,youtube之类的。这步是最关键的,很多人能成功拨号,登录vpn,但是却不能上网就是因为这个步骤没做好。这步骤完成了,你就可以尽情去国外的网站访问了。
#########################################
第一步:检测是否符合pptp的搭建环境的要求
服务器版本:
Linux version 2.6.32-358.14.1.el6.x86_64 (mockbuild@c6b10.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Tue Jul 16 23:51:20 UTC 2013
如果检查结果没有这些支持的话,是不能安装pptp的。执行指令:
modprobe ppp-compress-18 && echo ok
这条执行执行后,显示“ok”则表明通过。不过接下来还需要做另一个检查,输入指令:
如果这条指令显示结果为下面的文本,则表明通过
cat /dev/net/tun cat: /dev/net/tun: File descriptor in bad state
上述两条均通过,才能安装pptp。否则就只能考虑openvpn,或者请你的服务商来解决这个问题。
Cent os 6.4内核版本在2.6.15以上,都默认集成了MPPE和PPP,因此下面检查可以忽略:
检查PPP是否支持MPPE,用以下命令检查PPP是否支持MPPE:
rpm -q ppp strings '/usr/sbin/pppd' |grep -i mppe | wc --lines
如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,MPPE(Microsoft Point to Point Encryption,微软点对点加密)。
第二步:安装ppp和iptables
1.安装ppp和iptables
PPTPD要求Linux内核支持mppe,一般来说CentOS安装时已经包含了
yum install -y perl ppp iptables
2.安装pptpd
// 32bit wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm // 64bit wget //jalena.bcsytv.com/uploads/software/pptpd-1.3.4-2.el6.x86_64.rpm rpm -ivh pptpd-1.3.4-2.el6.x86_64.rpm
第三步:修改配置文件
cp /etc/ppp/options.pptpd /etc/ppp/options.pptpd.bak cp /etc/ppp/chap-secrets /etc/ppp/chap-secrets.bak cp /etc/pptpd.conf /etc/pptpd.conf.bak
name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 require-mppe-128 proxyarp lock nobsdcomp novj novjccomp nologfd idle 2592000 ms-dns 8.8.8.8 ms-dns 8.8.4.4
# Secrets for authentication using PAP # client server secret IP addresses user pptpd pass *
option /etc/ppp/options.pptpd logwtmp localip 192.168.10.1 remoteip 192.168.10.10-20 //表示vpn客户端获得ip的范围
关键点:pptpd.conf这个配置文件必须保证最后是以空行结尾才行,否则会导致启动pptpd服务时,出现“Starting pptpd:”,一直卡着不动的问题,无法启动服务,切记呀!(相关文档可以查看:Starting pptpd: 运行不下去的原因)
//修改内核设置,使其支持转发 net.ipv4.ip_forward = 1 save /sbin/sysctl // 保存 /sbin/sysctl -p // 查看是否生效
第四步:启动pptp vpn服务和iptables
# Generated by iptables-save v1.4.7 on Thu Oct 10 19:09:07 2013 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [1764:883161] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT # Completed on Thu Oct 10 19:09:07 2013 # Generated by iptables-save v1.4.7 on Thu Oct 10 19:09:07 2013 *nat :PREROUTING ACCEPT [41:5333] :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j SNAT --to-source vpsIP COMMIT # Completed on Thu Oct 10 19:09:07 2013
最后一步:重启pptp vpn
service pptpd start // 开启pptpd service iptables start // 开启iptables chkconfig pptpd on // 设置开机启动pptpd chkconfig iptables on // 设置开机启动iptables
文章评论