CentOS5下用PPTP配置vpn服务器
作者: 曲文庆 日期: 2010-04-14 16:02
检查PPP是否支持MPPE
用以下命令检查PPP是否支持MPPE:
strings '/usr/sbin/pppd' |grep -i mppe | wc -l
如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持。
用以下命令检查内核MPPE补丁是否安装成功:
modprobe ppp-compress-18 &&echo ok
出现:FATAL: Module ppp_mppe not found.说明是不支持的,MPPE是Microsoft Point to Point Encryption微软点对点加密
到 http://www.poptop.org/ 下载pptpd软件编译安装
将samples目录下的options.pptpd拷贝到/etc/ppp目录下
将samples目录下的pptpd.conf拷贝到/etc目录下
将源目录下的pptpd.init拷贝到/etc/init.d/pptpd(如果安装的时候指定目录了,注意修改执行文件的目录)
修改options.pptpd中的ms-ns参数
修改pptpd.conf中的localip和remoteip
localip 10.10.10.1
remoteip 10.10.10.2-10.10.10.254
配置 /etc/ppp/chat-secrets 中的登陆权限
启动pptpd
配置iptables允许vpn接入
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -j ACCEPT
iptables -A FORWARD -d 10.10.10.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -d ! VPN_IP -j SNAT --to VPN_IP
将VPN_IP改为自己的vpn ip地址
从windows机器上配置vpn登陆即可以使用了
如果登陆失败,注意查看服务器日志
1、 /usr/lib/pptpd/pptpd-logwtmp.so: cannot open shared object file: No such file or directory
估计是指定目录安装的pptpd,按照提示,建立相应链接或者拷贝过去
2、Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.3, this is 2.4.4
说明pppd需求版本不符
两个解决方案:
一、关闭 pptpd.conf 中的logwtmp参数,可以抑制报错,但是不会生成登陆日志了。
二、修改源码,vi plugins/patchlevel.h 将 VERSION 改成pppd对应的版本,重新编译。