> Linux服务器 > VPN >

Centos 7搭建VPN(PPTP)服务器方法

在中国大陆封闭的互联网环境下,VPN这东西是必不可少的
 
免费VPN很多,可是,既不稳定又不安全,速度还慢,如果你有一台海外的VPS或服务器
 
自己搭建一个VPN是最好的选择
 
下面介绍Centos 7搭建VPN(PPTP)服务器方法
 
 
 
注意:本教程只适用于Centos 7
 
检查是否支持
 
若你使用XEN架构的VPS,下面的步骤不用执行
 
检测PPP是否开启:
 
 
cat /dev/ppp
开启成功的标志:cat: /dev/ppp: No such file or directory 或者 cat: /dev/ppp: No such device or address,可以继续
 
安装组件
 
运行下面的命令安装iptables、ppp、pptpd
 
在这之前,请您先更新yum源,以防错误:http://www.wanghailin.cn/scka/centos7-yum-pero/
 
 
yum install ppp iptables pptpd
运行完成后,应该顺利安装完成了需要的组件
 
配置组件
 
1、编辑pptpd.conf:
 
 
1
vi /etc/pptpd.conf
2、搜索localip,去掉下面字段前面的#,然后保存退出
 
 
1
2
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
20140812143526
 
5、接下来编辑/etc/ppp/chap-secrets设置VPN的帐号密码
 
 
vi /etc/ppp/chap-secrets
6、添加一行,按照下面的格式写入你的用户名和密码
 
 
1
用户名 pptpd 密码 *
注意:上面的用户名和密码都区分大小写
 
7、接下来修改内核参数,运行下面的命令编辑sysctl.conf
 
 
vi /etc/sysctl.conf
8、在conf末尾添加下面的代码,使内核支持转发
 
 
net.ipv4.ip_forward=1
20140812143357
 
 
 
9、运行下面的命令使内核修改生效
 
 
sysctl -p
10、添加下面的iptables转发规则(直接在SSH运行下面命令即可)
 
XEN架构:
 
 
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
OpenVZ架构:
 
 
1
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执行权限:
 
 
1
chmod +x /etc/rc.d/rc.local
12、编辑rc.local,并把上面的转发规则写到文件末尾
 
 
vi /etc/rc.d/rc.local
20140812144019
 
13、保存退出
 
启动组件
 
1、用下面的命令启动pptpd
 
 
/etc/init.d/pptpd start
2、用下面的命令使pptpd开机自动启动
 
 
1
chkconfig pptpd on
3、现在就可以使用你的设备连接到你的VPN了,若配置正确,就可以正常连接并上网了
 
错误排除
 
1、619错误
 
1、请检查上面的配置是否全部正常执行完毕
 
2、运行下面的命令尝试修复
 
 
rm /dev/ppp
mknod /dev/ppp c 108 0

 
3、若还是不行,运行下面的命令编辑pptpd.conf,并找到logwtmp,前面加#注释掉,再重启服务
 
 
1
vi /etc/pptpd.conf
4、请检查你的路由器是否支持PPTP穿透,请尝试连接公用VPN测试,或更换路由器测试,或直接连接宽带测试,若确实是路由器不支持PPTP穿透,可以尝试搭建L2TP VPN
 
5、检查用户名密码是否有误
 
6、请向服务提供商询问是否支持搭建VPN
 
2、800错误
 
1、请检查服务器上的PPTPD是否正常启动,运行下面的命令检查pptp端口和进程
 
进程:
 
 
ps -ef |grep pptpd
端口:
 
 
1
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,请向服务商询问!
(责任编辑:IT)