***中的隧道技術詳解

一 ***概述

爲了使得遠程的企業員工可以與總部實時的交換數據信息。企業得向ISP租用網絡提供服務。但公用網容易遭受各種安全***(比如拒絕服務***來堵塞正常的網絡服務,或竊取重要的企業內部信息)

***這個概念的引進就是用來解決這個問題。它是利用公用網絡來連接到企業私有網絡。但在***中,用安全機制來保障機密型,真實可靠行,完整性嚴格的訪問控制。這樣就建立了一個邏輯上虛擬的私有網絡。虛擬局域網提供了一個經濟有效的手段來解決通過公用網絡安全的交換私有信息。

二 ***特性

一般***所具備的優點有以下幾點:

a) 最小成本:無須購買網絡設備和專用線路覆蓋所有遠程用戶

b) 責任共享:通過購買公用網的資源,部分維護責任遷移至provider(更專業,有經驗,是操作,維護成本降低)。

c) 安全性:

d) 保障Qos

e) 可靠性:如果一個***節點壞了,可以一個替換***建立起來繞過他,這種恢復工作是得***操作可以儘可能的延續

f) 可擴展性:可以通過從公用網申請更多得資源達到非常容易的擴展***,或者協商重構***

其中安全性是***最重要的一個特性,也是各類***產品所必須具備和支持的要素.

三 ***的安全技術

目前***主要採用四項技術來保證安全,這四項技術分別是隧道技術(Tunneling)、加解密技術(Encryption & Decryption)、密鑰管理技術(Key Management)、使用者與設備身份認證技術(Authentication)。

加解密技術是數據通信中一項較成熟的技術,***可直接利用現有技術。

密鑰管理技術的主要任務是如何在公用數據網上安全地傳遞密鑰而不被竊取。現行密鑰管理技術又分爲SKIP與ISAKMP/OAKLEY兩種。SKIP主要是利用Diffie-Hellman的演算法則,在網絡上傳輸密鑰;在ISAKMP中,雙方都有兩把密鑰,分別用於公用、私用。

身份認證技術最常用的是使用者名稱與密碼或卡片式認證等方式。

隧道指的是利用一種網絡協議來傳輸另一種網絡協議,它主要利用網絡隧道協議來實現這種功能。網絡隧道技術涉及了三種網絡協議,即網絡隧道協議、隧道協議下面的承載協議和隧道協議所承載的被承載協議。網絡隧道技術是個關鍵技術,這項***的基本技術也是本文要詳細和闡述的.

四 網絡隧道協議

網絡隧道是指在公用網建立一條數據通道(隧道),讓數據包通過這條隧道傳輸。現有兩種類型的網絡隧道協議,一種是二層隧道協議,用於傳輸二層網絡協議,它主要應用於構建遠程訪問虛擬專網(Access***);另一種是三層隧道協議,用於傳輸三層網絡協議,它主要應用於構建企業內部虛擬專網(Intranet***)和擴展的企業內部虛擬專網(Extranet ***)。

二層隧道協議

第二層隧道協議是先把各種網絡協議封裝到PPP中,再把整個數據包裝入隧道協議中。這種雙層封裝方法形成的數據包靠第二層協議進行傳輸。第二層隧道協議主要有以下三種:第一種是由微軟、Ascend、3COM 等公司支持的 PPTP(Point to Point Tunneling Protocol,點對點隧道協議),在WindowsNT4.0以上版本中即有支持。

第二種是Cisco、北方電信等公司支持的L2F(Layer2Forwarding,二層轉發協議),在 Cisco 路由器中有支持。

第三種由 IETF 起草,微軟 Ascend 、Cisco、 3COM 等公司參與的 L2TP(Layer 2TunnelingProtocol,二層隧道協議)結合了上述兩個協議的優點,L2TP協議是目前IETF的標準,由IETF融合PPTP與L2F而形成。這裏就主要介紹一下 L2TP 網絡協議。

其中,LAC 表示 L2TP 訪問集中器(L2TPAccessConcentrator),是附屬在交換網絡上的具有 PPP 端系統和 L2TP 協議處理能力的設備,LAC 一般就是一個網絡接入服務器 NAS(Network Access Server)它用於爲用戶通過 PSTN/ISDN 提供網絡接入服務;LNS 表示 L2TP 網絡服務器(L2TP Network Server),是 PPP 端系統上用於處理 L2TP 協議服務器端部分的軟件。

在一個LNS和LAC對之間存在着兩種類型的連接,一種是隧道(tunnel)連接,它定義了一個LNS和LAC對;另一種是會話(session)連接,它複用在隧道連接之上,用於表示承載在隧道連接中的每個 PPP 會話過程。

L2TP連接的維護以及PPP數據的傳送都是通過L2TP消息的交換來完成的,這些消息再通過 UDP的1701端口承載於TCP/IP之上。L2TP消息可以分爲兩種類型,一種是控制消息,另一種是數據消息。控制消息用於隧道連接和會話連接的建立與維護。數據消息用於承載用戶的 PPP 會話數據包。 L2TP 連接的維護以及 PPP 數據的傳送都是通過 L2TP 消息的交換來完成的,這些消息再通過UDP的1701端口承載於 TCP/IP 之上。

控制消息中的參數用AVP值對(AttributeValuePair)來表示,使得協議具有很好的擴展性;在控制消息的傳輸過程中還應用了消息丟失重傳和定時檢測通道連通性等機制來保證了 L2TP 層傳輸的可靠性。數據消息用於承載用戶的 PPP 會話數據包。L2TP 數據消息的傳輸不採用重傳機制,所以它無法保證傳輸的可靠性,但這一點可以通過上層協議如TCP等得到保證;數據消息的傳輸可以根據應用的需要靈活地採用流控或不流控機制,甚至可以在傳輸過程中動態地使用消息序列號從而動態地激活消息順序檢測和流量控制功能;在採用流量控制的過程中,對於失序消息的處理採用了緩存重排序的方法來提高數據傳輸的有效性。

L2TP 還具有適用於*** 服務的以下幾個特性:

· 靈活的身份驗證機制以及高度的安全性

L2TP 可以選擇多種身份驗證機制(CHAP、PAP等),繼承了PPP的所有安全特性,L2TP 還可以對隧道端點進行驗證,這使得通過L2TP所傳輸的數據更加難以被***。而且根據特定的網絡安全要求還可以方便地在L2TP之上採用隧道加密、端對端數據加密或應用層數據加密等方案來提高數據的安全性。

· 內部地址分配支持

LNS可以放置於企業網的防火牆之後,它可以對於遠端用戶的地址進行動態的分配和管理,可以支持DHCP和私有地址應用(RFC1918)等方案。遠端用戶所分配的地址不是Internet地址而是企業內部的私有地址,這樣方便了地址的管理並可以增加安全性。

· 網絡計費的靈活性

可以在LAC和LNS兩處同時計費,即ISP處(用於產生帳單)及企業處(用於付費及審記)。L2TP能夠提供數據傳輸的出入包數,字節數及連接的起始、結束時間等計費數據,可以根據這些數據方便地進行網絡計費。

· 可靠性

L2TP 協議可以支持備份 LNS,當一個主 LNS 不可達之後,LAC(接入服務器)可以重新與備份 LNS 建立連接,這樣增加了 *** 服務的可靠性和容錯性。

· 統一的網絡管理

L2TP協議將很快地成爲標準的RFC協議,有關L2TP的標準MIB也將很快地得到制定,這樣可以統一地採用 SNMP 網絡管理方案進行方便的網絡維護與管理。

三層隧道協議

第三層隧道協議是把各種網絡協議直接裝入隧道協議中,形成的數據包依靠第三層協議進行傳輸。三層隧道協議並非是一種很新的技術,早已出現的 RFC 1701 Generic Routing Encapsulation(GRE)協議就是個三層隧道協議。新出來的 IETF 的 IP 層加密標準協議 IPSec 協議也是個三層隧道協議。

IPSec(IPSecurity)是由一組RFC文檔組成,定義了一個系統來提供安全協議選擇、安全算法,確定服務所使用密鑰等服務,從而在IP層提供安全保障。 它不是一個單獨的協議,它給出了應用於IP層上網絡數據安全的一整套體系結構,它包括網絡安全協議 Authentication Header(AH)協議和 Encapsulating Security Payload(ESP)協議、密鑰管理協議Internet Key Exchange (IKE)協議和用於網絡驗證及加密的一些算法等。下面就IPSec的認證與加密機制和協議分別做一些詳細說明。

1. IPSec認證包頭(AH):

它是一個用於提供IP數據報完整性和認證的機制。其完整性是保證數據報不被無意的或惡意的方式改變,而認證則驗證數據的來源(識別主機、用戶、網絡等)。AH本身其實並不支持任何形式的加密,它不能保證通過Internet發送的數據的可信程度。AH只是在加密的出口、進口或使用受到當地政府限制的情況下可以提高全球Intenret的安全性。當全部功能實現後,它將通過認證IP包並且減少基於IP欺騙的***機率來提供更好的安全服務。AH使用的包頭放在標準的IPv4和IPv6包頭和下一個高層協議幀(如TCP、UDP、ICMP等)之間。

AH協議通過在整個IP數據報中實施一個消息文摘計算來提供完整性和認證服務。一個消息文摘就是一個特定的單向數據函數,它能夠創建數據報的唯一的數字指紋。消息文摘算法的輸出結果放到AH包頭的認證數據(Authentication_Data)區。消息文摘5算法(MD5)是一個單向數學函數。當應用到分組數據中時,它將整個數據分割成若干個128比特的信息分組。每個128比特爲一組的信息是大分組數據的壓縮或摘要的表示。當以這種方式使用時,MD5只提供數字的完整性服務。一個消息文摘在被髮送之前和數據被接收到以後都可以根據一組數據計算出來。如果兩次計算出來的文摘值是一樣的,那麼分組數據在傳輸過程中就沒有被改變。這樣就防止了無意或惡意的竄改。在使用HMAC-MD5認證過的數據交換中,發送者使用以前交換過的密鑰來首次計算數據報的64比特分組的MD5文摘。從一系列的16比特中計算出來的文摘值被累加成一個值,然後放到AH包頭的認證數據區,隨後數據報被髮送給接收者。接收者也必須知道密鑰值,以便計算出正確的消息文摘並且將其與接收到的認證消息文摘進行適配。如果計算出的和接收到的文摘值相等,那麼數據報在發送過程中就沒有被改變,而且可以相信是由只知道祕密密鑰的另一方發送的。

2. 封包安全協議(ESP)包頭:

它提供IP數據報的完整性和可信性服務ESP協議是設計以兩種模式工作的:隧道(Tunneling)模式和傳輸(Transport)模式。兩者的區別在於IP數據報的ESP負載部分的內容不同。在隧道模式中,整個IP數據報都在ESP負載中進行封裝和加密。當這完成以後,真正的IP源地址和目的地址都可以被隱藏爲Internet發送的普通數據。這種模式的一種典型用法就是在防火牆-防火牆之間通過虛擬專用網的連接時進行的主機或拓撲隱藏。在傳輸模式中,只有更高層協議幀(TCP、UDP、ICMP等)被放到加密後的IP數據報的ESP負載部分。在這種模式中,源和目的IP地址以及所有的IP包頭域都是不加密發送的。

IPSec要求在所有的ESP實現中使用一個通用的缺省算法即DES-CBC算法。美國數據加密標準(DES)是一個現在使用得非常普遍的加密算法。它最早是在由美國政府公佈的,最初是用於商業應用。到現在所有DES專利的保護期都已經到期了,因此全球都有它的免費實現。IPSecESP標準要求所有的ESP實現支持密碼分組鏈方式(CBC)的DES作爲缺省的算法。DES-CBC通過對組成一個完整的IP數據包(隧道模式)或下一個更高的層協議幀(傳輸模式)的8比特數據分組中加入一個數據函數來工作。DES-CBC用8比特一組的加密數據(密文)來代替8比特一組的未加密數據(明文)。一個隨機的、8比特的初始化向量(IV)被用來加密第一個明文分組,以保證即使在明文信息開頭相同時也能保證加密信息的隨機性。DES-CBC主要是使用一個由通信各方共享的相同的密鑰。正因爲如此,它被認爲是一個對稱的密碼算法。接收方只有使用由發送者用來加密數據的密鑰才能對加密數據進行解密。因此,DES-CBC算法的有效性依賴於祕密密鑰的安全,ESP使用的DES-CBC的密鑰長度是56比特。

3. Internet 密鑰交換協議(IKE):

用於在兩個通信實體協商和建立安全相關,交換密鑰。安全相關(SecurityAssociation)是IPSec中的一個重要概念。一個安全相關表示兩個或多個通信實體之間經過了身份認證,且這些通信實體都能支持相同的加密算法,成功地交換了會話密鑰,可以開始利用 IPSec 進行安全通信。IPSec協議本身沒有提供在通信實體間建立安全相關的方法,利用 IKE建立安全相關。IKE定義了通信實體間進行身份認證、協商加密算法以及生成共享的會話密鑰的方法。IKE中身份認證採用共享密鑰和數字簽名兩種方式,密鑰交換採用 Diffie Hellman 協議。安全相關也可以通過手工方式建立,但是當 *** 中結點增多時,手工配置將非常困難。

由此,IPSec 提供了以下幾種網絡安全服務:

· 私有性 - IPsec 在傳輸數據包之前將其加密,以保證數據的私有性

· 完整性 - IPsec在目的地要驗證數據包,以保證該數據包在傳輸過程中沒有被替換

· 真實性 - IPsec 端要驗證所有受 IPsec 保護的數據包

· 反重複 -IPsec防止了數據包被撲捉並重新投放到網上,即目的地會拒絕老的或重複的數據包;它通過與 AH 或 ESP 一起工作的序列號實現

五 小結

***綜合了專用和公用網絡的優點,允許有多個站點的公司擁有一個假想的完全專有的網絡,而使用公用網絡作爲其站點之間交流的線路,它通過可靠的加密技術方法保證其安全性。I P s e c是***隧道協議中一個相當新的標準,是實現I n t e r n e t的I P協議級安全可靠的一種方法,必將成爲各個***產品所支持的業界標準。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章