IPsec入門篇講解(第一篇)

IPsec概述

 在Internet的傳輸中,絕大部分數據的內容都是明文傳輸的,這樣就會存在很多潛在的危險,比如:密碼、銀行帳戶的信息被竊取、篡改,用戶的身份被冒充,遭受網絡惡意***等。網絡中部署IPSec後,可對傳輸的數據進行保護處理,降低信息泄露的風險
 IPsec (Internet Protocol Security)是一個工業標準網絡安全協議(公有協議),它並不是一個單獨的協議,而是一系列爲IP網絡提供安全性的協議和服務的集合,爲IP網絡通信提供透明的安全服務,保護TCP/IP通信免遭竊聽和篡改,可以有效抵禦網絡***,同時保持易用性
 IPsec是一個公有協議 華爲 思科 華三都支持支持該協議
 IPsec是一個協議框架 不是單獨的一個協議
 IPsec可以使兩個公司之間在internet網絡傳輸數據時 保護數據安全性
 IPSec通過驗證頭AH(Authentication Header)和封裝安全載荷ESP(Encapsulating Security Payload)兩個安全協議實現IP報文的安全保護
 AH是報文頭驗證協議,主要提供數據源驗證、數據完整性驗證和防報文重放功能,不提供加密功能
 ESP是封裝安全載荷協議,主要提供加密、數據源驗證、數據完整性驗證和防報文重放功能
 AH和ESP都能夠提供數據源驗證和數據完整性驗證,使用的驗證算法爲MD5(Message Digest 5)、SHA1(Secure Hash Algorithm 1)、SHA2-256、SHA2-384和SHA2-512,以及SM3(Senior Middle 3)算法
 ESP還能夠對IP報文內容進行加密,使用的加密算法爲對稱加密算法,包括DES(Data Encryption Standard)、3DES(Triple Data Encryption Standard)、AES(Advanced Encryption Standard)、SM1、SM4
 MD5和SHA1驗證算法存在安全隱患,建議優先使用SHA2或SM3算法
 DES和3DES加密算法存在安全隱患,建議優先使用AES、SM1或SM4算法
IPsec入門篇講解(第一篇)
IPsec入門篇講解(第一篇)

加密

 加密是一種將數據按照某種算法從明文轉換成密文的過程,接收方只有在擁有正確的密鑰的情況下才能對密文進行解密,從而保證數據的機密性,防止數據在傳輸過程中被竊聽。IPSec工作過程中涉及數據加密和協議消息加密兩種加密情況
 常用的對稱加密算法包括
 數據加密標準DES(Data Encryption Standard)DES是由美國國家標準與技術研究院(NIST)開發的。它使用56位的密鑰對一個64位的明文塊進行加密
 3DES(Triple Data Encryption Standard)3DES是一種增強型的DES標準,它在需要保護的數據上使用3次DES,即使用三個不同的56位的DES密鑰(共168位密鑰)對明文進行加密 3DES與DES相比,3DES具有更高的安全性,但其加密數據的速度要比DES慢得多
 先進加密標準AES(Advanced Encryption Standard)AES被設計用來替代3DES,提供更快和更安全的加密功能。AES可以採用三種密鑰:AES-128、AES-192和AES-256,其密鑰長度分爲128位、192位、256位 隨着密鑰長度的提升,加密算法的保密及安全性要求越高,但計算速度也越慢。一般情況下128bit就可以充分滿足安全需求
 國密算法(SM1和SM4)國密算法是由國家密碼管理局編制的一種商用密碼分組標準對稱算法,國密算法的分組長度和密鑰長度都爲128bit 在安全級別要求較高的情況下,使用SM1或SM4國密算法可以充分滿足加密需求
 協議消息加密用於IKE協商階段。協議消息加密所用的算法也是DES、3DES、AES、SM1和SM4等對稱加密算法。用於加密的對稱密鑰通過IKE協議自動協商生成

驗證

 驗證指IP通信的接收方確認數據發送方的真實身份以及數據在傳輸過程中是否遭篡改。前者稱爲數據源驗證,後者稱爲數據完整性驗證,IPSec通過這兩種驗證保證數據真實可靠。數據源驗證和數據完整性驗證這兩種安全服務總是綁定在一起提供的
 雖然加密後的數據只能通過原始的加密密鑰進行解密,但是無法驗證解密後的信息是否是原始發送的信息。另外加密和解密的過程非常的消耗CPU,惡意用戶可能會通過發送欺騙數據包,佔用CPU資源。HMAC(Keyed-Hash Message Authentication Code)功能通過比較數字簽名進行數據包完整性和真實性驗證,這個過程消耗的CPU資源非常少,效率非常高。因此,IPSec採用HMAC功能進行驗證
 在IPSec發送方,加密和驗證通常配合使用。加密後的報文經HMAC生成數字簽名,IP報文和數字簽名同時發給對端(數字簽名填寫在AH和ESP報文頭的完整性校驗值ICV字段;在IPSec接收方,通過比較數字簽名進行數據完整性和真實性驗證,驗證不通過的報文直接丟棄,驗證通過的報文再進行解密。加密和HMAC驗證配合使用
IPsec入門篇講解(第一篇)
 常用的驗證算法包括
 MD5 消息摘要MD5(Message Digest 5)在RFC1321中有明文規定。輸入任意長度的消息,MD5產生128位的簽名 MD5比SHA更快,但是安全性稍差
 SHA1 安全散列算法SHA(Secure Hash Algorithm)是由NIST開發的。在1994年對原始的HMAC功能進行了修訂,被稱爲SHA1。SHA1在RFC2404中描述。輸入長度小於264bit的消息,SHA1產生160位的消息摘要 SHA1比MD5要慢,但是更安全。因爲它的簽名比較長,具有更強大的防攻破功能,並可以更有效的發現共享的密鑰
 SHA2 SHA2是SHA1的加強版本,SHA2算法相對於SHA1加密數據長度有所上升,安全性能要遠遠高於SHA1。SHA2算法包括SHA2-256、SHA2-384和SHA2-512,密鑰長度分別爲256位、384位和512位 隨着密鑰長度的上升,認證算法安全強度更高,但計算速度越慢。一般情況下256位就可以充分滿足安全需求
 SM3 國密算法SM3(Senior Middle 3)是國家密碼管理局編制的商用算法,用於密碼應用中的數字簽名和驗證、消息認證碼的生成與驗證以及隨機數的生成,可滿足多種密碼應用的安全需求

封裝協議

 IPSec使用認證頭AH(Authentication Header)和封裝安全載荷ESP(Encapsulating Security Payload)兩種安全協議來傳輸和封裝數據,提供認證或加密等安全服務(華爲默認的協議爲ESP協議)

ESP協議

 ESP是一種基於IP的網絡層協議,協議號爲50,其工作原理是在每一個數據包的標準IP報頭後面添加一個ESP報(ESP Header),並在數據包後面追加一個ESP尾(ESP Tail和ESP Auth data)。與AH不同是,ESP尾中ESP Auth data用於對數據提供來源認證和完整性校驗,並且ESP將數據中的有效載荷進行加密後再封裝到數據包中,以保證數據的機密性,但ESP沒有對IP頭的內容進行保護
 在IP源頭部後面插入ESP頭部,同時生成ESP的尾部
 加密部分: 對IP的負載進行加密
 認證部分: ESP頭部到ESP尾部 產生ESP認證數據放入ESP報文的尾部
IPsec入門篇講解(第一篇)
IPsec入門篇講解(第一篇)
 SPI:代表唯一的
 序列號:防止重放***
IPsec入門篇講解(第一篇)

AH協議

 AH是一種基於IP的傳輸層協議,協議號爲51 其工作原理是在每一個數據包的標準IP報頭後面添加一個AH報頭(AH Header)。AH對數據包和認證密鑰進行Hash計算,接收方收到帶有計算結果的數據包後,執行同樣的Hash計算並與原計算結果比較,傳輸過程中對數據的任何更改將使計算結果無效,這樣就提供了數據來源認證和數據完整性校驗
 注意: 對整個頭部進行驗證,包含源IP頭部
 ESP----負載安全協議 提供加密和驗證
 AH-----認證頭部 只能做認證 不提供加密
IPsec入門篇講解(第一篇)
IPsec入門篇講解(第一篇)
IPsec入門篇講解(第一篇)

ESP和AH協議對比

IPsec入門篇講解(第一篇)
 從表中可以看出兩個協議各有優缺點,AH協議不提供數據加密功能,ESP的驗證範圍不包括IP頭,故在安全性要求較高的場景中可以考慮聯合使用AH協議和ESP協議

封裝模式

 封裝模式是指將AH或ESP相關的字段插入到原始IP報文中,以實現對報文的認證和加密,封裝模式有傳輸模式和隧道模式兩種

傳輸模式

 在傳輸模式下,AH報頭 或ESP報頭被插入到IP頭之後但在傳輸層協議之前。傳輸模式保護原始數據包的有效負載
 Transport Mode 示意圖
IPsec入門篇講解(第一篇)

隧道模式

 在隧道模式下,AH報頭或ESP報頭插在原始IP頭之前,另外生成一個新IP頭(新IP頭爲對等體的IP地址)放到AH報頭或ESP報頭之前。隧道模式在兩臺主機端到端連接的情況下,隱藏了內網主機的IP地址,保護整個原始數據包的安全
 Tunnel Mode 示意圖
IPsec入門篇講解(第一篇)
 選擇隧道模式還是傳輸模式可從以下方面考慮
 從安全性來講,隧道模式優於傳輸模式。它可以完全地對原始IP數據包進行認證和加密,並且可以使用對等體的IP地址來隱藏客戶機的IP地址
 從性能來講,因爲隧道模式有一個額外的IP頭,所以它將比傳輸模式佔用更多帶寬

判斷使用傳輸模式還是隧道的方法

隧道模式判斷方式

  1. 通信點不等於加密點
  2. 通信點到公網能不能被路由,如果不能被路由,就隧道模式
    IPsec入門篇講解(第一篇)
    IPsec入門篇講解(第一篇)

    傳輸模式判斷方式

  3. 通信點等於加密點
  4. 通信點到公網能不能被路由,如果能被路由,就傳輸模式
    IPsec入門篇講解(第一篇)

    有效期---協商

    雙方會協商一個較小的有效期

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章