实验:两个网关之间通过IKE方式协商IPSec VPN隧道(采用预共享密钥认证)

组网需求

网络A和网络B分别通过FW_A和FW_B连接到Internet。网络环境描述如下:

  • 网络A属于10.1.1.0/24子网,通过接口GigabitEthernet 0/0/3与FW_A连接。
  • 网络B属于10.1.2.0/24子网,通过接口GigabitEthernet 0/0/3与FW_B连接。
  • FW_A和FW_B路由可达。

通过组网实现如下需求:在FW_A和FW_B之间建立IKE方式的IPSec隧道,使网络A和网络B的用户可通过IPSec隧道互相访问。

HCIE-Security Day26:IPSec:实验(一)两个网关之间通过IKE方式协商IPSec PN隧道(采用预共享密钥认证)_封装

操作步骤

1、配置接口ip地址和安全区域,配置安全策略默认放行

2、配置静态路由确保r1和r3互通

 HCIE-Security Day26:IPSec:实验(一)两个网关之间通过IKE方式协商IPSec PN隧道(采用预共享密钥认证)_安全策略_02

 3、在f1上配置ipsec策略,并在接口上应用此ipsec策略

3.1 定义被保护的数据流。

通过acl(permit)指定需要ipsec保护的数据流。一个ipsec安全策略中只能引用一个acl。

在sa的出方向上,匹配acl将被ipsec保护,具体指:报文经过ipsec加密处理后再发送。未匹配任何permit规则或匹配deny的保护将不会被保护,即报文直接转发。对等体间匹配一条permit规则即匹配一个需要保护的数据流,则对应生成一对sa。

在sa的入方向上,经过ipsec保护的报文将被解封装处理,未经过ipsec保护的报文正常转发。

若不同的数据流有不同的安全要求,需要创建不同的acl和相应的ipsec安全策略

若不同的数据流的安全要求相同,可以在一条acl中配置多条rule来保护不同的数据流

ipsec隧道两端的acl规则定义的协议类型要一致,如一端是ip协议,另一端也必须是ip协议。

//f1
acl number 3000//应当采用高级acl,可以对ip、tcp、dscp、udp、gre等进行筛选
rule 5 permit ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
//f2
acl number 3000
rule 5 permit ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255

3.2 配置ipsec 安全提议。缺省参数可不设置

ipsec安全提议是安全策略或者安全框架的一个组成部分,包括了ipsec使用的安全协议、认证、加密算法以及数据的封装模式,定义了ipsec的保护方法,为ipsec协商sa提供各种安全参数。ipsec隧道两端设备需要配置相同的安全参数。

//f1
ipsec proposal tran1
transform esp//配置安全协议,可以是ah、esp、ah-esp,默认是esp
esp authentication-algorithm sha2-256//配置esp协议使用的认证算法,模式是sha2-256
esp encryption-algorithm aes-256//配置esp协议使用的加密算法,模式人aes-256
encapsulation-mode tunnel//配置安全协议对数据的封装模式,可以是transport、tunnel、auto,默认是tunnel
//f2
ipsec proposal tran1
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-256

3.3 配置ike安全提议

ike安全提议是ike对等体的一个组成部分,定义了对等体进行ike协商时使用的参数,包括加密算法、认证方法、认证算法、dh组和ike安全联盟的生成周期。

ike协商时,协商发起方会将自己的ike安全提议发送给对端,由对端进行匹配,协商响应方按照优先级顺序进行匹配,匹配的ike安全提议将被用来建立ike的安全隧道。

优先级由ike安全提议的序号表示,数值越小越优先。

ike安全提议的匹配原则是:协商双方具有相同的加密算法、认证方法、认证算法和dh组。匹配的ike安全提议的ike sa的生存周期取两端的最小值。

//f1f2
ike proposal 10
encryption-algorithm aes-256//配置ike协商所使用的加密算法。默认是aes-256
dh group14//配置ike协商时采用的dh组,默认是group14
authentication-algorithm sha2-256//配置ikev1协商时所使用的认证算法,默认是sha2-256
authentication-method pre-share//配置认证方法,默认是pre-shared key认证方法
integrity-algorithm hmac-sha2-256//配置ikev2协商时所使用的完整性算法,默认是hmac-sha2-256
prf hmac-sha2-256//配置ikev2协商时所使用的伪随机数产生函数的算法,默认是hmac-sha2-256

3.4 配置ike peer

配置ike动态协商方式建立ipsec隧道时,需要引用ike对等体,并配置ike协商时对等体间的一系列属性。

//f1
ike peer b//创建ike对等体
pre-shared-key Test!1234//配置身份认证参数,默认是预共享密钥方式
ike-proposal 10//引用ike安全提议
remote-address 1.1.5.1//配置ike协商时对端ip地址
version 1|2 //配置ike对等体使用的ike协议版本号,默认同时支持ikev1和ikev2两个版本
exchange-mode main/aggressive/auto//配置ikev1阶段1协商模式,默认是主模式
//f2
ike peer a
pre-shared-key Test!1234
ike-proposal 10
remote-address 1.1.3.1

3.5 配置ipsec策略(isakmp方式)

ipsec安全策略是创建sa的前提,规定了对哪些数据流采用哪种保护方法,配置时,通过引用acl和ipsec安全提议,将acl定义的数据流和ipsec安全提议定义的保护方法关联起来,并可以指定sa的协商方式、ipsec隧道的起点和终点,所需要的密钥和sa的生存周期等。

一个ipsec安全策略由名称和序号共同唯一确定,相同名称的ipsec安全策略为一个ipsec安全策略组。ipsec安全策略分为手工方式和isakmp方式和策略模板方式。其中isakmp方式ipsec安全策略和策略模板方式ipsec安全策略均由ike自动协商生成各个参数。

isakmp方式适用于对端ip地址固定的场景,一般用于分支的配置。

//f1
ipsec policy map1 10 isakmp//创建isakmp方式ipsec安全策略
security acl 3000//引用acl
ike-peer b//引用ike peer
proposal tran1//引用ipsec安全提议
//f2
ipsec policy map1 10 isakmp
security acl 3000
ike-peer a
proposal tran1

3.6 应用ipsec策略组map1

//f1
interface GigabitEthernet1/0/1
ipsec policy map1
//f2
interface GigabitEthernet1/0/1
ipsec policy map1

验证和分析

1、在r1执行ping命令,触发ike协商

HCIE-Security Day26:IPSec:实验(一)两个网关之间通过IKE方式协商IPSec PN隧道(采用预共享密钥认证)_封装_03  若ike协商成功,隧道建立后可以ping通,反之则不行。

在f1和f2之间抓包。

HCIE-Security Day26:IPSec:实验(一)两个网关之间通过IKE方式协商IPSec PN隧道(采用预共享密钥认证)_加密算法_04

2、分别在f1和f2上执行display ike sa、 display ipsec sa会显示安全联盟的建立情况。 

[f2]dis ike sa
2022-03-14 15:50:36.430

IKE SA information :
Conn-ID Peer VPN Flag(s) Phase RemoteType RemoteID
--------------------------------------------------------------------------------

2 1.1.3.1:500 RD|A v2:2 IP 1.1.3.1
1 1.1.3.1:500 RD|A v2:1 IP 1.1.3.1

Number of IKE SA : 2
--------------------------------------------------------------------------------
Flag Description:
RD--READY ST--STAYALIVE RL--REPLACED FD--FADING TO--TIMEOUT
HRT--HEARTBEAT LKG--LAST KNOWN GOOD SEQ NO. BCK--BACKED UP
M--ACTIVE S--STANDBY A--ALONE NEG--NEGOTIATING

 以上显示ike sa建立成功。

[f2]dis ipsec sa
2022-03-14 15:53:02.390

ipsec sa information:

===============================
Interface: GigabitEthernet1/0/1
===============================

-----------------------------
IPSec policy name: "map1"
Sequence number : 10
Acl group : 3000
Acl rule : 5
Mode : ISAKMP
-----------------------------
Connection ID : 2
Encapsulation mode: Tunnel
Holding time : 0d 0h 6m 30s
Tunnel local : 1.1.5.1:500
Tunnel remote : 1.1.3.1:500
Flow source : 10.1.2.0/255.255.255.0 0/0-65535
Flow destination : 10.1.1.0/255.255.255.0 0/0-65535

[Outbound ESP SAs]
SPI: 196061125 (0xbafa7c5)
Proposal: ESP-ENCRYPT-AES-256 ESP-AUTH-SHA2-256-128
SA remaining key duration (kilobytes/sec): 10485760/3210
Max sent sequence-number: 5
UDP encapsulation used for NAT traversal: N
SA encrypted packets (number/bytes): 4/336

[Inbound ESP SAs]
SPI: 193769985 (0xb8cb201)
Proposal: ESP-ENCRYPT-AES-256 ESP-AUTH-SHA2-256-128
SA remaining key duration (kilobytes/sec): 10485760/3210
Max received sequence-number: 1
UDP encapsulation used for NAT traversal: N
SA decrypted packets (number/bytes): 4/336
Anti-replay : Enable
Anti-replay window size: 1024

以上显示ipsec sa建立成功。