html做的網(wǎng)站怎么弄seo網(wǎng)絡(luò)排名優(yōu)化方法
什么是IPsec?
IPsec(Internet Protocol Security)是為IP網(wǎng)絡(luò)提供安全性的協(xié)議和服務(wù)的集合,它是VPN(Virtual Private Network,虛擬專用網(wǎng))中常用的一種技術(shù)。其實就是一種協(xié)議簇(類似TCP/IP協(xié)議簇),IPsec VPN就是基于IPsec協(xié)議簇來進(jìn)行封裝的一種VPN技術(shù)。VPN的核心就是隧道技術(shù),隧道技術(shù)的核心就是封裝技術(shù)。
通信雙方通過IPsec建立一條IPsec隧道,IP數(shù)據(jù)包通過IPsec隧道進(jìn)行加密傳輸,有效保證了數(shù)據(jù)在不安全的網(wǎng)絡(luò)環(huán)境如Internet中傳輸?shù)陌踩浴?br />
IPsec VPN 保護(hù)的是點對點之間的通信,通過IPsec VPN可以在主機和主機之間、主機和網(wǎng)絡(luò)安全網(wǎng)關(guān)之間或網(wǎng)絡(luò)安全網(wǎng)關(guān)(如路由器、防火墻)之間建立安全的隧道連接。其協(xié)議主要工作在IP層,在IP層對數(shù)據(jù)包進(jìn)行加密和驗證。
IPsec?VPN的工作流程
大致可以分為四個階段:
1、識別“感興趣流”。網(wǎng)絡(luò)設(shè)備接收到報文后,通常會將報文的五元組等信息和IPsec策略進(jìn)行匹配來判斷報文是否要通過IPsec隧道傳輸,需要通過IPsec隧道傳輸?shù)牧髁客ǔ1环Q為“感興趣流”。
2、協(xié)商安全聯(lián)盟(Security Association)。SA是通信雙方對某些協(xié)商要素的約定,比如雙方使用的安全協(xié)議、數(shù)據(jù)傳輸采用的封裝模式、協(xié)議采用的加密和驗證算法、用于數(shù)據(jù)傳輸?shù)拿荑€等,通信雙方之間只有建立了SA,才能進(jìn)行安全的數(shù)據(jù)傳輸。
????????識別出感興趣流后,本端網(wǎng)絡(luò)設(shè)備會向?qū)Χ司W(wǎng)絡(luò)設(shè)備發(fā)起SA協(xié)商。在這一階段,通信雙方之間通過IKE協(xié)議先協(xié)商建立IKE SA(用于身份驗證和密鑰信息交換),然后在IKE SA的基礎(chǔ)上協(xié)商建立IPsec SA(用于數(shù)據(jù)安全傳輸)。
3、數(shù)據(jù)傳輸。IPsec SA建立成功后,雙方就可以通過IPsec隧道傳輸數(shù)據(jù)了。IPsec為了保證數(shù)據(jù)傳輸?shù)陌踩?#xff0c;在這一階段需要通過AH或ESP協(xié)議對數(shù)據(jù)進(jìn)行加密和驗證。加密機制保證了數(shù)據(jù)的機密性,防止數(shù)據(jù)在傳輸過程中被竊取;驗證機制保證了數(shù)據(jù)的真實可靠,防止數(shù)據(jù)在傳輸過程中被仿冒和篡改。
????????如下圖,IPsec發(fā)送方會使用加密算法和加密密鑰對報文進(jìn)行加密,即將原始數(shù)據(jù)“喬裝打扮”封裝起來。然后發(fā)送方和接收方分別通過相同的驗證算法和驗證密鑰對加密后的報文進(jìn)行處理得到完整性校驗值ICV。如果兩端計算的ICV相同則表示該報文在傳輸過程中沒有被篡改,接收方對驗證通過的報文進(jìn)行解密處理;如果ICV不相同則直接丟棄報文。
IPsec VPN中的數(shù)據(jù)加密流程:
4、隧道拆除。通常情況下,通信雙方之間的會話老化(連接斷開)即代表通信雙方數(shù)據(jù)交換已經(jīng)完成,因此為了節(jié)省系統(tǒng)資源,通信雙方之間的隧道在空閑時間達(dá)到一定值后會自動刪除。
IKE (互聯(lián)網(wǎng)密鑰交換協(xié)議)
?
主要用來完成IPsec中需要的密鑰相關(guān)參數(shù)的協(xié)商工作,可以動態(tài)建立IPsec SA 。有兩個版本IKE V1、IKE V2
IKE中的三個協(xié)議
1、SKEME
2、OAKLEY
3、ISAKMP ISAKMP(互聯(lián)網(wǎng)安全聯(lián)盟密鑰管理協(xié)議)
我們重點了解第三個ISAKMP ISAKMP(互聯(lián)網(wǎng)安全聯(lián)盟密鑰管理協(xié)議)
這就是IKE協(xié)議的本體,主要用來完成IPSEC中需要的密鑰相關(guān)參數(shù)的協(xié)商工作??梢詣討B(tài)建立IPsec SA UDP500----源、目標(biāo)端口都必須是500。
SKEME、OAKLEY ---這兩個協(xié)議可以理解為是IKE協(xié)商過程中使用到的資源庫(了解即可)
注意:身份認(rèn)證是建立安全通道的前提。
IKE第一階段
主要目的是為了獲得建立IPSEC SA時使用的密鑰,以及進(jìn)行身份認(rèn)證。
IKE SA(ISAKMP SA)-----這個SA是雙向邏輯的,不區(qū)分源和目標(biāo)。
主模式:默認(rèn)使用IP地址作為身份標(biāo)識(也要作為PSK的識別標(biāo)志),使用6個數(shù)據(jù)包進(jìn)行交互,安全性更高

這里我們根據(jù)上圖中的各個數(shù)據(jù)包單獨進(jìn)行分析:
第一二個數(shù)據(jù)包:進(jìn)行SA交換
1、Cl--- cookie ---這個參數(shù)每個數(shù)據(jù)包中都會攜帶,在IKEV2中,變成了SPI,在這里作用類似。 2,SA---里面攜帶的是需要協(xié)商的安全參數(shù) ------“五元組"(如下)
加密算法,哈希算法,身份認(rèn)證,DH組,SA存活期
AES ??????????????MD5???????? PSK???????? DH2 ?????84600s(默認(rèn)值)
注意:手工建立的SA,一經(jīng)建立,則將永久有效;但是IKE建立的SA,需要配置生存周期,周期時間到了之后,將重新建立SA。時間可以不同,不同的話按照小的來執(zhí)行。
第二個回包主要確認(rèn)安全參數(shù),如果安全參數(shù)都可以對的上,則將繼續(xù)完成后面的協(xié)商。如果參數(shù)沒有對上,則將回復(fù)一個負(fù)載拒絕報文,結(jié)束IKESA的建立。
第三四個數(shù)據(jù)包 ---DH密鑰交換 ---對稱密鑰1,NI,Nr---代表的是隨機數(shù) 2,X,Y --- DH算法中需要公開的參數(shù)這里,為了加強安全性,DH算法會生成四種密鑰
種子密鑰 --- 剩余三種密鑰都需要加入種子密鑰運算得出,并且,種子密鑰中計算時,會攜帶預(yù)共享密鑰。
SKEYID_e---加密密鑰 --- g^ir(代表的就是DH算法中計算出來的Z),CKY-I/CKY-R(前面雙方攜帶的cookie值)----用于第一個階段5,6數(shù)據(jù)包和第二階段數(shù)據(jù)包加密使用。
SKEYID_a ---- 驗證密鑰 ---用于第二階段hash時使用的密鑰 ---HMAC算法(結(jié)合密鑰的HASH算法),安全性比不加入密鑰的HASH算法更高。
SKEYID_d ---推導(dǎo)密鑰 ---用于計算最終密鑰(最終加密數(shù)據(jù)的密鑰)的素材
注意:在NAT環(huán)境,或是IP地址會變化的場景下,不適合用主模式。
野蠻模式?
特點:可以自定義身份標(biāo)識,速度快,只需要三個數(shù)據(jù)包就可以完成標(biāo)識,安全性低

注意:在野蠻模式中,可以自定義身份標(biāo)識,主要是因為身份信息不需要加密,并且,前兩個數(shù)據(jù)包都無法加密,所以,野蠻模式安全性較低。僅第三個數(shù)據(jù)包會進(jìn)行加密。但是,野蠻模式適用于NAT環(huán)境以及IP地址不固定的環(huán)境。
主模式和野蠻模式的區(qū)別

第二階段
基于已經(jīng)建立的安全通道,來協(xié)商建立IPSEC SA的安全參數(shù),完成后,則標(biāo)志著IPSEC SA的建立。 快速模式(quick mode) UDP500
需要協(xié)商的安全參數(shù)
加密算法 ---正式傳輸數(shù)據(jù)時使用的加密算法(加密算法協(xié)商完成后,會計算密鑰第一階段計算出來的推導(dǎo)密鑰會加入到該密鑰的計算中)
HASH算法 ---正式傳輸數(shù)據(jù)時進(jìn)行完整性校驗的算法
安全協(xié)議 ---AH/ESP
封裝模式 --- 傳輸模式/隧道模式
存活時間
可以了解一下這個協(xié)議
PFS --- 密鑰完美向前保密 --- 正常工作中,第二階段的最終密鑰是通過第一階段的推導(dǎo)密鑰計算出來的,但是,這樣做不安全,推導(dǎo)密鑰泄露可能導(dǎo)致最終密鑰泄露。所以,可以開啟這個PFS技術(shù)(注意:要開啟需要兩端設(shè)備都開啟才行),之后,則將在第二階段重新進(jìn)行一次DH交換,計算最終的密鑰,從而提高安全性。
數(shù)據(jù)傳輸階段
VPN黑洞:隧道建立之后,如果其中一段的設(shè)備異常重啟,另一端還在有效期內(nèi),則他發(fā)送的數(shù)據(jù)將有去無回,就形成了VPN黑洞。
解決方法
DPD死亡對等體檢測。類似于心跳檢測機制 ---采用空閑計時器原理 ---兩邊同時開啟一個固定時間的計時器,期間數(shù)據(jù)值直接發(fā)過去,如果計時器超時,則數(shù)據(jù)發(fā)送前,先發(fā)送一個DPD檢測報文,如果收到對方的DPD應(yīng)答報文,則將重置計時器。如果沒有收到,并且,連續(xù)5次都沒有收到,則將拆掉安全通道。
最后,在面試過程中常問的一個問題,IPSec SA和IKE SA誰是單向誰是雙向?
IKE SA 是雙向的,兩端只需要構(gòu)建一條SA就可以共同擁有了;
IPSec SA是單向的,所以就需要創(chuàng)建兩條。