有很多朋友需要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客戶端去高級設置一下就可以了。