PPP以及pptp相關(guān)的設置
對于PPP和pptp的內(nèi)容,我們這里來簡單講解一下,當然,對于安裝和配置的分析是少不了的了。PS:pptpd啟動后使用的是1723端口,l2tpd使用的是1701端口,啟動服務后可以使用 netstat -tnl 來查看端口啟動情況)另外:還有配置文章見:http://blog.chinaunix.net/u2/69106/showart_1751714.html
現(xiàn)在使用linux的環(huán)境越來越多,比如總部使用linux,但由于分支機構(gòu)位置分散,不便于管理,所以還是使用windows,通常情況下我們都 是通過VPN的方式把分支機構(gòu)與總部連接起來。通常情況下VPN有PPTP VPN,IPSEC VPN,L2TP VPN幾種,PPTP最簡便,IPSEC VPN最通用,各個平臺都支持,L2TP VPN最安全,本人經(jīng)過多次實驗,終于成功,今天拿來給大家分享。
下面我們來看看具體配置過程:
(一)下載與安裝
由于Linux本身并沒有集成PPTP功能,所以需要安裝相關(guān)組件以讓我們的RedHat支持PPP,根據(jù)內(nèi)核的版本,下載相應的安裝包,我這里內(nèi)核是kernel2.6.9-5.EL及2.6.14 ,所用組件如下:
dkms-2.0.6-1.noarch.rpm
kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
ppp-2.4.3-5.rhel4.i386.rpm
pptpd-1.3.0-0.i386.rpm
1.PPTP需要PPP支持,雖然系統(tǒng)本身有PPP功能,但它并不支持MPPE,所以需要更新系統(tǒng)的PPP組件,下載ppp-2.4.3-5.rhel4.i386.rpm安裝命令如下:
# rpm -Uvh ppp-2.4.3-5.rhel4.i386.rpm
2.安裝內(nèi)核MPPE(Microsoft Point to Point Encryption,微軟點對點加密)補丁,安裝命令如下:
#rpm –ivh dkms-2.0.6-1.noarch.rpm
#rpm –ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
用以下命令檢查內(nèi)核MPPE補丁是否安裝成功,MPPE module可否載如:
#modprobe ppp-compress-18 && echo success
3.安裝pptpd,命令如下:
#rpm –ivh pptpd-1.3.0-0.i386.rpm
4.用以下命令檢查PPP是否支持MPPE:
#strings '/usr/sbin/pppd'|grep -i mppe|wc --lines
46 <如果以上命令輸出為“0”則表示不支持;輸出為“30”或更大的數(shù)字就表示支持,我這里為46>。
(二)修改配置文件
1. 編輯 /etc/pptpd.conf 文件,確定本地VPN服務器的IP地址和客戶端登錄后分配的IP地址范圍。pptpd.conf是PPTP服務PPTPD運行時使用的配置文件,常用選項如下(#號后是選項說明):
option /etc/ppp/options.pptpd #PPP組件將使用的配置文件
#stimeout 10 #開始PPTP控制連接的超時時間,以秒計
debug #把所有debug信息記入系統(tǒng)日志/var/log/messages
localip 192.168.1.4 #服務器VPN虛擬接口將分配的IP地址
remoteip 192.168.1.254 #客戶端VPN連接成功后將分配的IP,如果是地址范圍可表示為192.168.1.200-234的形式
2. 編輯 /etc/ppp/options.pptpd 文件,它是PPP功能組件pppd將使用的配置文件,由于PPTP VPN的加密和驗證都與PPP相關(guān),所以PPTP的加密和驗證選項都將在這個配置文件中進行配置。
lock
debug
name vpn1
refuse-pap
refuse-chap
refuse-mschap
rrequire-mschap-v2
require-mppe-128
proxyarp
3. 編輯 /etc/ppp/chap-secrets文件,在此配置能夠連接到VPN服務器的用戶、密碼和IP等信息:
# Secrets for authentication using CHAP
# client server secret IP addresses
aaa vpn1 "qazxsw123456" *
(三)啟動PPTP服務
service pptpd start
用 #netstat –an命令查看,TCP 1723端口是否處于監(jiān)聽狀態(tài)。
(四)防火墻配置
要讓外部用戶能連接PPTP VPN,還需要在防火墻中加入以下規(guī)則(也就是將Linux服務器的1723端口和47端口打開,并打開GRE協(xié)議):
(五)在PPTP服務器上開啟NAT服務,以便于客戶端上網(wǎng)
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -j SNAT --to XXX.XXX.XXX.XXX
安裝動態(tài)域名客戶端軟件
(六)由于PPTP客戶端需要知道PPTP服務器的IP,但這里的ADSL撥號又是動態(tài)IP,所以我們需要安裝一個動態(tài)域名客戶端軟件,這樣 PPTP客戶端只要知道服務器的動態(tài)域名就行了。
可以使用金萬維的免費動態(tài)域名,這樣ADSL撥號之后動態(tài)域名客戶端軟件將自動更新域名和IP對應 值。。。
==========================================================
到這里Linux pptp vpn server的設置就完成了,剩下任務的就是用Windows客戶端進行測試