IPsec:安全IP協議

安全問題始終是與互聯網相關的一個重要話題。由於IPv4的目的只是作爲簡單的網絡互聯協議,因此協議設計之初並沒有考慮安全性。如果IPv4協議僅僅用於研究或某些嚴格管理的專用網絡,那麼缺乏安全性並不是一個很嚴重的問題。但是,隨着互聯網的商業化,缺乏安全性導致的危險越來越嚴重。互聯網上已經發生了很多起諸如商業公司或政府機構網絡遭到攻擊、機密數據被竊取等事情。一般來說,安全性有如下三個公認的目標:

  身份認證:能夠可靠地確定接收到的數據與發送的數據一致,並且確保發送該數據的實體與其所宣稱的身份一致。

  完整性:能夠可靠地確定數據在從源到目的地傳送的過程中沒有被修改。

  保密性:確保數據只能爲預期的接收者使用或讀出,而不能爲其他任何實體使用或讀出。

  完整性和身份認證經常密切相關,而機密性有時使用公共密鑰加密來實現,這樣也有助於對源端進行身份認證。

  爲了加強互聯網的安全性,從1995年開始,IETF着手研究制定了一套用於保護IP通信的安全(IP Security,IPSec)協議。IPSec提供既可用於IPv4也可用於IPv6的安全性機制,它是IPv6的一個組成部分,也是IPv4的一個可選擴展協議。IPSec提供如下安全性服務:

  訪問控制:如果沒有正確的密碼就不能訪問一個服務或系統。可以調用安全性協議來控制密鑰的安全交換,用戶身份認證可以用於訪問控制。

  無連接的完整性:使用IPsec,有可能在不參照其他數據包的情況下,對任一單獨的IP包進行完整性校驗。此時每個數據包都是獨立的,可以通過自身來確認。此功能可以通過使用安全散列技術來完成,它與使用檢查數字類似,但可靠性更高,並且更不容易被未授權實體所篡改。

  數據源身份認證:通過數字簽名的方法對IP包內的數據來源進行標識。

  防禦包重發攻擊:作爲無連接協議,IP很容易受到重發攻擊的威脅。重發攻擊是指攻擊者發送一個目的主機已接收過的包,通過佔用接收系統的資源,使系統的可用性受到損害。爲此,IPsec提供了包計數器機制。

  保密:保密機制是通過使用加密算法來提供的。

  有限的業務流保密性:有時候只使用加密數據不足以保護系統,通過使用IP隧道方法,尤其是與安全性網關共同使用,IPsec提供了有限的業務流保密性。

  IPSec安全性服務完全通過AH和ESP頭相結合的機制來提供,當然還要有正確的相關密鑰管理協議。IPSec的認證包頭(Authentication Header,AH,RFC1826中描述)協議定義了認證的應用方法,封裝安全負載(Encapsulating Security Payload,ESP,RFC1827中描述)協議定義了加密和可選認證的應用方法。在實際進行IP通信時,可以根據安全需求同時使用這兩種協議或選擇使用其中的一種。如果一起使,AH應置於ESP頭之前,這樣,首先進行身份驗證,然後再對ESP頭負載解密。使用IPSec隧道時,這些擴展頭也可以嵌套。即源節點對IP包進行加密和數字簽名,然後發送給本地安全性網關,該網關則再次進行加密和數字簽名,然後發送給另一個安全性網關。

  在一個特定的IP通信中使用AH或ESP時,協議將與一組安全信息和服務發生關聯,稱爲安全性關聯(Security Association,SA)。安全性關聯SA是IPSec的基本概念,它是一個單向的邏輯連接,也就是說,兩個主機之間的認證通信將使用兩個SA,分別用於通信的發送方和接收方。每個SA由目的地址和安全性參數索引(Security Parameters Index,SPI)來定義。SPI是對RFC1825修改後的互聯網草案中所要求的標識符,它說明使用SA的IP頭類型。SPI爲32位,它可以包含認證算法、加密算法、用於認證和加密的密鑰以及密鑰的生存期。

  IPSec使用一種密鑰分配和交換協議如互聯網安全關聯和密鑰管理協議(Internet Security Association and Key Manageme nt Protocol,ISAKMP)來創建和維護SA。ISAKMP實際上是一個應用協議,協議中定義了用於系統之間協商密鑰交換的不同類型報文,它在傳輸層使用UDP。

  IPSec定義了兩種類型的SA:透明模式SA和隧道模式SA。透明模式SA是在IP包頭(以及任何可選的擴展包頭)之後和任何高層協議(如TCP或UDP)包頭之前插入AH或ESP包頭。爲了在互聯網上安全地通訊,兩個系統建立了SA。其中一個系統產生業務流,經過加密或者簽名,然後發送給目的系統。而在接收方,首先對收到的數據報進行解密或者身份認證,把負荷向上傳送給接收系統的網絡棧,由使用數據的應用進行最後的處理。兩個主機之間的通信如同沒有安全性頭一樣簡單,而且數據包實際的IP頭必須要暴露出來以便在互聯網上進行路由,因此這種方法稱爲使用SA的透明模式。

  隧道模式SA 是將整個原始的IP數據報放入一個新的IP數據報中。在採用隧道模式SA時,每一個IP數據報都有兩個IP包頭:外部IP包頭和內部 IP包頭。外部IP包頭指定將對IP數據報進行IPSec處理的目的地址,內部IP包頭指定原始IP數據報最終的目的地址。

  透明模式SA只能用於兩個主機之間的IP通信,而隧道模式SA既可以用於兩個主機之間的IP通信,還可以用於兩個安全網關之間或一個主機與一個安全網關之間的IP通信。
 

發佈了40 篇原創文章 · 獲贊 1 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章