1、檢查服務(wù)器是否有必要的支持。如果檢查結(jié)果沒有這些支持的話,是不能安裝pptp的。執(zhí)行指令:
#modprobe ppp-compress-18 && echo ok(用模塊方式支持MPPE加密模式瀏覽,如果內(nèi)核支持檢測不到。)
這條執(zhí)行執(zhí)行后,顯示“ok”則表明通過。
2、安裝ppp和iptables。默認(rèn)情況下,完整的CentOS是帶有這兩個組件的,但是精簡版的系統(tǒng)可能沒有。我們輸入下面的命令來確認(rèn),如果沒有則進(jìn)行安裝,有的話系統(tǒng)不會做任何動作:
#yum install -y ppp iptables
3、安裝pptp。這個軟件在yum源里是沒有的,我們需要手動下載。我們先切換到tmp目錄:
#cd /tmp
然后執(zhí)行下面的命令來下載pptp安裝包:
#wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm (32位系統(tǒng)使用)
#wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm (64位系統(tǒng)使用)
如果你的CentOS是32位的,則執(zhí)行32位的那條指令;如果是64位的CentOS,則執(zhí)行64位的那條指令。注意不要搞錯了。
接下來安裝pptp,同樣分32位和64位系統(tǒng):
#rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm (32位系統(tǒng)使用)
#rpm -ivh pptpd-1.3.4-1.rhel5.1.x86_64.rpm (64位系統(tǒng)使用)
4、配置pptp。首先我們要編輯/etc/pptpd.conf文件:
#vim /etc/pptpd.conf
找到“locapip”和“remoteip”這兩個配置項,將前面的“#”注釋符去掉,更改為你期望的IP段值。localip表示服務(wù)器的IP,remoteip表示分配給客戶端的IP地址,可以設(shè)置為區(qū)間。這里我們使用pptp默認(rèn)的配置:
localip 192.168.11.1
remoteip 192.168.11.2-102 (最大限制100個連接)
接下來我們再編輯/etc/ppp/options.pptpd文件,為VPN添加Google DNS:
#vim /etc/ppp/options.pptpd
在末尾添加下面兩行:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
注意:最好打開這個文件里的debug選項(去掉debug前面的“#”),以方便我們在出錯的查看日志排錯。錯誤日志在/var/log/messages里,用命令:cat /var/log/messages | grep pptpd 查看有關(guān)PPTP的錯誤信息。
5、設(shè)置pptp VPN賬號密碼。我們需要編輯/etc/ppp/chap-secrets這個文件:
#vim /etc/ppp/chap-secrets
在這個文件里面,按照“用戶名 pptpd 密碼 *”的形式編寫,一行一個賬號和密碼。比如添加用戶名為test,密碼為1234的用戶,則編輯如下內(nèi)容:
dreamfly pptpd 1234 *
mfisp pptpd 4321 *
mfisp pptpd 4321 *
6、修改內(nèi)核設(shè)置,使其支持轉(zhuǎn)發(fā)。編輯/etc/sysctl.conf文件:
#vim /etc/sysctl.conf
將“net.ipv4.ip_forward”改為1,變成下面的形式:
net.ipv4.ip_forward=1
保存退出,并執(zhí)行下面的命令來生效它:
#sysctl -p
7、添加iptables轉(zhuǎn)發(fā)規(guī)則。經(jīng)過前面的6個步驟,我們的VPN已經(jīng)可以撥號了,但是還不能訪問任何網(wǎng)頁。最后一步就是添加iptables轉(zhuǎn)發(fā)規(guī)則了,輸入下面的指令:
兩種修改方法:命令行或修改/etc/sysconf/iptables 文件
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.11.0/24 -j MASQUERADE
iptables -L -t nat 可以看到:
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 192.168.11.0/24 anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
在/etc/sysconf/iptables 文件 允許ping
-A RH-Firewall-1-INPUT -s 192.168.11.0/255.255.255.0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
service iptables save 保存
service iptables restart 重啟
8.
設(shè)置開機自動運行服務(wù)。我們最后一步是將pptp和iptables設(shè)置為開機自動運行,這樣就不需要每次重啟服務(wù)器后手動啟動服務(wù)了。當(dāng)然你不需要自動啟動服務(wù)的話可以忽略這一步。輸入指令:
#chkconfig pptpd on
#chkconfig iptables on
這樣就大功告成了,趕快到Windows下建立一個VPN連接,IP填寫自己的服務(wù)器IP,用戶名和密碼填寫自己設(shè)置好的用戶名和密碼,點擊“連接”,成功后就可以使用服務(wù)器去瀏覽網(wǎng)頁啦!
使用Ipad設(shè)置:
設(shè)置-->通用-->網(wǎng)絡(luò)-->VPN-->添加VPN配置...-->
選擇PPTP
描述 隨意填
服務(wù)器 xxx.xxx.xxx.xxx
帳號: xx
密碼:xx
存儲就可以了
最后完成之后,如果出現(xiàn)錯誤619則輸入命令mknod /dev/ppp c 108 0
注意:如果虛擬機內(nèi)核不支持MPPE的話,無法使用加密,用WINDOWS默認(rèn)VPN連接會顯示“證書信任錯誤”。
解決方法:修改/etc/ppp/options.pptpd注釋掉require-mppe-128這行,然后windows的vpn撥號的屬性改為可選加密,再次連接就成功了。
如果你無法訪問一些特定網(wǎng)站,建議你修改ppp接口的MTU(很多時候iphone能連接vpn但是無法打開任何網(wǎng)頁也可能跟這個有關(guān)系)
輸入vi /etc/ppp/ip-up
在倒數(shù)第二行加入如下內(nèi)容:
/sbin/ifconfig $1 mtu 1400
缺省 MTU:1496
保存后需要重啟PPTP服務(wù)器,指令如下:
service pptpd restart