如圖1所示,Router A為公司分支機構網關,Router B為公司總部網關,分支機構與總部通過Internet建立通信。分支機構子網為10.1.1.0/24,公司總部子網為 10.1.2.0/24。現公司希望兩子網通過Internet實現互訪,且它們通信的流量可以受IPSec安全保護。
圖1 采用缺省IKE安全提議建立IPSec隧道配置示列的拓撲結構
本示例以IKE動態協商方式來建立IPSec隧道,并且為了簡化配置,對其中絕大多數安全參數采用缺省配置(包括IKE安全提議中的全部參數和IKE安全策略可選參數)進行部署。其實,如果沒有特別的要求,大多數情況下都可以這樣配置,這樣不僅可以減少工作量,也可以在安全方面滿足用戶的需求。
1. 基本配置思路分析
根據《基于ACL方式通過IKE協商建立IPSec隧道》介紹的配置任務,再結合本示例的具體要求(IKE安全提議全部采用缺省配置),可得出如下所示的本示例基本配置思路。
(1)配置各網關設備內/外網接口當前的IP地址,以及分支機構公網、私網與總部公網、私網互訪的靜態路由
這項配置包括配置連接內/外網的接口IP地址,以及到達對端內/外網的靜態路由,保證兩端路由可達。此處需要了解分支機構和公司總部Internet網關所連接的ISP設備接口的IP地址。
(2)配置ACL,以定義需要IPSec保護的數據流
本示例中,需要保護的數據流是分支機構子網與公司總部子網之間的通信,其需要在IPSec隧道中傳輸,其他通過Internet的訪問(如訪問Web網站)是直接在Internet中傳輸的。
(3)配置IPSec安全提議,定義IPSec的保護方法
無論是手工方式,還是IKE動態協商方式建立IPSec隧道,IPSec安全提議必須手工配置。包括IPSec使用的安全協議、認證/加密算法以及數據的封裝模式。當然這些安全參數也都有缺省取值,需要時也可直接采用。
本示例中路由器運各安全參數的缺省取值如下:安全協議為ESP協議,ESP協議采用SHA2-256認證算法,ESP協議采用AES-256加密算法,安全協議對數據的封裝模式采用隧道模式。本示例將IPSec安全提議的認證算法修改為SHA1,修改加密算法為AES-128,其他均采用缺省值。
(4)配置IKE對等體,定義對等體間IKE協商時的屬性
本示例假設采用IKEv1版本來配置IKE對等體,根據《基于ACL方式通過IKE協商建立IPSec隧道》所示的IKE對等體配置步驟配置兩端對等體的認證密鑰、對端IP地址(本端IP地址可不配置)、本端ID類型(兩端配置的ID類型必須一致)、IKEv1協商模式等。
(5)配置安全策略,確定哪些數據流需要采用何種方法進行保護
本示例假設采用ISAKMP方式協商創建IPSec隧道,創建一個安全策略,然后在安全策略中引用前面定義的ACL、IPSec安全提議和IKE對等體,其他可選參數也全部采用缺省配置。
(6)在接口上應用安全策略
示例中分支機構和公司總部網關的WAN接口都有固定的公網IP地址,所以采用的是專線或者固定IP地址的光纖以太網方式接入Internet。所以,可直接在IPSec隧道端點設備的公網接口上應用已配置的安全策略組。
2. 具體配置步驟
下面按照前面所做的配置思路分析具體的配置方法。
前面介紹的配置思路的第(1)~(3)項配置任務與《基于ACL方式手工建立IPSec隧道》介紹的配置步驟中的第(1)~(3)的配置方法完全一樣,不再贅述。下面僅介紹上述第(4)~(6)項配置任務。
第(4)項任務:分別在Router A和Router B上配置IKE對等體。
在Router A和Router B上配置IKE對等體,并根據IKE安全提議的缺省配置要求,配置預共享密鑰(假設為huawei)和對端ID(缺省以IP地址方式進行標識)兩端均采用缺省的主模式協商方式,采用缺省的以IP地址作為ID類型,均不配置本端IP地址,因為缺省情況下,路由選擇到對端的出接口,將該出接口地址作為本端IP地址。
[Router A] ike peer spub #---配置對等體名稱為spub
[Router A-ike-peer-spub] undo version 2 #---取消對IKEv2版本的支持
[Router A-ike-peer-spub] pre-shared-key simple huawei #---配置預共享密鑰認證方法的共享密鑰為huawei,兩端的密鑰必須一致
[Router A-ike-peer-spub] remote-address 202.138.162.1 #---配置對端IPSec端 點IP地址為202.138.162.1
[Router A-ike-peer-spub] quit
[Router B] ike peer spua
[Router B-ike-peer-spub] undo version 2
[Router B-ike-peer-spua] pre-shared-key simple huawei
[Router B-ike-peer-spua] remote-address 202.138.163.1
[Router B-ike-peer-spua] quit
此時分別在Router A和Router B上執行display ike peer,操作會顯示所配置的信息,以下是在Router A上執行該命令的輸出示例。
[Router A] display ike peer name spub verbose
----------------------------------
Peername :spub
Exchangemode :mainonphase1
Pre-shared-key :huawei
Local IDtype :IP
DPD :Disable
DPDmode :Periodic
DPDidletime :30
DPDretransmitinterval :15
DPDretrylimit :3
Hostname :
Peer Ipaddress :202.138.162.1
VPNname :
Local IPaddress :
Remotename :
Nat-traversal :Disable
Configured IKEversion :Versionone
PKIrealm :NULL
Inband OCSP :Disable
----------------------------------
第(5)項任務:分別在Router A和Router B上創建安全策略
本示例采用通過ISAKMP創建IKE動態協商方式的安全策略,只配置那些必選的配置步驟(包括指定引用的IPSec安全提議和ACL,指定對端對等體名稱),可選的配置步驟均采用缺省配置。
[Router A] ipsec policy client 10 isakmp #---創建名為client,序號為10的安全策略
[Router A-ipsec-policy-isakmp-client-10] ike-peer spub #---指定對等體名稱為 spub
[Router A-ipsec-policy-isakmp-client-10] proposal pro1 #---引用前面已創建的IPSec安全提議pro1
[Router A-ipsec-policy-isakmp-client-10] security acl 3100 #---引用前面已定義的用于指定需要保護數據流的ACL 3100
[Router A-ipsec-policy-isakmp-client-10] quit
[Router B] ipsec policy server 10 isakmp
[Router B-ipsec-policy-isakmp-server-10] ike-peer spua
[Router B-ipsec-policy-isakmp-server-10] proposal pro1
[Router B-ipsec-policy-isakmp-server-10] security acl 3100
[Router B-ipsec-policy-isakmp-server-10] quit
此時分別在Router A和Router B上執行display ipsec policy操作,會顯示所配置的信息,以下是在Router A上執行該命令的輸出示例。
[Router A] display ipsec policy name client
===========================================
IPSec policy group:“client”
Using interface:
===========================================
Sequencenumber:10 #---IPSec策略組序號為10
Securitydataflow:3100 #---引用ACL3100
Peername: spub #---對端對等體名稱為spub
Perfect forward secrecy: None
Proposalname: pro1 #---IPSec安全提議名稱為pro1
IPSec SAlocalduration(timebased):3600seconds #---以時間為基準的IPSec SA生存周期采用缺省的3600秒
IPSec SAlocalduration(trafficbased):1843200kilobytes #---以流量為基準的 IPSec SA生存周期采用缺省的180MB
Anti-replaywindowsize:32 #---抗重放窗口大小采用缺省的32位
SAtriggermode:Automatic #---IPSec SA協商采用缺省的自動觸發模式
Routeinject:None #---采用缺省的不啟用路由注入功能
Qospre-classify:Disable #---采用缺省的不啟用對原始報文信息進行預提取功能
第(6)項任務:分別在Router A和Router B的接口(連接Internet的公網接口)上應用各自的安全策略組,使通過這些接口發送的興趣流可以被IPSec保護。
[Router A] interface gigabitethernet 1/0/0
[Router A-Gigabit Ethernet1/0/0] ipsec policy client
[Router A-Gigabit Ethernet1/0/0] quit
[Router B] interface gigabitethernet 1/0/0
[Router B-Gigabit Ethernet1/0/0] ipsec policy server
[Router B-Gigabit Ethernet1/0/0] quit
3. 配置結果驗證
配置成功后,在分支機構主機PC A執行ping操作可以ping通位于公司總部網絡的主機PC B,但它們之間的數據傳輸是被加密的,執行命令display ipsec statistics esp可以查看數據包的統計信息。
在Router A上執行display ike sa操作,結果如下例所示。其中“Conn-ID”為SA標識符;“Peer”表示SA的對端IP地址,如果SA未建立成功,此項目內容顯示為0.0.0.0(此處已正確顯示對端IP地址,所以證明已成功建立SA);“RD”(READY)表示SA已建立成功,“ST”(STAYALIVE)表示本端是SA協商發起方不顯示ST則表示本端為響應方;“Phase”列中的“1”或“2”分別代表該SA是第一階段的IKA SA,還是第二階段的IPSec SA。
[Router A] display ike sa
Conn-ID Peer VPN Flag(s) Phase
-----------------------------------------------
16 202.138.162.1 0 RD|ST v1:2
14 202.138.162.1 0 RD|ST v1:1
Flag Description:
RD--READY ST--STAYALIVE RL--REPLACED FD--FADING TO-- TIMEOUT
分別在Router A和Router B上執行display ipsec sa操作,查看當前IPSec SA的相關 信息,以下是在Router A上執行該命令的輸出示例。
[Router A] display ipsec sa
===============================
Interface:Gigabit Ethernet1/0/0 #---表示應用安全策略的接口
Path MTU: 1500
===============================
------------------
IPSec policy name:“client”
Sequencenumber :10
Acl Group :3100
Aclrule :5 #---匹配的ACL規則號為5
Mode :ISAKMP #---表示是通過IKE動態協商方式安全策略建立SA
------------------
Connection ID :16 #---這是IPSec SA標識符
Encapsulationmode:Tunnel #---采用隧道封裝模式
Tunnellocal :202.138.163.1
Tunnelremote :202.138.162.1
Flowsource :10.1.1.0/0.0.0.2550/0 #---數據流的源地址段,最后兩個0是 表示ACL協議號和端口號
Flowdestination :10.1.2.0/0.0.0.2550/0 #---數據流的目的地址段
Qospre-classify :Disable #---沒啟用報文信息預提取功能
[Outbound ESPSAs] #---以下部分是出方向ESPSA參數
SPI:1026037179(0x3d2815bb) #協商生成的SPI參數
Proposal:ESP-ENCRYPT-AES-18ESP-AUTH-SHA1 #---IPSec安全提議參數配置
SA remaining key duration (bytes/sec): 1887436800/3596
Maxsentsequence-number:5 #---當前發送的ESP報文的最大序列號為5
UDPencapsulationusedfor NATtraversal:N #---沒啟用NAT透傳功能
[Inbound ESPSAs] #---以下部分是入方向ESPSA參數
SPI: 1593054859 (0x5ef4168b)
Proposal: ESP-ENCRYPT-AES-18 ESP-AUTH-SHA1
SA remaining key duration (bytes/sec): 1887436800/3596
Maxreceivedsequence-number:4 #---當前接收的ESP報文的最大序列號為4
Anti-replaywindowsize:32 #---抗重放窗口大小為32位
UDP encapsulation used for NAT traversal: N