h3c ×××安全協議之IPsec

IPSec協議簡介 算法

  IPSec協議是一系列網絡安全協議的總稱,它是由IETF(Internet Engineering Task  安全

Force,Internet工程任務組)開發的,可爲通信雙方提供訪問控制、無鏈接的完整性、數據來源認證、反重放、加密以及對數據流分類加密等服務。IPSec 協議不是一個單獨的協議,它給出了 IP 網絡上數據安全的一整套體系結構。包括AH(Authentication Header)、ESP(Encapsulating Security Payload )、IKE (Internet Key Exchange )等協議。GRE和IPSec 主要用於實現專線 ×××業務。IPSec 是網絡層的安全機制。經過對網絡層包信息的保護,上層應用程序即便沒有實現安全性,也可以自動從網絡層提供的安全性中獲益。這打消了人們對×××(Virtual Private Network,虛擬專用網絡)安全性的顧慮,使得×××得以普遍應用。IPSec是一個用於保證經過IP網絡進行安全(保密性、完整性、真實性)的祕密通訊的開放式標準框架IPSec實現了網絡層的加密和認證,在網絡體系結構中提供了一種端到端的安全解決方案IPSec加密的數據包能夠經過任何IP網絡,而不須要對中間的網絡互聯設備作任何的改變須要知道加密的唯一設備是端點,大大下降了實現和管理的成本 網絡

IPSec提供的服務 架構

 1)認證:報文認證,肯定接收的數據與發送的數據是否一致,同時肯定發送者是否真實 框架

 2)數據完整性驗證:保證數據傳送過程沒有被修改 ide

 3)保密:使相應的接收者能獲取發送的真正的內容,無關接收者沒法獲知 函數

IPSec提供的三種保護形式: 測試

  1)認證頭(Authentication Header,AH) 加密

提供數據源認證無鏈接的數據完整性服務 spa

   2)封裝安全載荷(Encapsulating Security Payload,ESP)

提供數據源認證無鏈接的數據完整性服務

無鏈接的數據保密服務:合法的接收端可以真正看到IP包中的數據AH和ESP是一套協議的兩個不一樣機制,可單獨使用,也可組合使用,以知足不一樣的安全要求AH和ESP可工做於兩種模式:傳輸模式和隧道模式

  3)互聯網密鑰管理協議(IKMP)

IPSec對報文的處理過程

IPSec對報文的處理過程以下(以AH協議爲例):

(1)  對報文添加認證頭:從IPSec隊列中讀出IP模塊送來的IP報文,根據配置選擇的協議模式(傳輸或是隧道模式)對報文添加AH頭,再由IP層轉發。

(2)  對報文進行認證後解去認證頭:IP層收到IP報文經解析是本機地址,而且協議號爲51,則查找相應的協議開關表項,調用相應的輸入處理函數。此處理函數對報文進行認證和原來的認證值比較,若相等則去掉添加的AH頭,還原出原始的IP報文再調用IP輸入流程進行處理;不然此報文被丟棄。

與IPSec相關的幾個術語

1)數據流:在IPSec中,一組具備相同源地址/掩碼、目的地址/掩碼和上層協議的數據集稱爲數據流。一般,一個數據流採用一個訪問控制列表(acl)來定義,全部爲ACL容許經過的報文在邏輯上做爲一個數據流。爲更容易理解,數據流能夠比做是主機之間一個的TCP鏈接。IPSec 可以對不一樣的數據流施加不一樣的安全保護,例如對不一樣的數據流使用不一樣的安全協議、算法或密鑰。

2) 安全策略:由用戶手工配置,規定對什麼樣的數據流採用什麼樣的安全措施。對數據流的定義是經過在一個訪問控制列表中配置多條規則來實現,在安全策略中引用這個訪問控制列表來肯定須要進行保護的數據流。一條安全策略由「名字」和「順序號」共同惟一肯定。

3) 安全策略組:全部具備相同名字的安全策略的集合。在一個接口上,可應用或者取消一個安全策略組,使安全策略組中的多條安全策略同時應用在這個接口上,從而實現對不一樣的數據流進行不一樣的安全保護。在同一個安全策略組中,順序號越小的安全策略,優先級越高。

4)安全聯盟(Security Association,簡稱SA):IPSec對數據流提供的安全服務經過安全聯盟SA來實現,它包括協議、算法、密鑰等內容,具體肯定了如何對IP報文進行處理。一個SA就是兩個IPSec系統之間的一個單向邏輯鏈接,輸入數據流和輸出數據流由輸入安全聯盟與輸出安全聯盟分別處理。安全聯盟由一個三元組(安全參數索引(SPI)、IP 目的地址、安全協議號(AH或ESP))來惟一標識。安全聯盟可經過手工配置和自動協商兩種方式創建。手工創建安全聯盟的方式是指用戶經過在兩端手工設置一些參數,而後在接口上應用安全策略創建安全聯盟。自動協商方式由IKE生成和維護,通訊雙方基於各自的安全策略庫通過匹配和協商,最終創建安全聯盟而不須要用戶的干預。

5)安全聯盟超時處理:安全聯盟更新時間有「計時間」(即每隔定長的時間進行更新)和「計流量」(即每傳輸必定字節數量的信息就進行更新)兩種方式。

6) 安全參數索引(SPI):是一個32比特的數值,在每個IPSec 報文中都攜帶該值。SPI、IP目的地址、安全協議號三者結合起來共同構成三元組,來惟一標識一個特定的安全聯盟。在手工配置安全聯盟時,須要手工指定SPI的取值。爲保證安全聯盟的惟一性,每一個安全聯盟須要指定不一樣的SPI值;使用IKE協商產生安全聯盟時,SPI將隨機生成。

7)安全提議:包括安全協議、安全協議使用的算法、安全協議對報文的封裝形式,規定了把普通的IP報文轉換成IPSec報文的方式。在安全策略中,經過引用一個安全提議來規定該安全策略採用的協議、算法等。

安全協議數據封裝格式:

IPsec ××× 應用

IPSec ×××的應用場景分爲3種:

1. Site-to-Site(站點到站點或者網關到網關):如彎曲評論的3個機構分佈在互聯網的3個不一樣的地方,各使用一個商務領航網關相互創建×××隧道,企業內網(若干PC)之間的數據經過這些網關創建的IPSec隧道實現安全互聯。

2. End-to-End(端到端或者PC到PC): 兩個PC之間的通訊由兩個PC之間的IPSec會話保護,而不是網關。

3. End-to-Site(端到站點或者PC到網關):兩個PC之間的通訊由網關和異地PC之間的IPSec進行保護。

×××只是IPSec的一種應用方式,IPSec實際上是IP Security的簡稱,它的目的是爲IP提供高安全性特性,×××則是在實現這種安全特性的方式下產生的解決方案。IPSec是一個框架性架構,具體由兩類協議組成:

1. AH協議(Authentication Header,使用較少):能夠同時提供數據完整性確認、數據來源確認、防重放等安全特性;AH經常使用摘要算法(單向Hash函數)MD5和SHA1實現該特性。

2. ESP協議(Encapsulated Security Payload,使用較廣):能夠同時提供數據完整性確認、數據加密、防重放等安全特性;ESP一般使用DES、3DES、AES等加密算法實現數據加密,使用MD5或SHA1來實現數據完整性

IPSec封裝模式

1)傳輸模式

對IP包的部分信息提供安全保護,即對IP數據包的上層數據(TCP、UDP、ICMP消息等)提供安全保護採用AH傳輸模式,主要爲IP數據包(IP頭中的可變信息除外)提供認證保護採用ESP傳輸模式,對IP數據包的上層信息提供加密和認證雙重保護一種端到端的安全,IPSec在端點執行加密認證、處理,在安全通道上傳輸,主機必須配置IPSec

  2)隧道模式

對整個IP數據包提供保護

基本原理:構造新的IP數據包,將原IP數據包做爲新數據包的數據部分,併爲新的IP數據包提供安全保護採用AH隧道模式,爲整個IP數據包提供認證保護(可變字段除外)

採用ESP隧道模式,爲整個IP數據包提供加密和認證雙重保護對IPSec的處理是在安全網關執行的,兩端主機沒必要知道IPSec協議

瞭解了IPsec的基本信息以後,下面經過一個案例來對其的工做原理進行進一步的深化。

實驗拓撲

配置信息

F1

F2

F3

Sw1

測試結果:

Pc1 ping pc3

Pc2 ping pc3

相關文章
相關標籤/搜索