L2TP協議與IPSec

    L2TP(Layer Two Tunneling Protocol,第二層通道協議)是VPDN(虛擬專用撥號網絡)技術的一種,專門用來進行第二層數據的通道傳送,即將第二層數據單元,如點到點協議(PPP)數據單元,封裝在IP或UDP載荷內,以順利通過包交換網絡(如Internet),抵達目的地。
     L2TP提供了一種遠程接入訪問控制的手段,其典型的應用場景是:某公司員工通過PPP撥入公司本地的網絡訪問服務器(NAS),以此接入公司內部網絡,獲取IP地址並訪問相應權限的網絡資源;該員工出差到外地,此時他想如同在公司本地一樣以內網IP地址接入內部網絡,操作相應網絡資源,他的做法是向當地ISP申請L2TP服務,首先撥入當地ISP,請求ISP與公司NAS建立L2TP會話,並協商建立L2TP隧道,然後ISP將他發送的PPP數據通道化處理,通過L2TP隧道傳送到公司NAS,NAS就從中取出PPP數據進行相應的處理,如此該員工就如同在公司本地那樣通過NAS接入公司內網。
     從上述應用場景可以看出L2TP隧道是在ISP和NAS之間建立的,此時ISP就是L2TP訪問集中器(LAC),NAS也就是L2TP網絡服務器(LNS)。LAC支持客戶端的L2TP,用於發起呼叫,接收呼叫和建立隧道,LNS則是所有隧道的終點。在傳統的PPP連接中,用戶撥號連接的終點是LAC,L2TP使得PPP協議的終點延伸到LNS。
     L2TP本質上是一種隧道傳輸協議,它使用兩種類型的消息:控制消息和數據隧道消息。控制消息負責創建、維護及終止L2TP隧道,而數據隧道消息則負責用戶數據的真正傳輸。L2TP支持標準的安全特性CHAP和PAP,可以進行用戶身份認證。在安全性考慮上,L2TP僅定義了控制消息的加密傳輸方式,對傳輸中的數據並不加密。
     IPsec(IP Security),顧名思義,是保障IP層安全的網絡技術,它並不是指某一項具體的協議,而是指用於實現IP層安全的協議套件集合。IPsec實質上也是一種隧道傳輸技術,它將IP分組或IP上層載荷封裝在IPsec報文內,並根據需要進行加密和完整性保護處理,以此保證數據在公共網絡中傳輸過程的安全。
     IPsec支持兩種協議標準,鑑別首部(Authenticaion Header,AH)和封裝安全有效載荷(Encapsulation Security Payload,ESP):
AH可證明數據的起源地(數據來源認證)、保障數據的完整性以及防止相同的數據包不斷重播(抗重放***);
ESP能提供的安全服務則更多,除了上述AH所能提供的安全服務外,還能提供數據機密性,這樣可以保證數據包在傳輸過程中不被非法識別;
AH與ESP提供的數據完整性服務的差別在於,AH驗證的範圍還包括數據包的外部IP頭。
     爲正確實施IPsec封裝及解封裝IP數據包,必須建立IPsec隧道,也就是需要定義加密或鑑別算法、算法使用的密鑰、密鑰保持有效的生命期以及授權可用的數據訪問策略等信息,這也被稱爲"安全聯盟(Security Association,SA)"。
     通常採用IKE(Internet Key Exchange,因特網密鑰交換)協議來協商建立IPsec隧道。IKE協商實際上有兩個階段:
第一階段協商,是在IPsec通信雙方之間建立IKE的安全通道,即建立IKE SA,這個過程有兩種模式,一種是常用的主模式(Main Mode),能提供身份保護服務,但需要較多的消息交互(多達六條消息),另一種是比較迅速的積極模式(Aggressive Mode),但協商能力較弱,也不能提供身份保護功能;
第二階段協商是在IKE SA的保護下進行的,其目的是爲特定的通信流協商IPsec安全通道,即建立IPsec SA。
     由此可以看出IKE的主要作用是負責建立、維護和終止IPsec安全通道,通過其他的一些消息交換過程,可以幫助維持IPsec通道的可用性和安全性,服務於IPsec數據的安全傳輸。
     這與L2TP控制消息幫助建立和維護L2TP數據傳輸通道的作用有異曲同工之妙。兩者都可以提供通信雙方之間的身份認證,並且都可以在提供完整性保護和機密性服務的環境下進行安全的有關參數協商和消息交互;同時還能根據各自的特點,提供一種保活(keepalive)機制來負責協調隧道雙方的狀態的同步,提高隧道的容錯性和穩定性,所不同的是,IKE是充分利用IPsec通信流存在即對方活躍狀態的證明的特點,以此減少保活報文通信量,這種方式也被稱爲"DPD(Dead Peer Detection,死亡對端探測)"。此外IKE的協商能力也遠大於L2TP控制消息交互。
     L2TP與IPsec的一個最大的不同在於它不對隧道傳輸中的數據進行加密,從而沒法保證數據傳輸過程中的安全。因此這個時候,L2TP常和IPsec結合使用,先使用L2TP封裝第二層數據,再使用IPsec封裝對數據進行加密和提供完整性保護,由此保證通信數據安全傳送到目的地。
     L2TP由於封裝的是第二層協議數據,因此可以認爲是一種L2***(第二層***)技術。最新的L2TP協議草案(L2TP v3)表明,L2TP不僅可以封裝PPP數據單元,還可以封裝其他第二層協議數據,如Ethernet(以太網)、Frame Relay(幀中繼)等。因此L2TP的作用已經擴展到將異地的局域網通過L2TP隧道跨越公共網絡連接在一起,也就是實現異地局域網互聯,這樣可以將某些局域網技術如VLAN(虛擬局域網)應用到異地局域網之間,從而利用公共網絡來模擬局域網。當然其數據傳輸過程中的安全性仍然依賴於IPsec來提供。同時由於對數據進行了層層封裝,這樣難免影響效率,導致性能不高。
     IPsec封裝的是IP層數據,或是IP上層協議載荷,因此可以認爲是一種構建L3***(第三層***)的技術。其最大的特點是爲數據傳輸過程提供了機密性、完整性保護和數據源驗證,從而確保承載於公共網絡的***的安全性和可靠性,同時由於添加的協議頭並不多,且還可以利用硬件加密卡加速IPsec報文的處理,因而效率上得到了很大的提高;此外IKE協商過程能提供比較完備的用戶身份認證,這就使得可以對IPsec用戶訪問實施有力控制,從而進一步保證了網絡的安全。
     因此就一般企業用戶構建安全的***而言,應該使用IPsec技術,當然如果需要實現安全的VPDN,就應該採用L2TP+IPsec組合技術。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章