互聯(lián)網(wǎng)協(xié)議以TCP/IP最為人們所熟知,大多數(shù)通信協(xié)議(如TCP、 UDP、 ICMP、 IGMP 等)皆是以IP報文來傳送。而IP報文本身沒有集成任何安全特性,也就是說,IP數(shù)據(jù)包在公共網(wǎng)絡(luò)中傳輸可能會面臨被偽造、竊取或篡改的風險。
由此可見,利用IP協(xié)議來傳輸資料是非常不可靠的,IPsec協(xié)議可以解決Internet網(wǎng)絡(luò)傳輸不安全的問題。本文將介紹IPsec協(xié)議的基本概念、工作原理和應(yīng)用場景,幫助初學者更好地全面了解IPsec協(xié)議及其在網(wǎng)絡(luò)安全中的作用。
IPsec(IP Security)協(xié)議定義了 IP 網(wǎng)絡(luò)流量安全服務(wù)的體系結(jié)構(gòu),并在 IP 層提供安全性的框架,提供數(shù)據(jù)驗證、數(shù)據(jù)完整性和機密性。通信雙方通過IPsec建立一條IPsec隧道,IP數(shù)據(jù)包通過IPsec隧道進行加密傳輸,有效保證了數(shù)據(jù)在不安全的網(wǎng)絡(luò)環(huán)境中傳輸?shù)陌踩浴?br />
| IPsec應(yīng)用(資料來源:Stallings 2011)
IPsec簡史
80 年代初,Internet 協(xié)議開發(fā)時,安全性在優(yōu)先級列表中等級并不高。然而,隨著互聯(lián)網(wǎng)用戶數(shù)量的持續(xù)增長,網(wǎng)絡(luò)需要更高的安全性。1993年12月,John Ioannidis等人在哥倫比亞大學和AT&T貝爾實驗室研究了軟件IP加密協(xié)議swIPe協(xié)議。
1994 年 7 月,Trusted Information Systems(TIS)的科學家徐崇偉繼續(xù)這項研究,增強了 IP 協(xié)議,提出了一些關(guān)鍵性的想法和方案,例如基于IKE(Internet Key Exchange)協(xié)議的密鑰交換機制等,這些方案和想法為IPsec協(xié)議的發(fā)展奠定了基礎(chǔ)。IPsec由IETF在一系列針對各種組件和擴展的征求意見文檔中正式標準化。
1995年,IETF推出了第一版IPsec協(xié)議,主要用于IPv6。1998年,IETF發(fā)布了第二版IPsec協(xié)議,主要用于IPv4。第二版IPsec協(xié)議簡化了協(xié)議的實現(xiàn),增加了更多的加密和身份驗證算法,提高了安全性。2005年,IETF發(fā)布了第三版IPsec協(xié)議,第三版IPsec協(xié)議引入了新的加密算法,例如AES和SHA-256,提高了安全性和性能。
| IPsec 架構(gòu)(資料來源:Worthman 2015)
IPsec 體系架構(gòu)的關(guān)鍵組件包括:
>安全關(guān)聯(lián) ( SA ):指定通信主機可識別的安全屬性。主機需要兩個SA才能安全通信,每個方向一個。在傳輸受保護的數(shù)據(jù)包之前,雙方就具體的安全保護措施、加密算法、要應(yīng)用的密鑰和要保護的具體流量類型達成一致。
>IPsec 協(xié)議: AH(身份驗證標頭)和ESP(封裝安全載荷)協(xié)議用于身份驗證。它們包含數(shù)據(jù)源證明、數(shù)據(jù)完整性和反重放保護。第三個協(xié)議IKE(Internet 密鑰交換)是一種混合協(xié)議,用于在實際數(shù)據(jù)傳輸開始之前進行對等身份驗證和密鑰交換過程。
>IPsec 模式:兩種協(xié)議(AH和ESP)都支持傳輸模式和隧道模式。
IPsec 的主要安全協(xié)議
構(gòu)成 IPsec 的三個主要協(xié)議是:AH (身份驗證標頭)、ESP(封裝安全載荷) 和IKE (互聯(lián)網(wǎng)密鑰交換)。
>身份驗證標頭 ( AH ):AH是一個擴展標頭,用于提供數(shù)據(jù)完整性、身份驗證和防重放,但不提供加密。反重放保護可確保部分序列完整性,防止未經(jīng)授權(quán)的數(shù)據(jù)包傳輸。AH不提供數(shù)據(jù)機密性。
| IP包頭
>封裝安全載荷( ESP ):ESP由封裝的標頭和尾部組成,提供機密性、數(shù)據(jù)源身份驗證、無連接完整性、抗重放服務(wù)(部分序列完整性的一種形式)和有限的流量機密性。
>Internet 密鑰交換 ( IKE ):IETF特定的密鑰管理協(xié)議,用于交換和協(xié)商安全策略。支持手動或動態(tài)關(guān)聯(lián)密鑰管理。也可以在 IPsec 之外使用。
| AH和ESP包結(jié)構(gòu)(資料來源:Kosem 2018)
IPsec 隧道模式與傳輸模式
對于身份驗證,AH和ESP都支持兩種使用模式:傳輸模式和隧道模式。驗證可以應(yīng)用于除IP報頭之外的數(shù)據(jù)包內(nèi)容(傳輸模式)或整個原始數(shù)據(jù)包(隧道模式)。
傳輸模式
傳輸模式涵蓋大部分原始數(shù)據(jù)包,用于端到端通信(例如客戶端和服務(wù)器之間的通信)。該模式不改變IP報頭,只是將IP協(xié)議字段改為51(AH)或50(ESP),重新計算IP報頭的校驗和。
使用傳輸模式時,IPsec 僅加密 IP 負載,不加密IP 報頭。除非使用單獨的隧道協(xié)議(例如 GRE),否則中間路由器能夠看到每個數(shù)據(jù)包的最終目的地。因此,這種模式最適合主機到主機架構(gòu)的實現(xiàn),因為可以在兩個端點之間進行直接通信,并且不必更改 IP 報頭中的 IP 地址。傳輸模式通過 AH 或 ESP 標頭提供對 IP 負載的保護。
| 傳輸模式下的 IPsec ESP 封裝
優(yōu)點:提供端到端加密;與隧道模式相比開銷最??;更大的MTU(最大傳輸單元)。
缺點:要求在入侵防御系統(tǒng) (IPS) 實體上實施 IPsec;NAT穿越難度更大(TCP checksum invalidation)。
隧道模式
隧道模式覆蓋整個原始數(shù)據(jù)包,在該模式下,AH 或 ESP在封裝數(shù)據(jù)包時會創(chuàng)建一個新的 IP 報頭,原始IP報頭被隱藏,新的 IP 報頭包含所涉及端點的源和目標 IP 地址。這種模式可用于VPN網(wǎng)關(guān)之間或主機與VPN網(wǎng)關(guān)之間的通信。
| 隧道模式下的 IPsec ESP 封裝
優(yōu)點:與現(xiàn)有的 VPN 網(wǎng)關(guān)更兼容;無需在 IPS 實體上實施 IPsec;更容易穿越NAT。
缺點;更多開銷;較小的MTU 。
例如,給定一個 OSI 網(wǎng)絡(luò)模型,傳輸模式將加密傳輸層及以上的所有內(nèi)容。使用隧道模式,網(wǎng)絡(luò)層及以上的所有內(nèi)容都將被加密。
IPsec是如何工作的?
IPsec的工作原理大致可以分為5個階段:識別“感興趣流”啟動 IPsec 進程;IKE階段1;IKE階段2;數(shù)據(jù)傳輸;IPSec 隧道終止。
>第 1 步:識別“感興趣流”
網(wǎng)絡(luò)設(shè)備接收到報文后,通常會將報文的五元組等信息和IPsec策略進行匹配來判斷報文是否需要保護。需要通過IPsec隧道傳輸?shù)牧髁客ǔ1环Q為“感興趣流”。
?
>第 2 步:IKE 階段 1
IKE全稱Internet Key Exchange,IKE 階段 1 的基本目的是驗證 IPsec 對等體,并在它們之間建立安全通道以啟用 IKE 交換。IKE 階段 1 執(zhí)行以下功能:
驗證和保護 IPsec 對等體的身份
在對等點之間協(xié)商匹配的 IKE SA 策略以保護 IKE 交換
執(zhí)行經(jīng)過身份驗證的 Diffie-Hellman 交換,最終結(jié)果是具有匹配的共享密鑰
設(shè)置安全隧道以協(xié)商 IKE 階段 2 參數(shù)
SA是通信雙方對某些協(xié)商要素的約定,比如雙方使用的安全協(xié)議、數(shù)據(jù)傳輸采用的封裝模式、協(xié)議采用的加密和驗證算法、用于數(shù)據(jù)傳輸?shù)拿荑€等,通信雙方之間只有建立了SA,才能進行安全的數(shù)據(jù)傳輸。
>第 3 步:IKE 階段 2
IKE 階段 2 的目的是協(xié)商 IPsec SA 以建立 IPsec 隧道。IKE 階段 2 執(zhí)行以下功能:
協(xié)商受現(xiàn)有 IKE SA 保護的 IPsec SA 參數(shù)
建立 IPsec 安全聯(lián)盟
定期重新協(xié)商 IPsec SA 以確保安全
可選擇執(zhí)行額外的 Diffie-Hellman 交換
IKE 階段 2 有一種模式,稱為快速模式。快速模式發(fā)生在 IKE 階段1建立安全隧道之后。它協(xié)商共享 IPsec 策略,派生用于 IPsec 安全算法的共享密鑰材料,并建立 IPsec SA??焖倌J竭€用于在 IPsec SA 生存期到期時重新協(xié)商新的 IPsec SA。
>第 4 步:IPsec 加密隧道
IKE 階段 2 完成并且快速模式已建立 IPsec SA 后,就可以通過 IPsec 隧道交換信息。使用 IPsec SA 中指定的加密對數(shù)據(jù)包進行加密和解密。
加密機制保證了數(shù)據(jù)的機密性,防止數(shù)據(jù)在傳輸過程中被竊??;驗證機制保證了數(shù)據(jù)的真實可靠,防止數(shù)據(jù)在傳輸過程中被仿冒和篡改。加密驗證過程如下圖所示。
| IPsec加密驗證過程
>第 5 步:隧道終止
刪除或超時會導致 IPsec SA 終止,發(fā)生這種情況時,密鑰將被丟棄,并再次執(zhí)行 IKE 階段2以生成新的 SA 和密鑰。如有必要,還會執(zhí)行新的階段1協(xié)商。成功的協(xié)商會產(chǎn)生新的 SA 和新的密鑰。但可以在舊的 SA 到期之前建立新的 SA,以保持流量的連續(xù)性。
通常情況下,通信雙方之間的會話老化(連接斷開)即代表通信雙方數(shù)據(jù)交換已經(jīng)完成,因此為了節(jié)省系統(tǒng)資源,通信雙方之間的隧道在空閑時間達到一定值后會自動刪除。
IPsec 的實現(xiàn)在 IPv4 和 IPv6 之間有何不同?
IPsec 是為IPv6開發(fā)的,然后追溯添加到 IPv4 中。在IPv6標準中,它是一個強制特性,而在IPv4中,它是可選的,必須得到外部支持。
按照設(shè)計,IPv6 更安全,可以免受IP地址掃描攻擊,因為它的地址空間很大。因此,網(wǎng)絡(luò)中的IP掃描技術(shù)可能無法找到存在安全漏洞的計算機。
IPv4 下的 IPsec 被廣泛應(yīng)用于VPN,在網(wǎng)絡(luò)邊緣終止。在 IPv4 中,IPsec 通常不用于保護端到端流量,因為 IPv4 廣泛使用NAT網(wǎng)絡(luò)地址轉(zhuǎn)換。NAT會破壞 IPv4 標頭并破壞 IPsec。而IPv6 中不存在此限制,因此使用IPsec端到端變得更加實用。
| IPv4 和 IPv6 的安全特性比較(資料來源:霍夫曼 2021)
IPsec VPN
顧名思義,IPsec VPN 是利用 IPsec 協(xié)議確保安全的VPN 。IPsec VPN 使用加密算法來提供機密性、身份驗證和數(shù)據(jù)完整性,并使用計數(shù)器和數(shù)字排序來檢測重放的數(shù)據(jù)包??梢允褂靡韵?VPN架構(gòu)實施 IPsec VPN :
點到點
點到點 VPN指通過IPsec VPN網(wǎng)關(guān)連接兩個或兩個以上的網(wǎng)絡(luò)(或多個站點)。每個網(wǎng)絡(luò)應(yīng)該有一個 VPN 網(wǎng)關(guān),網(wǎng)關(guān)可以是支持 IPsec VPN 的路由器或防火墻,也可以是專門為 IPsec VPN 操作設(shè)計的單獨設(shè)備。通常使用點到點 VPN 在中央機構(gòu)和分支機構(gòu)之間或兩個不同的公司之間建立私有通信和數(shù)據(jù)交換。
| 站點到站點 IPsec VPN
遠程訪問
遠程訪問VPN 使用戶能夠從 VPN 客戶端連接到中央位置(例如數(shù)據(jù)中心),并訪問那里托管的資源。這種類型的 VPN 在需要支持遠程工作人員的公司中特別有用。如果有多個設(shè)備需要連接到 VPN 網(wǎng)關(guān),那么每個設(shè)備上都必須有一個 VPN 客戶端。
| 遠程訪問或客戶端到站點 IPsec VPN
主機到主機
當 IT 管理員想要在遠程服務(wù)器上執(zhí)行某些任務(wù)時,服務(wù)器本身提供 VPN 服務(wù),IT 管理員的設(shè)備充當VPN 客戶端。
| 主機到主機 IPsec VPN
IPsec 與在不同OSI層的其他安全技術(shù)相比如何?
網(wǎng)絡(luò)服務(wù)器系統(tǒng)通過支持各種加密的網(wǎng)絡(luò)安全協(xié)議來保護網(wǎng)絡(luò)中的數(shù)據(jù),這些協(xié)議的主要區(qū)別在于:
IPsec:支持網(wǎng)絡(luò)級對等體和數(shù)據(jù)源身份驗證、數(shù)據(jù)完整性、數(shù)據(jù)加密和保護。
SSL(安全套接字層):不像 IPsec 那樣需要預(yù)共享密鑰,使用公鑰加密來協(xié)商握手并安全交換加密密鑰??捎糜诶@過防火墻和基于端口的流量阻塞。
TLS(傳輸層安全):基于服務(wù)器和客戶端協(xié)商的密碼套件的加密算法。使用SSL協(xié)議。
HTTPS:使用TLS建立加密鏈接。瀏覽器和網(wǎng)絡(luò)服務(wù)器之間的數(shù)據(jù)傳輸被加密,防止網(wǎng)絡(luò)罪犯讀取或更改數(shù)據(jù)。
SNMP(簡單網(wǎng)絡(luò)管理協(xié)議):基于用戶的安全模型 ( USM ),根據(jù)訪問托管信息的用戶提供不同級別的安全性。使用身份驗證和數(shù)據(jù)加密來保護隱私。
OSPF(開放最短路徑優(yōu)先)認證:動態(tài)路由協(xié)議。支持消息認證和OSPF路由消息的完整性。未經(jīng)授權(quán)的IP資源無法在不被檢測到的情況下向網(wǎng)絡(luò)注入消息。確保OSPF路由網(wǎng)絡(luò)中路由表的完整性。
| IPsec 與SSL(資料來源:Loshin 2019)
IPsec 有什么缺點?
過度依賴公鑰:如果網(wǎng)絡(luò)的密鑰管理不善或密鑰的完整性受到損害,那么 IPsec 安全因素就會丟失。
性能開銷:CPU使用率高,因為所有通過服務(wù)器的數(shù)據(jù)都必須加密和解密,網(wǎng)絡(luò)性能會因 IPsec 開銷較大而受到影響??赡苄枰褂糜布O(shè)備,例如VPN集中器。
廣泛的權(quán)限訪問范圍:在基于 IPsec 的網(wǎng)絡(luò)中,對單個設(shè)備的訪問權(quán)限也可以為其他設(shè)備提供訪問權(quán)限。因此,如果家庭網(wǎng)絡(luò)中的任何設(shè)備受到威脅,它可能會影響從家庭網(wǎng)絡(luò)(通過 IPsec 隧道)連接的公司網(wǎng)絡(luò)。
實現(xiàn)復(fù)雜性:IPsec 包含了很多選項和高度的靈活性,這使得它很受歡迎,但相應(yīng)也增加了復(fù)雜性。
網(wǎng)絡(luò)兼容性問題:當連接到基于 IPsec 的VPN時,由于防火墻的限制,無法連接到另一個網(wǎng)絡(luò)。此外,IPsec 不提供對多協(xié)議和IP多播流量的支持。
IPSec 的未來
IPsec在IP層上實現(xiàn)了加密、認證、訪問控制等多種安全技術(shù),極大地提高了TCP/IP協(xié)議的安全性,在過去的幾十年中,得到了廣泛的應(yīng)用。但是隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,它的未來也存在一些挑戰(zhàn)和變化。
IPsec需要更好地支持多種平臺和設(shè)備,并提供更靈活的安全解決方案。此外,IPsec可能需要提供更輕量級的安全方案,并具備更高效、更靈活的身份認證和密鑰管理機制。
總之,IPsec在未來仍將繼續(xù)發(fā)展和改進,并不斷適應(yīng)新的安全需求和技術(shù)發(fā)展。未來的IPsec可能會更加靈活、高效和安全,并且能夠應(yīng)對新的安全挑戰(zhàn)。
審核編輯:劉清
-
ESP
+關(guān)注
關(guān)注
0文章
183瀏覽量
33954 -
VPN技術(shù)
+關(guān)注
關(guān)注
0文章
16瀏覽量
6951 -
TCPIP協(xié)議
+關(guān)注
關(guān)注
0文章
35瀏覽量
11940 -
GRE
+關(guān)注
關(guān)注
0文章
19瀏覽量
8577
原文標題:圖解IPsec:剖析IP網(wǎng)絡(luò)加密安全技術(shù)
文章出處:【微信號:SDNLAB,微信公眾號:SDNLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論