在Windows系統環境下虛擬專用網服務器
例如,如果你碰巧有一個缺少與公司辦公室直接連接的一個分支辦公室,使用一臺路由器作為VPN客戶機對你來說可能是一個很好的選擇。通過這樣做,你可以利用一個單個的連接把整個分支辦公室與公司辦公室連接起來。不需要每一臺PC都單獨建立一個連接。
另一方面,如果你擁有一些經常出差的雇員,這些雇員需要在旅行中訪問公司的網絡,你把這些雇員的筆記本電腦設置為VPN的客戶機可能會有好處。
從技術上說,只要支持PPTP、L2TP或者IPSec協議,任何操作系統都可以作為一臺VPN客戶機。就微軟而言,這意味著你可以使用 Windows NT 4.0、9X、ME、2000和XP操作系統。雖然所有這些操作系統從技術上說都可以作為客戶機,我建議你堅持使用Windows 2000或者Windows XP操作系統,因為這些操作系統能夠支持L2TP和PSec協議。
VPN服務器
VPN服務器可以當作VPN客戶機的一個連接點。從技術上說,你可以使用Windows NT Server 4.0、Windows 2000 Server或者Windows Server 2003等操作系統作為一臺VPN服務器。不過,為了保證安全,我認為你應該使用Windows Server 2003操作系統。
有關VPN服務器的最大的誤解之一是VPN服務器所有的工作都是自己完成的。我的朋友無數次地對我說,他們要購買一臺VPN服務器。他們沒有認識到VPN服務器只是必要的組件之一。
VPN服務器本身是非常簡單的。VPN服務器不過是執行路由和遠程訪問服務任務的一個增強的‘Windows 2003 Server’服務器。一旦一個進入VPN網絡的請求被批準,這個VPN服務器就簡單地充當一臺路由器向這個VPN客戶機提供專用網絡的接入。
ISA服務器
VPN服務器的額外要求之一是你要有一臺RADIUS(遠程認證撥入用戶服務)服務器。遠程認證撥入用戶服務是互聯網服務提供商在用戶試圖建立互聯網連接的時候對用戶進行身份識別的一種機制。
你需要使用RADIUS服務器的原因是你需要一些身份識別機制對通過VPN連接進入你的網絡的用戶進行身份識別。你的域名控制器不能完成這個任務。即使你的域名控制器能夠勝任這個任務,把域名控制器暴露給外部世界也不是一個好主意。
現在的問題是你從什么地方獲得這個RADIUS服務器?微軟有自己版本的RADIUS,名為“互聯網身份識別服務”,英文縮寫字是IAS。 Windows Server 2003操作系統包含IAS功能。這是一個好消息。壞消息是由于安全的原因不能在同一臺計算機中把ISA當作路由和遠程訪問服務(RRAS)來運行。即使可以這樣做,我也不能肯定在虛擬服務器設置之外是否有這個可能。
防火墻
你的VPN需要的其它組件是一個良好的防火墻。的確。你的VPN服務器接受來自外部世界的連接,但是,這并不意味著外部世界需要完全訪問的VPN服務器。你必須使用防火墻封鎖任何沒有使用的端口。
建立VPN連接的基本要求是,VPN服務器的IP地址必須能過通過互聯網訪問,VPN通信必須能夠通過你的防火墻進入VPN服務器。然而,還有一項可選擇的組件。你可以使用這個組件讓你的VPN服務器更安全。
如果你非常重視安全問題(而且你有這筆預算),你可以在ISA服務器和你的周邊防火墻和VPN服務器之間放置一個ISA服務器。這個想法是,你可以設置防火墻把所有的與VPN有關的通信都指向那個ISA服務器,而不是指向VPN服務器。然后,ISA服務器將充當一個VPN代理服務器。
VPN客戶機和VPN服務器僅與ISA服務器進行通信。它們相互之間從來不直接通信。這就意味著ISA服務器在保護VPN服務器,不允許直接訪問VPN服務器,從而為VPN服務器增加了一個保護層。
選擇一個隧道協議
當VPN客戶機訪問一臺VPN服務器的時候,它們是通過一個虛擬的隧道進行訪問的。一個隧道實際上就是通過一個不安全的媒介(通常是互聯網)的安全通道。然而,隧道并不是用魔術變出來的。隧道需要使用一個隧道協議。
我以前曾講過老式的Windows客戶機能夠通過PPTP(點對點隧道協議)協議連接到一個VPN網絡。但是,我建議使用比較新的客戶端軟件,如Windows 2000和Windows XP,因為它們支持L2TP(2層隧道協議)。事實是這兩個協議中的任何一個協議都可以工作,而且客戶機都支持這些協議。然而,每一個協議都有其優點和缺點。選擇一個適合你的機構的隧道協議是你規劃VPN網絡時應做出的最重要的決策之一。
同PPTP協議相比,L2TP協議最大的優勢在于它依賴IPSec。IPSec加密數據,也提供數據身份識別。這意味著IPSec證明這個數據確實是由發送者發送的并且在傳輸的過程中沒有被修改。而且IPSec可以防止重播攻擊。重播攻擊指的是安全捕捉身份識別數據包,然后在晚些時候重新發送這個數據包以便獲得這個系統的訪問權限。
L2TP還可以提供比PPTP更強大的身份識別功能。L2TP能夠對用戶和計算機都進行身份識別。而且在用戶級身份識別期間交換的數據包總是被加密的。
雖然表面上看L2TP也許是隧道協議的選擇,但是,PPTP也有一些超過L2TP的優點。我已經談到過這些優點之一,就是兼容性。PPTP比 L2TP兼容更多的Windows系統。如果你有一些仍在使用版本比較老的Windows操作系統的VPN用戶,那么,除了使用PPTP之外,你沒有別的選擇。
PPTP優于L2TP的另一個優勢是L2TP是以IPSec為基礎的。在L2TP的優點這一節,我談到IPSec喜歡L2TP是一件好事,而且事情確實如此。然而,使用IPSec有一個重大缺陷。IPSec要求你的網絡具有認證中心。
這個好消息是Windows Server 2003有自己的認證中心。認證中心的設置是相對簡單的。壞消息是,從安全的觀點看,認證中心不是你要處理的事情。保持認證中心完整性的惟一方法是在一臺安全保護增強到最大限度的專用服務器上運行認證中心。這就意味著必須要額外投資購買一臺服務器、額外的Windows服務器軟件許可證、以及增加與你的網絡增加一臺服務器有關的額外管理負擔。
不過,按照我的意見,額外的成本和管理負擔是值得的。L2TP能夠為你提供比PPTP更好的安全性。此外,你還可以利用認證中心做其它的事情,如通過IPSec加密本地通信等。
身份識別協議
在我談論協議話題的時候,我要用一些時間談一談身份識別協議的問題。在設置VPN的過程中,系統將要求你選擇一個身份識別協議。大多數人會選擇 MS-CHAP v2選項。MS-CHAP是一個相對安全的選項,它兼容運行在過去的10年里制作的任何版本的Windows操作系統的VPN客戶機。MS-CHAP最大的優點是容易設置。
如果你計劃使用L2TP并且要更好的安全性,你應該選擇EAP-TLS作為你的身份識別協議。只有運行Windows 2003或者Windows XP操作系統的客戶機才能支持EAP-TLS協議。而且,必須設置VPN服務器之后認證中心才能辦法用戶認證。
EAP-TLS協議的設置比較復雜,如果最終用戶已經獲得了智能卡,這個協議會工作得更好。但是,EAP-TLS協議確實能夠為你提供最佳的安全。簡單地說,MS-CHAP是基于口令的協議。EAP-TLS是基于證書的協議。
結論
在你創建一個VPN之前,需要做許多規劃工作。在這篇文章中,我談了設計一個VPN必須要做的一些規劃,還談了一些你必須要做出的一些決策。
