2012年3月19日

(VPN) PPTP、L2TP和IPsec的區別及優缺點

VPN (虛擬專用網)發展至今已經不在是一個單純的經過加密的訪問隧道了,它已經融合了訪問控制、傳輸管理、加密、路由選擇、可用性管理等多種功能,並在全球的 信息安全體 系中發揮著重要的作用。也在網絡上,有關各種VPN協議優缺點的比較是仁者見仁,智者見智,很多技術人員由於出於使用目的考慮,包括訪問控制、 安全和用戶簡單易用,靈活擴展等各方面,權衡利弊,難以取捨;尤其在VOIP語音環境中,網絡安全顯得尤為重要,因此現在越來越多的網絡電話和語音網關支 持VPN協議。

  PPTP

  點對點隧道協議 (PPTP) 是由包括微軟和3Com等公司組成的PPTP論壇開發的一種點對點隧道協,基於撥號使用的PPP協議使用PAP或CHAP之類的加密算法,或者使用 Microsoft的點對點加密算法MPPE。其通過跨越基於 TCP/IP 的數據網絡創建 VPN 實現了從遠程客戶端到專用企業服務器之間數據的安全傳輸。PPTP 支持通過公共網絡(例如 Internet)建立按需的、多協議的、虛擬專用網絡。PPTP 允許加密 IP 通訊,然後在要跨越公司 IP 網絡或公共 IP 網絡(如 Internet)發送的 IP 頭中對其進行封裝。

  L2TP第 2 層隧道協議 (L2TP) 是IETF基於L2F (Cisco的第二層轉發協議)開發的PPTP的後續版本。是一種工業標準 Internet 隧道協議,其可以為跨越面向數據包的媒體發送點到點協議 (PPP) 框架提供封裝。PPTP和L2TP都使用PPP協議對數據進行封裝,然後添加附加包頭用於數據在互聯網絡上的傳輸。PPTP只能在兩端點間建立單一隧道。 L2TP支持在兩端點間使用多隧道,用戶可以針對不同的服務質量創建不同的隧道。L2TP可以提供隧道驗證,而PPTP則不支持隧道驗證。但是當L2TP 或PPTP與IPSEC共同使用時,可以由IPSEC提供隧道驗證,不需要在第2層協議上驗證隧道使用L2TP。 PPTP要求互聯網絡為IP網絡。L2TP只要求隧道媒介提供面向數據包的點對點的連接,L2TP可以在IP(使用UDP),楨中繼永久虛擬電路 (PVCs),X.25虛擬電路(VCs)或ATM VCs網絡上使用。

  IPSec 隧道模式隧道是封裝、路由與解封裝的整個 過程。隧道將原始數據包隱藏(或封裝)在新的數據包內部。該新的數據包可能會有新的尋址與路由信息,從而使其能夠通 過網絡傳輸。隧道與數據保密性結合使用時,在網絡上竊聽通訊的人將無法獲取原始數據包數據(以及原始的源和目標)。封裝的數據包到達目的地後,會刪除封 裝,原始數據包頭用於將數據包路由到最終目的地。

  隧道本身是封裝數據經過的邏輯數據路徑,對原始的源和目的端,隧道是不可見的,而只能看到網絡路徑中的點對點連接。連接雙方並不關心隧道起點和終點之間的任何路由器、交換機、代理服務器或其他安全網關。將隧道和數據保密性結合使用時,可用於提供VPN。

  封裝的數據包在網絡中的隧道內部傳輸。在此示例中,該網絡是 Internet。網關可以是外部 Internet 與專用網絡間的周界網關。周界網關可以是路由器、防火牆、代理服務器或其他安全網關。另外,在專用網絡內部可使用兩個網關來保護網絡中不信任的通訊。

  當以隧道模式使用 IPSec 時,其只為 IP 通訊提供封裝。使用 IPSec 隧道模式主要是為了與其他不支持 IPSec 上的 L2TP 或 PPTP VPN 隧道技術的路由器、網關或終端系統之間的相互操作。

  SSL VPNSSL VPN, SSL協議提供了數據私密性、端點驗證、信息完整性等特性。SSL協議由許多子協議組成,其中兩個主要的子協議是握手協議和記錄協議。握手協議允許服務器 和客戶端在應用協議傳輸第一個數據字節以前,彼此確認,協商一種加密算法和密碼鑰匙。在數據傳輸期間,記錄協議利用握手協議生成的密鑰加密和解密後來交換 的數據。

  SSL獨立於應用,因此任何一個應用程序都可以享受它的安全性而不必理會執行細節。SSL置身於網絡結構體系的 傳輸層和應用層之間。此外,SSL本身就被幾乎所有的Web瀏覽器支持。這意味著客戶端不需要為了支持SSL連接安裝額外的軟件。這兩個特徵就是SSL能 應用於VPN的關鍵點。

  典型的SSL VPN應用如OpenVPN,是一個比較好的開源軟件。我們的產品提供了PPTP和OpenVPN兩種應用,PPTP主要為那些經常外出移動或家庭辦公的 用戶考慮;而OpenVPN主要是針對企業異地兩地總分公司之間的VPN不間斷按需連接,例如ERP在企業中的應用。

  OpenVPN 允許參與建立VPN的單點使用預設的私鑰,第三方證書,或者用戶名/密碼來進行身份驗證。它大量使用了OpenSSL加密庫,以及SSLv3/TLSv1 協議。OpenVPN能在Linux、xBSD、Mac OS X與Windows 2000/XP上運行。它並不是一個基於Web的VPN軟件,也不與IPsec及其他VPN軟件包兼容。

  隧道加密

  OpenVPN使用OpenSSL庫加密數據與控制信息:它使用了OpesSSL的加密以及驗證功能,意味著,它能夠使用任何OpenSSL支持的算法。它提供了可選的數據包HMAC功能以提高連接的安全性。此外,OpenSSL的硬件加速也能提高它的性能。

  驗證

  OpenVPN提供了多種身份驗證方式,用以確認參與連接雙方的身份,包括:預享私鑰,第三方證書以及用戶名/密碼組合。預享密鑰最為簡單,但 同時它 只能用於建立點對點的VPN;基於PKI的第三方證書提供了最完善的功能,但是需要額外的精力去維護一個PKI證書體系。OpenVPN2.0後引入了用 戶名/口令組合的身份驗證方式,它可以省略客戶端證書,但是仍有一份服務器證書需要被用作加密.

  網絡

  OpenVPN所有的通信都基於一個單一的IP端口,默認且推薦使用UDP協議通訊,同時TCP也被支持。OpenVPN連接能通過大多數的代 理服務 器,並且能夠在NAT的環境中很好地工作。服務端具有向客戶端「推送」某些網絡配置信息的功能,這些信息包括:IP地址、路由設置等。OpenVPN提供 了兩種虛擬網絡接口:通用Tun/Tap驅動,通過它們,可以建立三層IP隧道,或者虛擬二層以太網,後者可以傳送任何類型的二層以太網絡數據。傳送的數 據可通過LZO算法壓縮。IANA(Internet Assigned Numbers Authority)指定給OpenVPN的官方端口為1194。OpenVPN 2.0以後版本每個進程可以同時管理數個並發的隧道。

  OpenVPN使用通用網絡協議(TCP與UDP)的特點使它成為IPsec等協議的理想替代,尤其是在ISP(Internet service provider)過濾某些特定VPN協議的情況下。在選擇協議時候,需要注意2個加密隧道之間的網絡狀況,如有高延遲或者丟包較多的情況下,請選擇 TCP協議作為底層協議,UDP協議由於存在無連接和重傳機制,導致要隧道上層的協議進行重傳,效率非常低下。

  安全

  OpenVPN與生俱來便具備了許多安全特性:它在用戶空間運行,無須對內核及網絡協議棧作修改;初始完畢後以chroot方式運行,放棄root權限;使用mlockall以防止敏感數據交換到磁盤。

  OpenVPN通過PKCS#11支持硬件加密標識,如智能卡。

PPTP、L2TP和IPsec的區別及優缺點

1、PPTP協議是點對點隧道協議:

  其將控制包與數據包分開,控制包採用TCP控制,用於嚴格的狀態查詢及信令信息;數據包部分先封裝在PPP協議中,然後封裝到GRE V2協議中。

2、L2TP是國際標準隧道協議:

  它結合了PPTP協議以及第二層轉發L2F協議的優點,能以隧道方式使PPP包通過各種網絡協議,包括ATM、SONET和幀中繼。但是L2TP沒有任何加密措施,更多是和IPSec協議結合使用,提供隧道驗證。

3、兩者的聯繫與區別:

  聯繫:PPTP和L2TP都使用PPP協議對數據進行封裝,然後添加附加包頭用於數據在互聯網絡上的傳輸。儘管兩個協議非常相似,但是仍存在以下幾方面的不同

  區別:

  1)PPTP要求互聯網絡為IP網絡。L2TP只要求隧道媒介提供面向數據包的點對點的連接。L2TP可以在IP(使用UDP),楨中繼永久虛擬電路(PVCs),X.25虛擬電路(VCs)或ATM VCs網絡上使用。

  2)PPTP只能在兩端點間建立單一隧道。L2TP支持在兩端點間使用多隧道。使用L2TP,用戶可以針對不同的服務質量創建不同的隧道。

  3)L2TP可以提供包頭壓縮。當壓縮包頭時,系統開銷(overhead)佔用4個字節,而PPTP協議下要佔用6個字節。

  4)L2TP可以提供隧道驗證,而PPTP不支持隧道驗證。但當L2TP或PPTP與IPSEC共同使用時,可由IPSEC提供隧道驗證,不需在第2層協議上驗證隧道。

IPSec的優點

如果在路由器或防火牆上執行了IPSec,它就會為周邊的通信提供強有力的安全保障。一個公司或工作組內部的通信將不涉及與安全相關的費用。下文敘述了IPSec的一些優點:

IPSec在傳輸層之下,對於應用程序來說是透明的。當在路由器或防火牆上安裝IPSec時,無需更改用戶或服務器系統中的軟件設置。即使在終端系統中執行IPSec,應用程序一類的上層軟件也不會被影響。
IPSec對終端用戶來說是透明的,因此不必對用戶進行安全機制的培訓。
如果需要的話,IPSec可以為個體用戶提供安全保障,這樣做就可以保護企業內部的敏感信息。
IPSec 正向Internet靠攏。已經有一些機構部分或全部執行了IPSec。IAB的前任總裁Christian Huitema認為,關於如何保證Internet安全的討論是他所見過的最激烈的討論之一。討論的話題之一就是安全是否在恰當的協議層上被使用。想要提 供IP級的安全,IPSec必須成為配置在所有相關平台(包括Windows NT,Unix和Macintosh系統)的網絡代碼中的一部分。

實際上,現在發行的許多Internet應用軟件中已包含了安全特徵。例如,Netscape Navigator和Microsoft Internet Explorer支持保護互聯網通信的安全套層協議(SSL),還有一部分產品支持保護Internet上信用卡交易的安全電子交易協議(SET)。然 而,VPN需要的是網絡級的功能,這也正是IPSec所提供的。

沒有留言:

發佈留言