Linux下的IP隧道研究(1)

來源:互聯網
上載者:User
由於網路的日益普及,網路的安全成為目前的熱門話題。本文對隧道技術的分析,就側重安全領域,對利用隧道技術實現Linux下的虛擬專網提出建議。

VPN在表面上是一種連網的方式,比起專線網路來,它具有許多優點。在VPN中,通過採用一種所謂"隧道"的技術,可以通過公用路由網路傳送資料分組,例如Internet網或其他商業性網路。

這裡,專有的"隧道"類似於點到點的串連。這種方式能夠使得來自許多源的網路流量從同一個基礎設施中通過分開的隧道。這種隧道技術使用點對點通訊協定代替了交換串連,通過路由網路來串連資料地址。隧道技術允許授權移動使用者或已授權的使用者在任何時間任何地點訪問商業網路。

通過TUNNEL的建立,可實現以下功能:

將資料流量強制到特定的目的地
隱藏私人的網路地址
在IP網上傳輸非IP協議資料包
提供資料安全支援
協助完成使用者基於AAA的管理。
隧道技術基礎
隧道技術是一種通過使用互連網絡的基礎設施在網路之間傳遞資料的方式。使用隧道傳遞的資料(或負載)可以是不同協議的資料楨(此字不正確)或包。隧道協議將這些其它協議的資料楨或包重新封裝在新的包頭中發送。新的包頭提供了路由資訊,從而使封裝的負載資料能夠通過互連網絡傳遞。

被封裝的資料包在隧道的兩個端點之間通過公用互連網絡進行路由。被封裝的資料包在公用互連網絡上傳遞時所經過的邏輯路徑稱為隧道。一旦到達網路終點,資料將被解包並轉寄到最終目的地。注意隧道技術是指包括資料封裝,傳輸和解包在內的全過程。

隧道所使用的傳輸網路可以是任何類型的公用互連網絡,本文主要以目前普遍使用Internet為例進行說明。此外,在商業網路同樣可以建立隧道。隧道技術在經過一段時間的發展和完善之後,目前較為成熟的技術包括:

1. IP網路上的SNA隧道技術

當SNA的資料流通過企業IP網路傳送時,SNA資料楨將被封裝在UDP和IP協議包頭中。

2. IP網路上的NovellNetWareIPX隧道技術

當一個IPX資料包被發送到NetWare伺服器或IPX路由器時,伺服器或路由器用UDP和IP包頭封裝IPX資料包後通過IP網路發送。另一端的IP-TO-IPX路由器在去除UDP和IP包頭之後,把資料包轉寄到IPX目的地。

近幾年不斷出現了一些新的隧道技術,本文將主要介紹這些新技術。具體包括:

1. 點對點通道通訊協定(PPTP)

PPTP協議允許對IP,IPX或NetBEUI資料流進行加密,然後封裝在IP包頭中通過企業IP網路或公用互連網絡發送。

2. 第2層隧道協議(L2TP)

L2TP協議允許對IP,IPX或NetBEUI資料流進行加密,然後通過支援點對點資料報傳遞的任意網路發送,如IP,X.25,楨中繼或ATM。

3.安全IP(IPSec)隧道模式

IPSec隧道模式允許對IP負載資料進行加密,然後封裝在IP包頭中通過企業IP網路或公用IP互連網絡如Internet發送。

隧道協議
為建立隧道,隧道的客戶機和伺服器雙方必須使用相同的隧道協議。

隧道技術可以分別以第2層或第3層隧道協議為基礎。上述分層按照開放系統互聯(OSI)的參考模型劃分。第2層隧道協議對應OSI模型中的資料連結層,使用楨作為資料交換單位。PPTP,L2TP和L2F(第2層轉寄)都屬於第2層隧道協議,都是將資料封裝在點對點通訊協定 (PPP)(PPP)楨中通過互連網絡發送。第3層隧道協議對應OSI模型中的網路層,使用包作為資料交換單位。IP overIP以及IPSec隧道模式都屬於第3層隧道協議,都是將IP包封裝在附加的IP包頭中通過IP網路傳送。

提供PPTP客戶機和PPTP伺服器之間的加密通訊。PPTP客戶機是指運行了該協議的PC機,如啟動該協議的Windows95/98;PPTP伺服器是指運行該協議的伺服器,如啟動該協議的WindowsNT伺服器。PPTP是PPP協議的一種擴充。它提供了一種在互連網上建立多協議的安全虛擬私人網路(VPN)的通訊方式。遠端使用者能夠透過任何支援PPTP的ISP訪問公司的專用網。

通過PPTP,客戶可採用撥號方式接入公用IP網。撥號使用者首先按常規方式撥到ISP的接入伺服器(NAS),建立PPP串連;在此基礎上,使用者進行二次撥號建立到PPTP伺服器的串連,該串連稱為PPTP隧道,實質上是基於IP協議的另一個PPP串連,其中的IP包可以封裝多種協議資料,包括TCP/IP、IPX和NetBEUI。PPTP採用了基於RSA公司RC4的資料加密方法,保證了虛擬串連通道的安全。對於直接連到互連網的使用者則不需要PPP的撥號連線,可以直接與PPTP伺服器建立虛擬通道。PPTP把建立隧道的主動權交給了使用者,但使用者需要在其PC機上配置PPTP,這樣做既增加了使用者的工作量,又會給網路帶來隱患。另外,PPTP只支援IP作為傳輸協議。

第2層轉寄(L2F)
L2F是Cisco公司提出隧道技術,作為一種傳輸協議L2F支援撥號接入伺服器將撥號資料流封裝在PPP楨內通過廣域網路鏈路傳送到L2F伺服器(路由器)。L2F伺服器把資料包解包之重新注入(inject)網路。與PPTP和L2TP不同,L2F沒有確定的客戶方。應當注意L2F只在強制隧道中有效。(自願和強制隧道的介紹參看“隧道類型”)。

第2層隧道協議(L2TP)
L2TP隧道協議是典型的被動式隧道協議,它結合了L2F和PPTP的優點,可以讓使用者從用戶端或訪問伺服器端發起VPN串連。L2TP是把鏈路層PPP幀封裝在公用網路設施如IP、ATM、框架轉送中進行隧道傳輸的封裝協議。

L2TP主要由LAC(L2TP Access Concentrator) 和LNS(L2TP Network Server) 構成,LAC支援用戶端的L2TP,用於發起呼叫、接收呼叫和建立隧道;LNS是所有隧道的終點,LNS終止所有的PPP流。在傳統的PPP串連中,使用者撥號連線的終點是LAC,L2TP使得PPP協議的終點延伸到LNS。

L2TP的好處在於支援多種協議,使用者可以保留原有的IPX、Appletalk等協議或公司原有的IP地址。L2TP還解決了多個PPP鏈路的捆綁問題,PPP鏈路捆綁要求其成員均指向同一個NAS(Network Access Server),L2TP可以使物理上串連到不同NAS的PPP鏈路,在邏輯上的終結點為同一個物理裝置。L2TP還支援通道認證,並提供了差錯和流量控制。

L2TP利用IPsec增強了安全性,支援資料包的認證、加密和密鑰管理。L2TP/IPSec因此能為遠端使用者提供設計精巧並有互通性的安全隧道串連。這對安全的遠端存取和安全的網關之間串連來說,它是一個很好的解決方案。因此,安全的VPN需要同時解決好L2TP和IPSec這兩個不同的問題。L2TP協議解決了穿過IP網路的不同使用者協議的轉換問題;IPSec協議(加密/解密協議)解決了通過公用網路傳輸資訊的保密問題。

IP網上的L2TP使用UDP和一系列的L2TP訊息對隧道進行維護。L2TP同樣使用UDP將L2TP協議封裝的PPP楨通過隧道發送。可以對封裝PPP楨中的負載資料進行加密或壓縮。 PPTP與L2TP

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

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

PPTP只能在兩端點間建立單一隧道。L2TP支援在兩端點間使用多隧道。使用L2TP,使用者可以針對不同的服務品質建立不同的隧道。

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

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

IPSec隧道模式
IPSec在IP層上對資料包進行高強度的安全處理,提供資料來源地驗證、無串連資料完整性、資料機密性、抗重播和有限業務流機密性等安全服務。各種應用程式可以享用IP層提供的安全服務和密鑰管理,而不必設計和實現自己的安全機制,因此減少密鑰協商的開銷,也降低了產生安全性漏洞的可能性。IPSec可連續或遞迴應用,在路由器、防火牆、主機和通訊鏈路上配置,實現端到端安全、Virtual Private Cloud(VPN)和安全隧道技術。

IPSEC是第3層的協議標準,支援IP網路上資料的安全傳輸。本文將在“進階安全”一部分中對IPSEC進行詳細的總體介紹,此處僅結合隧道協議討論IPSEC協議的一個方面。除了對IP資料流的加密機制進行了規定之外,IPSEC還制定了IPoverIP隧道模式的資料包格式,一般被稱作IPSEC隧道模式。一個IPSEC隧道由一個隧道客戶和通道伺服器組成,兩端都配置使用IPSEC隧道技術,採用協商加密機制。

為實現在專用或公用IP網路上的安全傳輸,IPSEC隧道模式使用的安全方式封裝和加密整個IP包。然後對加密的負載再次封裝在明文IP包頭內通過網路發送到通道伺服器端。通道伺服器對收到的資料報進行處理,在去除明文IP包頭,對內容進行解密之後,獲的最初的負載IP包。負載IP包在經過正常處理之後被路由到位於目標網路的目的地。

IPSEC隧道模式具有以下功能和局限:
只能支援IP資料流
工作在IP棧(IPstack)的底層,因此,應用程式和高層協議可以繼承IPSEC的行為。
由一個安全性原則(一整套過濾機制)進行控制。安全性原則按照優先順序的先後順序建立可供使用的加密和隧道機制以及驗證方式。當需要建立通訊時,雙方機器執行相互驗證,然後協商使用何種加密方式。此後的所有資料流都將使用雙方協商的加密機制進行加密,然後封裝在隧道包頭內。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.