南京郵電學(xué)院 王桂玲 李正超 范忠禮
一、引言
隨著Internet的發(fā)展,現(xiàn)有電信網(wǎng)越來越多地用于IP接入,術(shù)語“IP接入網(wǎng)”的出現(xiàn)方便了人們研究相關(guān)問題。IP接入網(wǎng)是指在IP用戶和IP業(yè)務(wù)提供者(ISP)之間的網(wǎng)絡(luò)實(shí)體,它為用戶提供所需的接入到IP業(yè)務(wù)的能力。IP接入網(wǎng)參考模型如圖1所示。
。桑薪尤敕绞娇刹捎弥苯咏尤敕绞健ⅲ校校兴淼婪绞、IP隧道方式、路由方式以及MPLS(多協(xié)議標(biāo)簽交換)方式。鑒于目前我國(guó)電信163/169網(wǎng)的現(xiàn)狀,其中IP隧道方式可采用把現(xiàn)有L2TP技術(shù)與IPSec技術(shù)結(jié)合的方式,具有明顯的平滑過渡和安全性方面的優(yōu)勢(shì)。IPSec是由IETF IP安全性工作組定義的協(xié)議集,它用于確保網(wǎng)絡(luò)層之間的安全通信,該協(xié)議草案分為七個(gè)部分,它們分別描述了體系結(jié)構(gòu)、封裝安全負(fù)載協(xié)議(ESP)、認(rèn)證頭協(xié)議(AH)、加密算法、認(rèn)證算法、解釋域(DOI)以及密鑰管理。同時(shí),IETF還制定了IKE(Internet Key Exchange),定義了通信實(shí)體之間身份認(rèn)證、協(xié)商加密算法、生成共享會(huì)話密鑰的方法。
安全聯(lián)盟(Security Association)則是在IP的加密和認(rèn)證機(jī)制中出現(xiàn)的核心概念:AH和ESP都必須通過安全聯(lián)盟來實(shí)現(xiàn),IKE的功能其實(shí)即是建立安全聯(lián)盟。安全聯(lián)盟的實(shí)現(xiàn)是IP接入網(wǎng)安全機(jī)制的關(guān)鍵技術(shù)。
二、基本概念
一個(gè)安全聯(lián)盟是一個(gè)發(fā)送方與接收方之間的單向關(guān)系,從而對(duì)其承載的流量提供安全服務(wù)。若需要一個(gè)對(duì)等關(guān)系,即雙向安全交換,就需要建立兩個(gè)安全聯(lián)盟。一個(gè)單一的安全聯(lián)盟可以向認(rèn)證頭AH或封裝安全負(fù)荷ESP提供安全服務(wù),但不能同時(shí)提供給兩者。安全聯(lián)盟僅由三個(gè)參數(shù)標(biāo)識(shí):安全參數(shù)指數(shù)、IP目的地址和安全協(xié)議標(biāo)識(shí)符。
。保踩珔(shù)指數(shù)SPI:是分配給安全聯(lián)盟的比特串,僅在本地可用。安全參數(shù)指數(shù)在認(rèn)證頭或封裝安全負(fù)荷頭中出現(xiàn),使接收系統(tǒng)選擇安全聯(lián)盟并在其下處理一個(gè)收到的報(bào)文。
。玻桑心康牡刂罚褐挥袉蜗騻鞑サ刂房捎。它是安全聯(lián)盟的終端地址,該終端可以是終端用戶系統(tǒng)或者諸如防火墻、路由器這樣的網(wǎng)絡(luò)系統(tǒng)。
。常踩珔f(xié)議標(biāo)識(shí)符SPID:指示安全聯(lián)盟用于認(rèn)證頭還是封裝安全負(fù)荷。
在任何IP包中,安全聯(lián)盟是由Ipv4中的目的地址或Ipv6頭和內(nèi)部擴(kuò)展頭(AH或ESP)中的SPI所唯一標(biāo)識(shí)的。
三、兩種模式的安全聯(lián)盟
安全聯(lián)盟有兩種類型:傳輸模式的安全聯(lián)盟和隧道模式的安全聯(lián)盟。
。保畟鬏斈J降陌踩(lián)盟應(yīng)用在兩臺(tái)主機(jī)之間。在IPv4中,傳輸模式的安全協(xié)議頭插入到IP報(bào)頭之后、高層傳輸協(xié)議(如TCP、UDP)之前。在IPv6中,該模式的安全協(xié)議頭出現(xiàn)在IP頭及IP擴(kuò)展頭之后、高層傳輸協(xié)議之前。目的地址選項(xiàng)可以放在安全協(xié)議頭之前或之后。對(duì)安全封裝負(fù)載報(bào)頭(ESP)來說,傳輸模式的安全聯(lián)盟只對(duì)那些高層協(xié)議提供安全服務(wù),而不對(duì)在ESP頭之前的IP頭及其擴(kuò)展頭進(jìn)行安全處理。對(duì)認(rèn)證報(bào)頭(AH)來說,安全處理還可擴(kuò)展到IP頭、IP擴(kuò)展頭,比如在IPv4頭、IPv6的Hop-by-Hop擴(kuò)展頭或目的地址擴(kuò)展頭中的被選部分。
。玻淼滥J降陌踩(lián)盟其實(shí)質(zhì)是一個(gè)應(yīng)用在IP隧道之上的安全連接。若構(gòu)成一個(gè)安全聯(lián)盟的兩個(gè)終端中至少有一個(gè)是安全網(wǎng)關(guān)(而不再是主機(jī)),則這個(gè)安全聯(lián)盟就必須采用隧道模式。這是因?yàn),在傳輸模式下,安全網(wǎng)關(guān)是作為一個(gè)主機(jī)來工作的,并不進(jìn)行數(shù)據(jù)流的轉(zhuǎn)接,而在隧道模式下,IPSec報(bào)文要進(jìn)行分段和重組操作,并且可能要再經(jīng)過多個(gè)安全網(wǎng)關(guān)才能到達(dá)安全網(wǎng)關(guān)后面的目的主機(jī),故在這種情況下最好采用隧道模式。
在隧道模式下,“外部”IP頭指明進(jìn)行IPSec處理的目的地址,“內(nèi)部”IP頭指明最終的目的地址。安全協(xié)議頭出現(xiàn)在外部IP頭和內(nèi)部IP頭之間。同在傳輸模式下類似,對(duì)于帶有AH的幀來說,提供對(duì)內(nèi)部IP頭、高層傳輸協(xié)議以及部分外部IP頭的安全保護(hù),對(duì)于帶有ESP的幀來說,只提供對(duì)內(nèi)部IP頭及高層傳輸協(xié)議的安全保護(hù)。在隧道模式下,安全網(wǎng)關(guān)后面的主機(jī)無需具有IPSec處理功能而同樣進(jìn)行安全通信。
綜上,我們可以概括出:主機(jī)要求能夠支持傳輸及隧道兩種模式;安全網(wǎng)關(guān)則只需支持隧道模式。工作在傳輸模式下的安全網(wǎng)關(guān)必定僅僅是做為一臺(tái)主機(jī)工作的(比如,作網(wǎng)絡(luò)管理用時(shí))。
四、安全聯(lián)盟組合
單獨(dú)的安全聯(lián)盟有兩個(gè)不足:(1)一個(gè)單獨(dú)的安全聯(lián)盟不能提供對(duì)AH和ESP兩者共同的支持。(2)一種特殊的數(shù)據(jù)流既需要在兩個(gè)主機(jī)之間也需要在兩個(gè)安全網(wǎng)關(guān)之間提供IPSec 服務(wù)。這是單獨(dú)的安全聯(lián)盟無法企及的。
安全聯(lián)盟組合的概念便是為解決這兩個(gè)不足而出現(xiàn)的,“安全聯(lián)盟束”形象地定義了為提供一系列IPSec服務(wù)所應(yīng)用的安全聯(lián)盟系列。安全聯(lián)盟組合成“束”有兩種方式:傳輸鄰接方式和循環(huán)嵌套方式。前者不調(diào)用隧道實(shí)現(xiàn)多個(gè)協(xié)議,后者調(diào)用隧道實(shí)現(xiàn)多層協(xié)議,允許多層嵌套。這兩種方式也可以聯(lián)合起來工作。
為改善單獨(dú)安全聯(lián)盟的第一個(gè)不足之處,也就是說,實(shí)現(xiàn)既帶有加密和又帶有認(rèn)證的IP報(bào)文,我們有三種方式:帶有認(rèn)證選項(xiàng)的ESP;傳輸鄰接;傳輸——隧道束。在第一種方式下,ESP被應(yīng)用在受保護(hù)數(shù)據(jù)上,然后再加上認(rèn)證字段。第二種方式即傳輸鄰接方式使用了SA束技術(shù),內(nèi)部是ESP SA,外部是AH SA。在這種方式下,ESP 不帶有認(rèn)證選項(xiàng),內(nèi)部SA在傳輸模式下生成帶有IP頭或IP擴(kuò)展頭的加密報(bào)文,然后,再在傳輸模式下應(yīng)用AH。第二種方式的認(rèn)證工作包括ESP以及初始IP頭(以及IP擴(kuò)展頭)的不可變字段。與第一種方式相比,這種方式下的認(rèn)證覆蓋了更多的字段,包括源、目的地址;這種方式的不足之處是由于SA束的額外開銷而導(dǎo)致效率下降。在第三種方式即傳輸—隧道束方式下,內(nèi)部SA應(yīng)用傳輸模式的AH,外部SA應(yīng)用隧道模式的ESP。在這種方式下,認(rèn)證工作包括IP負(fù)載和IP頭(或IP擴(kuò)展頭)的不可變字段;加密工作則包括整個(gè)被認(rèn)證的內(nèi)部報(bào)文。加密后,多出了一個(gè)新的外部IP頭(或IP擴(kuò)展頭)。
為解決單獨(dú)安全聯(lián)盟的第二個(gè)不足,我們有安全聯(lián)盟的四種基本組合方式。
注:帶有?號(hào)者支持IPSec機(jī)制
方式1包括四種情況:(1)傳輸模式下的AH。(2)傳輸模式下的ESP。(3)傳輸模式下外部ESP SA和內(nèi)部AH SA。(4)外部隧道模式下的AH或ESP,內(nèi)部是(1)、(2)、(3)中的任何一種。
方式2只在安全網(wǎng)關(guān)之間提供安全保護(hù),主機(jī)不應(yīng)用IPSec機(jī)制。此種方式下只需要網(wǎng)關(guān)之間一個(gè)單一SA隧道,該隧道支持AH、ESP以及帶有認(rèn)證頭的ESP。此方式無需嵌套機(jī)制,因?yàn)椋桑校樱澹惴⻊?wù)應(yīng)用在整個(gè)內(nèi)部報(bào)文上。
方式3在方式二的基礎(chǔ)上加上端到端的安全性。
方式4支持遠(yuǎn)程終端通過因特網(wǎng)接入到防火墻后面的服務(wù)器或工作站上。根據(jù)上文分析,可知這種方式只能采用隧道模式。
五、安全聯(lián)盟數(shù)據(jù)庫
安全策略數(shù)據(jù)庫(SPD)指示從一臺(tái)主機(jī)、一個(gè)安全網(wǎng)關(guān)輸入、輸出的IP數(shù)據(jù)流的部署。安全聯(lián)盟數(shù)據(jù)庫(SAD)則包括與每一個(gè)安全聯(lián)盟相關(guān)的參數(shù),另外,它還定義了安全聯(lián)盟選擇器的概念,包括一套IP及高層協(xié)議字段值,供SPD用來把數(shù)據(jù)流映射到一個(gè)安全聯(lián)盟或安全聯(lián)盟束中。SAD中的安全聯(lián)盟參數(shù)包括:
。保驍(shù)計(jì)數(shù)器:產(chǎn)生一個(gè)32位的數(shù)值以確定AH或ESP頭部的序數(shù)域。
。玻驍(shù)計(jì)數(shù)器溢出:指示序數(shù)計(jì)數(shù)器溢出的符號(hào)。SCO=1時(shí),引發(fā)預(yù)置事件,防止在該安全聯(lián)盟下繼續(xù)發(fā)送數(shù)據(jù)包。
。常怪匕l(fā)窗口:用于確定一個(gè)內(nèi)置的AH或ESP包是否重發(fā)以判斷是否受到攻擊。
。矗粒刃畔ⅲ褐甘菊J(rèn)證算法、密鑰、密鑰生命期等與AH相關(guān)的參數(shù)。
。担牛樱行畔ⅲ褐甘炯用苷J(rèn)證算法、密鑰、初始值、密鑰生命期等與ESP相關(guān)參數(shù)。
6.安全聯(lián)盟生命期:安全聯(lián)盟被新安全聯(lián)盟替代或終止的時(shí)間間隔或字節(jié)數(shù)。并指示發(fā)生哪種動(dòng)作。
。罚桑校螅澹銋f(xié)議方式:隧道、傳輸還是混合方式(通配符)。
8.路徑最大發(fā)送單位MTU:完整發(fā)送的數(shù)據(jù)包最大傳送單位長(zhǎng)度和老化變量。
。桑袛(shù)據(jù)流經(jīng)由安全策略數(shù)據(jù)庫SPD與特定的安全聯(lián)盟相關(guān)或不與安全聯(lián)盟相關(guān)。SPD最簡(jiǎn)單的形式由一些入口組成,每個(gè)入口定義一個(gè)IP數(shù)據(jù)流子集并為該數(shù)據(jù)流指定一個(gè)安全聯(lián)盟。在更復(fù)雜的情況下,多個(gè)入口可以與一個(gè)安全聯(lián)盟相關(guān)或多個(gè)安全聯(lián)盟與一個(gè)入口相關(guān)。每個(gè)SPD入口由SAD中一系列稱為選擇器的IP及其上層協(xié)議域的數(shù)值確定,這些選擇器被用來過濾待處理的數(shù)據(jù)流以便于特定的安全聯(lián)盟處理。以輸出處理為例,安全處理大致遵循以下程序:
1.比較包相應(yīng)域與SPD的數(shù)值找到匹配的SPD入口,該入口指向零個(gè)或多個(gè)安全聯(lián)盟;
。玻疄樵摪_定安全聯(lián)盟和相應(yīng)的SPI;
。常M(jìn)行相應(yīng)的IPsec處理AH或ESP。
六、結(jié)束語
安全聯(lián)盟是IPSec認(rèn)證、加密機(jī)制中的核心概念,它貫穿了整個(gè)安全處理的方方面面。
安全聯(lián)盟由面向接收者的SPI唯一標(biāo)識(shí)的特性使安全機(jī)制更適合于IP多播業(yè)務(wù),對(duì)電話會(huì)議、分布模擬等業(yè)務(wù)的發(fā)展是一個(gè)有利的推進(jìn)。另外,安全聯(lián)盟組選擇的多樣性和靈活性有利于推進(jìn)IP接入網(wǎng)概念中各ISP間的競(jìng)爭(zhēng)。
同時(shí),我們應(yīng)該看到,安全機(jī)制的應(yīng)用增加了系統(tǒng)的協(xié)議處理開銷。包括加密、認(rèn)證占用的時(shí)間以及安全聯(lián)盟數(shù)據(jù)庫占用的字節(jié)。對(duì)這些問題的解決,有待于算法的優(yōu)化配置、硬件實(shí)現(xiàn)部分算法以及數(shù)據(jù)庫的優(yōu)化配置。
----《通信世界》