OpenVZ VPS搭建PPTP VPN的方法
PPTPVPN一般是在XEN虛擬技術的VPS上才提供支持。但很多VPS主機商提供新版本的OpenVZVPS,可以用來搭建PPTPVPN,據說是OpenVZ的新技術,但目前BurstNET的VPS還不支持搭建PPTPVPN。目前OPENVZ支持pptp的主機商有:BUYVM/Directspace/VPSyou等。
下面以BuyVM.net的VPS為例介紹如何在CentOS中搭建PPTPVPN。
1、登陸SSH,檢查VPS是否有必要的支持。如果檢查結果沒有這些支持的話,是無法安裝pptp的。
有2個檢查必須的,第一個檢查:
cat/dev/net/tun
返回結果為下面的文本,表明通過:
cat:/dev/net/tun:Filedescriptorinbadstate
第二個檢查:
cat/dev/ppp
返回以下結果,則通過:
cat:/dev/ppp:Nosuchdeviceoraddress
返回:“Permissiondenied”則不通過。
上面的2條必須都通過,才可安裝pptp。如果無法通過,只能去跟客服申請為你的VPS打開TUN/TAP/PPP功能了。
2、安裝ppp和iptables。
yuminstall-ypppiptables
3、安裝pptp。
rpm-ivhhttp://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm(32位系統使用)
rpm-ivhhttp://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm(64位系統使用)
有些朋友喜歡先wget再執行rpm,沒必要多此一舉。
4、配置pptp。首先我們要編輯/etc/pptpd.conf文件:
vim/etc/pptpd.conf
把下面字段前面的#去掉即可,此處的IP段可以任意,但是盡量注意不要跟本地網絡的IP段有沖突
localip192.168.80.1
remoteip192.168.80.234-238,192.168.80.245
接下來再編輯/etc/ppp/options.pptpd:
vim/etc/ppp/options.pptpd
去掉ms-dns前面的#,并修改成如下字段:
ms-dns8.8.8.8
ms-dns8.8.4.4
注意:簡單提下vim這個編輯器的用法。vi/vim命令是一個編輯器,類似WIN下的notepad記事本。vi某文件后,再按i,左下角會顯示insert,這時候才可以修改這個文件。修改好后,按esc左下角insert消失,再輸入:x,回車,則存盤退出,或者輸入:wq,回車,也是存盤退出;如果想不存盤退出,則輸入:q!,回車即可。
5、設置pptpVPN賬號密碼。我們需要編輯/etc/ppp/chap-secrets這個文件:
vim/etc/ppp/chap-secrets
直接輸入如下字段,第一個是用戶名,第三個是密碼,可以任意指定自己想要的用戶名
vpnpptpdvpnpass*
6、修改內核設置,使其支持轉發。編輯/etc/sysctl.conf文件:
vim/etc/sysctl.conf
將“net.ipv4.ip_forward”改為1:
net.ipv4.ip_forward=1
同時在“net.ipv4.tcp_syncookies=1”前面加#:
#net.ipv4.tcp_syncookies=1
保存退出,并執行下面的命令來生效它:
sysctl-p
7、添加iptables轉發規則。
iptables-tnat-APOSTROUTING-s192.168.80.0/24-jSNAT--to-source12.34.56.78
(OpenVZ,192.168.80.0一定要和上面設置的IP段匹配,12.34.56.78為你的VPS的公網IP地址)
#iptables-tnat-APOSTROUTING-s192.168.0.0/24-oeth0-jMASQUERADE
(XEN)
注意:如果iptables設置錯誤,可以直接更改vim/etc/sysconfig/iptables該文件即可。
保存iptables轉發規則:
/etc/init.d/iptablessave
重啟iptables:
/etc/init.d/iptablesrestart
8、重啟pptp服務。
/etc/init.d/pptpdrestart
9、設置開機自動運行服務。
chkconfigpptpdon
chkconfigiptableson
如果正常,到這里就OK了,不用管下面的錯誤了。否則請看錯誤說明。
錯誤1:如果出現錯誤619則輸入命令:
rm-r/dev/ppp
mknod/dev/pppc1080
然后reboot重啟VPS。
錯誤2:如果出現錯誤800,這是因為虛擬機內核不支持mpPE,無法使用加密,用WINDOWS默認VPN連接會顯示“證書信任錯誤”。解決方法:修改/etc/ppp/options.pptpd文件,在require-mppe-128字段前面加#即可,注釋掉require-mppe-128這行就成功了(via)。
同時別忘了,本地的windows系統的vpn屬性改為可選加密,如下圖:
【編輯推薦】