1.?确保内核有mppe
modprobe ppp-compress-18 && echo ok
回显OK就说明支持
2. 安装PPP和iptables
[root@localhost ~]#yum -y install ppp*
[root@localhost ~]#yum -y install iptables
3. 下载并安装pptpd,下载地址http://poptop.sourceforge.net/yum/stable/packages/,根据系统下载合适的版本
4. 安装好pptpd后编辑/etc/pptpd.conf?设置IP池
[root@localhost ~]#vi?/etc/pptpd.conf
localip 192.168.0.1 remoteip 192.168.0.234-238
5. 编辑/etc/ppp/options.pptpd 设置DHCP的DNS地址
[root@localhost ~]#vi?/etc/ppp/options.pptpd
6. 编辑/etc/ppp/chap-secrets 添加登录VPN的账号和密码
[root@localhost ~]#vi?/etc/ppp/chap-secrets
格式如:vpn ? ? ?pptpd ? ? ? 123456 ? ? ?*?
? ? ? ? ? ? ? ?用户名 ? ?服务名 ? ?用户密码 分配的虚拟IP(*表示任意)
7. 编辑/etc/sysctl.conf 开启IP转发
[root@localhost ~]#vi?/etc/sysctl.conf?
将“net.ipv4.ip_forward”改为1?
然后执行下面命令使配置生效
[root@localhost ~]#sysctl -p
8. 在iptables里添加NAT规则
[root@localhost ~]#iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -j SNAT –to-source 外网口IP
9. 设置pptpd自启动
[root@localhost ~]#chkconfig pptpd on
10. 这样设置完毕后还有一步需要配置,我就是在这出的问题,拨通VPN后能PING通外网IP但是PING不通域名,一般这样的情况都是缺少DNS造成的,这里是由于CentOS默认iptables策略没有开放DNS端口,我们手工添加一条策略
[root@localhost ~]#iptables -A INPUT -p udp -m udp –dport 53 -j ACCEPT
然后保存、重启iptables服务
[root@localhost ~]#service iptables save
[root@localhost ~]#service iptables restart
11. 重启服务器搞定收工!
备注:如果无法连接可以查看/var/log/message 日志