虛擬專用網(VPN)被定義為通過一個公用網絡(通常是因特網)建立一個臨時的、安全的連接,是一條穿過混亂的公用網絡的安全、穩定的隧道。虛擬專用網可以幫助遠程用戶、公司分支機構、商業伙伴及供應商同公司的內部網建立可信的安全連接,并保證數據的安全傳輸。微軟的Windows2000里已經內置了VPN的支持。如何在Linux下實現呢?經過一下午的研究,終于搞定,其實蠻簡單的。由于網上介紹LINUX下配置VPN的中文資料比較少,所以寫了這篇貼上來,希望能給linuxforum的朋友們一點幫助。本人也是菜鳥,有不對的地方希望大家批評指正。
環境
1. 一臺PC服務器安裝RedHat7.2,雙網卡連接內外兩個網段,內部網卡IP為192.168.0.1/255.255.255.0,外部地址為固定合法IP地址。
2. 外地用戶PC通過Internet和RH7.2主機建立vpn連接連入局域網。
一、下載pptpd-1.0.0-5.i386.rpm
PPTP(Piont-to-point Tunneling Protocol 點對點傳輸協議)是一個用以建立VPN的網絡協議. 此協議需TCP(端口1723)和GRE以完成工作. RedHat公司對這個RPM包的解釋是:A PPTP server daemon.
ftp://ftp.redhat.com/pub/redhat/lin....0.0-5.i386.rpm
二、安裝:rpm -ivh pptpd-1.0.0-5.i386.rpm
安裝后產生以下文件:
/etc/pptpd.conf
/usr/sbin/pptpctrl
/usr/sbin/pptpd
/usr/share/doc/pptpd-1.0.0
/usr/share/doc/pptpd-1.0.0/AUTHORS
/usr/share/doc/pptpd-1.0.0/COPYING
/usr/share/doc/pptpd-1.0.0/INSTALL
/usr/share/doc/pptpd-1.0.0/README
/usr/share/doc/pptpd-1.0.0/README.inetd
/usr/share/doc/pptpd-1.0.0/README.slirp
/usr/share/doc/pptpd-1.0.0/TODO
/usr/share/doc/pptpd-1.0.0/html
/usr/share/doc/pptpd-1.0.0/html/HOWTO-IPX+PPTP.txt
/usr/share/doc/pptpd-1.0.0/html/HOWTO-PoPToP.txt
/usr/share/doc/pptpd-1.0.0/html/setup_pptp_client.html
/usr/share/doc/pptpd-1.0.0/samples
/usr/share/doc/pptpd-1.0.0/samples/chap-secrets
/usr/share/doc/pptpd-1.0.0/samples/options
/usr/share/doc/pptpd-1.0.0/samples/pptpd.conf
你可以看看里面的說明和示例
三、修改:/etc/pptpd.conf的內容
speed 115200
option /etc/ppp/options
localip 192.168.0.200-238 (自己的 ip)
remoteip 192.168.0.100-200 (client 的 ip)
pidfile /var/run/pptpd.pid
四、修改:/etc/ppp/chap-secrets的內容
"sz" xxx.com "sz" 192.168.0.200
"china" xxx.com "china" 192.168.0.100
注:xxx.com是服務器名
五、修改:/etc/ppp/options的內容:
name xxx.com
auth
require-chap
proxyarp
六、最后運行:/usr/sbin/pptpd
經過這簡單的幾步,我們就ok了!用netstat -ln就可以看到已經有個1723的端口在監聽了
Win98系統中VPN連接的設置我這里就不多說了,你可以看下面這個網頁得到幫助:
http://www.ccidnet.com/tech/app/2001/10/22/58_3516.html
在上面的設置中,我將用戶名設了兩個,一個為sz,密碼是sz,另一個為china,密碼是china。單擊“連接”按鈕后便可以連到我們的專用網絡里。我在局域網的機器上實驗了一下,VPN服務器IP為192.168.0.1,連上后顯示連接速度為10M,協議為challenge信號交換身份驗證協議和TCPIP,分配給我的ip為192.168.0.200。呵呵,現在我一臺機器有了兩個IP了。掛斷后換用china撥號,得到新的ip是192.168.0.100。
有一個要注意的地方,如果你的服務器使用的是撥號連接上網的方式,如adsl虛擬撥號或modem撥號,它們都要用到/etc/ppp下面的options等文件,上面的設置可能會有問題。你需要把pptpd需要使用的chap-secrets,options文件放在其他目錄下,并在啟動pptpd的時候加參數-c -o來指定它們的位置。/usr/sbin/pptpd --help說明了pptpd參數的用法。
要同時使用ipx協議的話請先看看/usr/share/doc/pptpd-1.0.0/html/HOWTO-IPX+PPTP.txt,里面說得很清楚了。
我的服務器上沒有使用ipx協議,所以也沒有進一步實驗,有興趣的朋友自己試試吧。