在中国大陆封闭的互联网环境下,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源,以防错误
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 |
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 |
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 |
13、保存退出
启动组件
1、用下面的命令启动pptpd
1 |
/etc/init.d/pptpd start |
2、用下面的命令使pptpd开机自动启动
1 |
chkconfig pptpd on |
3、现在就可以使用你的设备连接到你的VPN了,若配置正确,就可以正常连接并上网了