原文:http://www.wanghailin.cn/centos-7-vpn/
在中国大陆封闭的互联网环境下,VPN这东西是必不可少的
免费VPN很多,可是,既不稳定又不安全,速度还慢,如果你有一台海外的VPS或服务器
自己搭建一个VPN是最好的选择
下面介绍Centos 7搭建VPN(PPTP)服务器方法
注意:本教程只适用于Centos 7
检查是否支持
若你使用XEN架构的VPS,下面的步骤不用执行
检测PPP是否开启:
cat /dev/ppp
安装组件
运行下面的命令安装iptables、ppp、pptpd
在这之前,请您先更新yum源,以防错误:http://www.wanghailin.cn/scka/centos7-yum-pero/
yum install ppp iptables pptpd
运行完成后,应该顺利安装完成了需要的组件
配置组件
1、编辑pptpd.conf:
vi /etc/pptpd.conf
localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245
3、编辑options.pptpd
vi /etc/ppp/options.pptpd
4、搜索ms-dns,去掉搜索到的两行ms-dns前面的#,并修改为下面的字段
ms-dns 8.8.8.8 ms-dns 8.8.4.4
5、接下来编辑/etc/ppp/chap-secrets设置VPN的帐号密码
vi /etc/ppp/chap-secrets
6、添加一行,按照下面的格式写入你的用户名和密码
用户名 pptpd 密码 *
注意:上面的用户名和密码都区分大小写
7、接下来修改内核参数,运行下面的命令编辑sysctl.conf
vi /etc/sysctl.conf
8、在conf末尾添加下面的代码,使内核支持转发
net.ipv4.ip_forward=1
9、运行下面的命令使内核修改生效
sysctl -p
10、添加下面的iptables转发规则(直接在SSH运行下面命令即可)
XEN架构:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
OpenVZ架构:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source VPS公网IP
11、但是添加转发规则后重启就会失效,Centos 6系统可以使用service iptables save保存配置,但Centos 7不支持,我们需要将配置写入rc.local文件中,开机自动设置,运行下面的命令赋予rc.loacl执行权限:
chmod +x /etc/rc.d/rc.local
vi /etc/rc.d/rc.local
13、保存退出
启动组件
1、用下面的命令启动pptpd
/etc/init.d/pptpd start
2、用下面的命令使pptpd开机自动启动
chkconfig pptpd on
3、现在就可以使用你的设备连接到你的VPN了,若配置正确,就可以正常连接并上网了
错误排除
1、619错误
1.请检查上面的配置是否全部正常执行完毕
2.运行下面的命令尝试修复
rm /dev/ppp mknod /dev/ppp c 108 0
3.若还是不行,运行下面的命令编辑pptpd.conf,并找到logwtmp,前面加#注释掉,再重启服务
vi /etc/pptpd.conf
4.请检查你的路由器是否支持PPTP穿透,请尝试连接公用VPN测试,或更换路由器测试,或直接连接宽带测试,若确实是路由器不支持PPTP穿透,可以尝试搭建L2TP VPN
5.检查用户名密码是否有误
6.请向服务提供商询问是否支持搭建VPN
2、800错误
1.请检查服务器上的PPTPD是否正常启动,运行下面的命令检查pptp端口和进程
进程:
ps -ef |grep pptpd
端口:
netstat -nutap | grep pptpd
2.请检查计算机能不能正常连接到服务器,可以尝试ping服务器
3.请检查iptables是否拦截了PPTPD端口,可以尝试用下面的命令打开端口
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
若发现有效,记得将它加入rc.local文件中
4.检查上面的配置是否都执行完毕
3、错误651
1.运行下面的命令编辑pptpd.conf,并找到logwtmp,前面加#注释掉,再重启服务
vi /etc/pptpd.conf
2.检查用户名和密码是否正确
3.检查上面的配置是否都执行完毕
若上面的错误排除都无法排除您的错误,可能是服务商限制VPN,请向服务商询问!