ASA 5550 ××× 配置(二之一)

ASA 5550 ××× 配置

本文主要介紹IPSec ××× 的實現過程,最後會介紹IPsec ×××SSL ×××L2TP ×××的配置,會給出簡單的排錯方法。好了,休息一下開始用功吧~

×××技術理解

×××被定義爲通過一個公用網絡(通常是因特網)建立一個臨時的、安全的連接,是一條穿過混亂的公用網絡的安全、穩定隧道。使用這條隧道可以對數據進行幾倍加密達到安全使用互聯網的目的。

×××主要採用隧道技術、加解密技術、密鑰管理技術和使用者與設備身份認證技術

隧道技術

就隧道技術有多種實現方式,也就存在多種隧道協議,隧道可以實現遠程網絡之間通過私有IP地址互訪。

 

隧道協議目前共有: 

GREGeneric Routing Encapsulation

IP Security (IPsec)

Secure Sockets Layer/Transport Layer Security (SSL/TLS)

××× (Web×××)

Point-to-Point Tunneling Protocol (PPTP)

Layer Two Tunneling Protocol (L2TP)

 

加解密技術

加解密算法:保證數據的安全性

DES(56bit)3DES(168bit)AES 128AES 192AES 256

HMACHash message authentication code:數據檢驗,防止被改動

MD5(128bit)SHA-1(156bit)

密鑰管理技術

保證密鑰的安全,因爲只要密鑰泄露,就全玩完了

Group 1 密鑰長度爲768 bit,也是默認的密鑰長度; 

Group 2密鑰長度爲1024 bit; 

Group 5密鑰長度爲1536 bit

認證技術

認證可以有效確保會話是來自於真正的對等體而不是***者,因爲如果最開始本身就是在和一個***者或***進行會話和協商,那麼後面的所有工作都是白廢,所以保證只和合法的對等體會話是非常重要的

Pre-Shared Keys (PSK)

Public Key Infrastructure (PKI) using X.509 Digital Certificates

RSA encrypted nonce

IPsec ×××

概述

在實施×××時,除了實現隧道功能以外,還要實現數據安全,兩者缺一不可;在數據安全方面,其實就是要讓數據加密傳輸,至於如何對數據進行加密傳輸,有一個使用最廣泛,且最經典的技術方案,這就是IPsecIP Security),IPsec最突出,也是最主要的功能就是保證×××數據的安全傳輸。

 

IPsec定義了使用什麼樣的方法來管理相互之間的認證,以及使用什麼樣的方法來保護數據,IPsec只是定義了一些方法,IPsec本身並不是一個協議,就像OSIOpen System Interconnect)參考模型一樣,OSI並不是一個協議,OSI只是一個框架,一個模型,OSI裏面包含着多個協議,如TCPUDPIPICMP等等;IPsec中同樣也包含着爲之服務的各種協議去實現IPsec要完成的各個功能,只有這樣,IPsec才能起到作用。

 

IPsec能夠起到的功能有:

數據源認證(Data origin authentication

保護數據完整性(Data integrity

保證數據私密性(Data confidentiality

防止中間人***(Man-in-the-Middle

防止數據被重放(Anti-Replay

 

數據源認證保證數據是從真正的發送者發來的,而不是來自於第三方***者。

保護數據完整性是保證數據不會被***者改動。

保證數據私密性是保證數據不會被***者讀取。

防止中間人***是防止數據被中間人截獲。

防止數據被重放也可以認爲是防止數據被讀取和改動。

IPsec 協議分類

IPsec服務的總共有三個協議:

IKEInternet Key Exchange

ESPEncapsulating Security Protocol

AHAuthentication Header

 

雖然總共是三個協議,但分爲兩類:

IKE是個混合協議,其中包含部分Oakley協議以及內置在ISAKMPInternet Security Association and Key Management Protocol協議中的部分SKEME協議,所以IKE也可寫爲ISAKMP/Oakley,它是針對密鑰安全的,是用來保證密鑰的安全傳輸、交換以及存儲,主要是對密鑰進行操作,並不對用戶的實際數據進行操作。

 

ESPEncapsulating Security Protocol)和AHAuthentication Header)主要工作是如何保護數據安全,也就是如何加密數據,是直接對用戶數據進行操作的。

 

因爲 在實施×××時,除了實現隧道功能以外,還要實現數據安全,兩者缺一不可;在之前我的提到的隧道技術中,只能實現隧道而不能實現安全,而IPSec則可以爲隧道提供數據保護功能,從而構建一個完整的×××體系。IPsec除了能夠爲隧道提供數據保護來實現×××之外,IPsec還可以自己單獨作爲隧道協議來提供隧道的建立,如果IPsec自己單獨作爲隧道協議來使用,那麼IPsec就不需要藉助任何其它隧道協議就能獨立實現×××功能;IPsec到底是隻使用數據保護功能再配合其它隧道協議,還是自己獨立實現隧道來完成×××功能,可以由配置者自己決定。

 

IKE

IEK構架一個完善的方案體系,以保證×××之間的密鑰與數據的安全。

SA

       IPsec的所有會話都是在通道中傳輸的,包括協商密鑰,傳遞用戶數據;這樣的通道稱爲SASecurity Association),SA並不是隧道,而是一組規則,就好比是需要會話的對等體之間必須遵守的一份合同。SA中的規則能夠保證所有數據的安全傳遞,因此SA中包含了之前提到的保證數據和密鑰安全時必不可少的認證、加密等安全策略,這些需要用到的技術,都要在SA中定義。

因爲×××之間傳輸的數據需要加密才能保證安全,並且加密時所用到的密鑰要更加安全,所以對待密鑰,我們也需要付出巨大的努力。在密鑰的安全上,由IKE負責,而數據的安全,則由IPsec負責,雖然是這麼說,但需要注意,IKE也是IPsec不可分割的一部分,IKE不是獨立存在的。

SA並不是只有一個,由於密鑰安全和數據安全我們是分開對待的,所以SA有兩個,分別是定義瞭如何保護密鑰和如何保護數據,這兩個SA就是:

 

ISAKMP Security AssociationIKE SA

IPsec Security AssociationIPsec SA

 

每個SA都有lifetime,過期後SA便無效,lifetime使用time (second) volume limit (byte count)來衡量,在建立SA時就會協商出來,雙方會比對,最終取值小的一方;通常是時間先過期,在要過期最後120秒之前,會自動重建另一條SA,避免活動的SA到期後無法傳輸數據,這樣就能實現平滑過渡,以丟最少的包。

 

注:IKE SA等同於ISAKMP SA

 

IKE SA

 

IKE SA要保護的對象是與密鑰有關的,IKE並不直接關心用戶數據,並且IKE SA是爲安全協商IPsec SA服務的。

IKE SAlifetime默認爲86,400 seconds,即一天,默認沒有volume limit

 

IPsec SA

 

用戶的數據流量真正是在IPsec SA上傳遞的,而不是在IKE SAIPsec SA直接爲用戶數據流服務,IPsec SA中的所有安全策略都是爲了用戶數據流的安全。

每個IPsec對等體都有一對IPsec SA,一個是去往遠程目的地的,而另一個是從遠程回來的,也就是一進一出,都存放在本地SA Database中。

 

IPsec SAlifetime默認爲3600 seconds,即1小時;默認volume limit4,608,000 Kbytes,即4.608 Gbyte

 

因爲SA有兩個,分爲IKE SAIPsec SA,兩個SA分別定義瞭如何保護密鑰以及如何保護數據,其實這兩個SA都是由IKE建立起來的,所以將IKE的整個運行過程分成了兩個Phase(階段),即

IKE Phase One

IKE Phase Two

IKE Phase One

IKE Phase One的主要工作就是建立IKE SAISAKMP SA),IKE SA的服務對象並不是用戶數據,而是密鑰流量,以及爲IPsec SA服務的;IKE SA的協商階段被稱爲main mode(主模式),IKE也是需要保護自己的流量安全的(這些流量並非用戶流量),所以IKE SA之間也需要協商出一整套安全策略,否則後續的密鑰和IPsec SA的建立就不能得到安全保證;IKE SA之間需要協商的套安全策略包括:

認證方式(Authentication

共總有Pre-Shared Keys (PSK)Public Key Infrastructure (PKI)RSA encrypted nonce,默認爲PKI

加密算法(Encryption

總共有DES3DESAES 128AES 192AES 256,默認爲DES

Hash算法(HMAC

總共有SHA-1MD5,默認爲SHA-1

密鑰算法(Diffie-Hellman

Groups 1 768 bit),Group 21024 bit),Group 51536 bit),默認爲Groups 1 768 bit)。

 

Lifetime

隨用戶定義,默認爲86,400 seconds,但沒有volume limit

 

NAT穿越(NAT Traversal

默認爲開啓狀態,無須手工配置。crypto isakmp nat-traversal

                                                                   

IKE Phase Two

IKE Phase Two的目的是要建立IPsec SA,由於IKE SA的服務對象並不是用戶數據,而是密鑰流量,以及爲IPsec SA服務的,IKE SA是爲IPsec SA做準備的,所以如果沒有IKE SA,就不會有IPsec SAIPsec SA是基於IKE SA來建立的,建立IPsec SA的過程稱爲 快速模式(quick mode)。IPsec SA纔是真正爲用戶數據服務的,用戶的所有流量都是在IPsec SA中傳輸的,用戶流量靠IPsec SA來保護,IPsec SA同樣也需要協商出一整套安全策略,其中包括:

 

加密算法(Encryption

總共有DES3DESAES 128AES 192AES 256,默認爲DES

 

Hash算法(HMAC

總共有SHA-1MD5,默認爲SHA-1

 

Lifetime

隨用戶定義,默認爲3600 seconds,即1小時;默認volume limit4,608,000 Kbytes,即4.608 Gbyte

 

IPsec Mode

共有Tunnel modeTransport mode,默認爲Tunnel mode

 

從上可以看出,IPsec SA中沒有協商認證方式(Authentication)和密鑰算法(Diffie-Hellman),因爲IKE SA時已經認證過了,所以後面已經不需要再認證;並且密鑰是在IKE SA完成的,所以在IPsec SA中也就談不了密鑰算法了,但也可以強制再算。

 

ESPEncapsulating Security Protocol

  IPsec服務的協議總共有三個:IKEInternet Key Exchange),ESPEncapsulating Security Protocol)以及AHAuthentication Header),其中IKE是針對密鑰安全的,是用來保證密鑰的安全傳輸、交換以及存儲,主要是對密鑰進行操作,並不對用戶的實際數據進行操作,如果要保護用戶數據,需要靠ESPEncapsulating Security Protocol)和(Authentication Header),ESPAH主要工作是如何保護數據安全,也就是如何加密數據,是直接對用戶數據進行操作的,IPsec對用戶數據的保護,靠ESPAH的封裝。

 

  ESP對用戶數據包的封裝過程如下:

ESP包頭中使用IP協議號50來標識,意爲IP協議號爲50的數據包都被當作ESP數據包來處理;從上圖中也可以看出,即使是封裝ESP,也分爲兩種情況,因爲IPsec本身分爲兩種模式,所以在進行安全封裝數據包時,不同的模式,也會有不同的封裝格式。

從圖中還可以看出,原始數據包經過ESP封裝之後,只是數據被加密了,而原始的IP包頭是沒有改變的,雖然是這樣,但也會使用其它方式,如HMAC來保證數據的安全性,其中包括:

 

保護數據完整性(Data integrity

防止中間人***(Man-in-the-Middle

防止數據被重放(Anti-Replay

同樣也提供數據認證(Data authentication

                                                                   

AHAuthentication Header

 

AH對用戶數據包的封裝過程如下:

 

AH包頭中使用IP協議號51來標識,從圖中可以發現,原始數據包經過AH封裝之後,並沒有被加密,這是因爲AH封裝並不使用常規的方法去加密數據部分,而是採用隱藏數據的方法,也就是相當於加一個防改寫的封條給數據,很顯然,這簡直就是掩耳盜鈴,如果數據機密要求高,千萬不要單獨使用AH封裝。

 

ESPAH結合

 

在一個IPsec Security Association (SA)中可以同時使用ESPAH,而ESP擁有和AH相同的認證功能,以及數據保護方法,所以只使用ESP就是最理想的。

 

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