有很多朋友需要VPN来使用,但是购买别人VPN服务来使用却又限速又限流量,而且不稳定,价格还奇高。为什么不动手架设自己的VPN服务器来使 用呢?自己架设VPN的成本非常低,比如购买raksmart linux VPS,最便宜的每月才19块钱,心动了吧?心动不如行动?我们之前介绍了window2003搭建vpn的教程的教程,今天我们来介绍linux上如何搭建vpn的教程:
一、首先检查你VPS的PPP(Point-to-Point Protocol)和TUN有没有启用:
cat /dev/ppp
cat /dev/net/tun
显示结果为:cat: /dev/ppp: No such device or address和cat: /dev/net/tun: File descriptor in bad state,表明通过,上述两条只要有一个没通过都不行。如果没有启用,你可以给VPS提供商Submit 一个 Ticket请求开通:
Hello
Could you enabled TUN-TAP for me? I want run pptp-vpn on my VPS.
Thank you.
确认PPP和TUN启用后,开始安装ppp和iptables(如果iptables已经安装成功了,就不需要在安装了):
yum install -y ppp iptables
二、安装pptp:
rpm -ivh http://rpmfind.net/linux/epel/6/x86_64/pptpd-1.4.0-3.el6.x86_64.rpm(64位系统)
很多朋友反映在安装的时候提示perl没有安装,如果出现perl没有安装成功,那么我们必须提前安装perl,执行以下命令yum install -y perl
三、配置pptp,编辑/etc/pptpd.conf文件:
把下面字段前面的#去掉:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
四、编辑/etc/ppp/options.pptpd 文件:
vim /etc/ppp/options.pptpd
去掉ms-dns前面的#,并使用Google的DNS服务器,修改成如下字段:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
五、设置VPN账号密码,编辑/etc/ppp/chap-secrets这个文件:
vim /etc/ppp/chap-secrets
六、修改内核设置,使其支持转发,编辑 /etc/sysctl.conf 文件:
vim /etc/sysctl.conf
将“net.ipv4.ip_forward”的值改为1,同时在“net.ipv4.tcp_syncookies = 1”前面加#
七、使sysctl.conf配置文件生效并添加iptables转发规则:
sysctl -p
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT –to-source ***.***.***.***
(***.***.***.***为你VPS的公网IP地址)
保存iptables转发规则:
/etc/init.d/iptables save
重启iptables:
/etc/init.d/iptables restart
重启pptp服务:
/etc/init.d/pptpd restart
设置开机自动运行pptp服务:
chkconfig pptpd on
设置开机自动运行iptables服务:
至此,Linux VPS架设VPN完成,如果连接出现错误619则输入如下命令解决:
rm /dev/ppp
mknod /dev/ppp c 108 0
如果出现错误734则修改/etc/ppp/options.pptpd文件,在require-mppe-128字段前面加#然后windows客户端去高级设置一下就可以了。