作者:阿魏空荡荡 | 来源:互联网 | 2014-05-27 21:18
网上介绍只有xenvps才能搭建PPTPVPN,其实openvz也可以搭建pptpvpn,下面介绍如何在CentOS中搭建PPTPVPN。1、登陆SSH,检查VPS是否有必要的支持。如果检查结果没有这些支持的话,是无法安装pptp的。当然Buyvm的用户可以直接跳过。modprobeppp-compress
网上介绍只有xen vps才能搭建PPTP VPN,其实openvz也可以搭建pptp
vpn,下面介绍如何在CentOS中搭建PPTP VPN。
1、登陆SSH,检查VPS是否有必要的支持。如果检查结果没有这些支持的话,是无法安装pptp的。
当然Buyvm的用户可以直接跳过。
modprobe ppp-compress-18 && echo ok(用模块方式支持MPPE加密模式浏览,如果内核支持检测不到。)
如果显示“ok”表明通过。不过接下来还需要做另一个检查:
cat /dev/net/tun
显示结果为下面的文本,表明通过:
cat: /dev/net/tun: File descriptor in bad state
记住上述两条只需一条通过,即可安装pptp。如果还有其它问题,请咨询你的服务商来解决这个问题。
2、安装ppp和iptables。
yum install -y ppp
"wp_keywordlink_affiliate">iptables
3、安装pptp。
rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm (32位系统使用)
rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm (64位系统使用)
有些朋友喜欢先wget再执行rpm,没必要多此一举。
4、配置pptp。首先我们要编辑/etc/pptpd.conf文件:
vim /etc/pptpd.conf
把下面字段前面的#去掉即可:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
接下来再编辑/etc/ppp/options.pptpd:
vim /etc/ppp/options.pptpd
去掉ms-dns前面的#,并修改成如下字段:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
5、设置pptp VPN账号密码。我们需要编辑/etc/ppp/chap-secrets这个文件:
vim /etc/ppp/chap-secrets
直接输入如下字段,zhujimi可以换成其他字段:
zhujimi pptpd zhujimi *
6、修改内核设置,使其支持转发。编辑/etc/sysctl.conf文件:
vim /etc/sysctl.conf
将“net.ipv4.ip_forward”改为1:
net.ipv4.ip_forward=1
同时在“net.ipv4.tcp_synCOOKIEs = 1”前面加# :
# net.ipv4.tcp_synCOOKIEs = 1
保存退出,并执行下面的命令来生效它:
sysctl -p
7、添加iptables转发规则。
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 12.34.56.78
(OpenVZ,12.34.56.78为你的VPS的公网IP地址)
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
(XEN)
保存iptables转发规则:
/etc/init.d/iptables save
重启iptables:
/etc/init.d/iptables restart
8、重启pptp服务。
/etc/init.d/pptpd restart
9、设置开机自动运行服务。
chkconfig pptpd on
chkconfig iptables on
如果出现错误619则输入命令
mknod /dev/ppp c 108 0
如果你需要图形化管理VPN的话,建议使用Webmin:
rpm -ivh http://nchc.dl.sourceforge.net/project/webadmin/webmin/1.510/webmin-1.510-1.noarch.rpm
注意:如果虚拟机内核不支持MPPE的话,无法使用加密,用WINDOWS默认VPN连接会显示“证书信任错误”。
解决方法:修改/etc/ppp/options.pptpd注释掉require-mppe-128这行,然后windows的vpn拨号的属性改为可选加密,再次连接就成功了。