操作系統:Centos6.3
pptp版本:1.3.4
一. 檢查服務器是不是支持PPP. 一般的vps很可能不支持,所以要驗證下.
cat /dev/ppp
如果打印: cat: /dev/ppp: No such device or address 說明沒問題
驗證內核是否加載模塊MPPE
modprobe ppp-compress-18 && echo MPPE is ok 如果輸出 MPPE is ok 則驗證通過
二. 開始安裝
1. 先yum 安裝 PPP 和 iptables .....iptables 有轉發數據的作用,可以通過服務器訪問外網...
yum -y install ppp iptables
2. rpm安裝 pptp
準備 pptp 安裝包(tpm),注意區分32位和64位,使用 rz 命令把安裝包傳到服務器目錄下
官方下載地址: http://poptop.sourceforge.net
最近國外網站打不開,我是在 51cto 上下載的,網上的鏈接基本都是 404 ...如有需要留言
注意:如果是Centos的64位系統,就需要安裝的是 pptpd-1.3.4-2.el6.x86_64.rpm ,而不是 pptpd-1.3.4-2.rhel5.x86_64.rpm ,否則會報錯...
error: Failed dependencies:
ppp = 2.4.4 is needed by pptpd-1.3.4-2.rhel5.x86_64
rpm -ivh pptpd-1.3.4-2.el6.x86_64.rpm 安裝pptp
警告:warning: pptpd-1.3.4-2.rhel5.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 862acc42: NOKEY
TODO:上面的警告是因爲 /etc/pki/rpm-gpg/ 下沒有合適的鑰匙去驗證簽名,我搜索網上的方法,未果.....
解決方法:
cd /etc/pki/rpm-gpg
wget http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
3. 有一種快速並簡單的安裝pptp的方法
#wget http://www.hi-vps.com/shell/vpn_centos6.sh
#chmod a+x vpn_centos6.sh
#bash vpn_centos6.sh
運行結果: 1. install VPN service
2. repaire VPN service
3. add VPN user
如果是第一次安裝,輸入 1 接着回車,會生成一個默認用戶 vpn 和一個隨機密碼,如果再添加賬號 輸入 3 ,回車後會提示輸入用戶名跟密碼....修復的話輸入 2.回車即可...
三. 配置vpn
1. #vi /etc/pptp.conf
打開 localip 和 remoteip 的註釋
2. #vi /etc/ppp/options.pptpd
打開 ms-dns 的註釋 修改成 8.8.8.8 和 8.8.4.4
3. 設置需要的vpn賬號和密碼
#vi /etc/ppp/chap-secrets
賬號 pptpd 密碼 * [用 add VPN user 命令時其實也是在這個配置文件中生成用戶和密碼]
4. #vi /etc/sysctl.conf
將“net.ipv4.ip_forward”改爲1 同時在“net.ipv4.tcp_syncookies = 1”前面加#
wq 保存退出,執行 sysctl -p 生效
5. 添加 iptables 轉發規則
iptables -t nat -A POSTROUTING -o eth0 -s 172.16.36.1/24 -j MASQUERADE
注意上面的ip地址要跟 pptp.conf 中的localip 保持一致,還要注意網卡eth0,如果網卡不是eth0,就改成網卡名...查看網卡根據不同操作系統版本有很多方法
保存轉發規則:/etc/init.d/iptables save
重啓 iptables:/etc/init
.d
/iptables
restart
如果提示“Warning: a pptpd restart does not terminate existing
connections, so new connections may be assigned the same IP
address and cause unexpected results. Use restart-kill to
destroy existing connections during a restart.”錯誤信息,則執行一下命令:
service pptpd restart-
kill
service pptpd start
6. 重啓 pptp # /etc/init.d/pptpd restart
7. 設置開機自啓
chkconfig pptpd on
chkconfig iptables on
四,在windows端鏈接 vpn
錯誤代碼 734: 是因爲無法進行 MPPE 驗證
解決方法:在options.pptpd 配置文件中找到 require-mppe-128,在前面加上 #,
在vpn屬性安全選項中 數據加密 選擇可選加密,允許使用這些協議加密 Microsoft CHAP Version 2
重啓 pptp,成功鏈接,但是無法訪問網絡
解決方法:vpn屬性,網絡選項卡,雙擊 TCP/IPv4 ,高級,取消 在遠程網絡上使用默認網關
重新連接,ok,都搞定了