> CentOS > CentOS教程 >

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

在中国大陆封闭的互联网环境下,VPN这东西是必不可少的

免费VPN很多,可是,既不稳定又不安全,速度还慢,如果你有一台海外的VPS或服务器

自己搭建一个VPN是最好的选择

下面介绍Centos 7搭建VPN(PPTP)服务器方法

 

注意:本教程只适用于Centos 7

检查是否支持

若你使用XEN架构的VPS,下面的步骤不用执行

检测PPP是否开启:

 
1
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/

 
1
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

 
1
vi /etc/ppp/options.pptpd

4、搜索ms-dns,去掉搜索到的两行ms-dns前面的#,并修改为下面的字段

 
1
2
ms-dns 8.8.8.8
ms-dns 8.8.4.4

20140812143526

5、接下来编辑/etc/ppp/chap-secrets设置VPN的帐号密码

 
1
vi /etc/ppp/chap-secrets

6、添加一行,按照下面的格式写入你的用户名和密码

 
1
用户名 pptpd 密码 *

注意:上面的用户名和密码都区分大小写

7、接下来修改内核参数,运行下面的命令编辑sysctl.conf

 
1
vi /etc/sysctl.conf

8、在conf末尾添加下面的代码,使内核支持转发

 
1
net.ipv4.ip_forward=1

20140812143357

 

9、运行下面的命令使内核修改生效

 
1
sysctl -p

10、添加下面的iptables转发规则(直接在SSH运行下面命令即可)

XEN架构:

 
1
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,并把上面的转发规则写到文件末尾

 
1
vi /etc/rc.d/rc.local

20140812144019

13、保存退出

启动组件

1、用下面的命令启动pptpd

 
1
/etc/init.d/pptpd start

2、用下面的命令使pptpd开机自动启动

 
1
chkconfig pptpd on

3、现在就可以使用你的设备连接到你的VPN了,若配置正确,就可以正常连接并上网了

错误排除

1、619错误

1、请检查上面的配置是否全部正常执行完毕

2、运行下面的命令尝试修复

 
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端口和进程

进程:

 
1
ps -ef |grep pptpd

端口:

 
1
netstat -nutap | grep pptpd

2、请检查计算机能不能正常连接到服务器,可以尝试ping服务器

3、请检查iptables是否拦截了PPTPD端口,可以尝试用下面的命令打开端口

 
1
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

若发现有效,记得将它加入rc.local文件中

4、检查上面的配置是否都执行完毕

3、错误651

1、运行下面的命令编辑pptpd.conf,并找到logwtmp,前面加#注释掉,再重启服务

 
1
vi /etc/pptpd.conf

2、检查用户名和密码是否正确

3、检查上面的配置是否都执行完毕

若上面的错误排除都无法排除您的错误,可能是服务商限制VPN,请向服务商询问!

(责任编辑:IT)