肥仔教程网

SEO 优化与 Web 开发技术学习分享平台

实战分析IPSec安全协议AH的封装模式(2)

概述

在“实战分析IPSec安全协议AH的封装模式(1)”文章中,主要介绍IPSec技术相关的基础概念,如安全联盟、安全协议和封装模式,本期文章正式进入实战演练,通过模拟实际场景的抓包分析,来验证IPSec技术中安全协议AH在不同封装模式下呈现不同的数据包。

实战模拟验证目标

在传输模式中,AH头被插入到IP头与传输层协议头之间,保护TCP/UDP/ICMP负载;

在隧道模式下,AH头被插到原始IP头之前,另外生成一个新的报文头放到AH头之前,保护IP头和负载。

实战模拟场景组网拓扑图

R_1和R_2设备之间建立IPSec隧道,定义IPSec保护的数据流是12.12.12.1和23.23.23.1之间相互访问的流量,组网拓扑如下图所示;

实战模拟场景设备关键配置

R_1设备配置

#配置一个IPv4高级ACL,定义要保护由子网12.12.12.1/32去往23.23.23.1/32的数据流。

acl number 3001

rule permit ip source 12.12.12.1 0 destination 23.23.23.1 0

#配置到R_2所在子网的静态路由。12.12.12.2为R_1直连下一跳地址

ip route-static 23.23.23.0 30 12.12.12.2

# 创建IPsec安全提议tran2

ipsec transform-set tran2

# 配置安全协议对IP报文的封装形式为隧道模式,设备默认是隧道模式。

encapsulation-mode tunnel

# 配置采用的安全协议为AH。

protocol ah

# 配置AH协议采用的认证算法为HMAC-SHA1。

ah authentication-algorithm sha1

# 创建一条手工方式的IPsec安全策略,名称为map2,序列号为11。

ipsec policy map2 11 manual

# 指定引用的IPsec安全提议为tran2。

transform-set tran2

# 指定引用ACL 3101。

security acl 3001

# 指定IPsec隧道对端IP地址为23.23.23.1。

remote-address 23.23.23.1

#配置AH协议的出方向SPI为22222,入方向SPI为11111。

sa spi inbound ah 11111

sa spi outbound ah 22222

#配置AH协议的出方向SA的密钥为明文字符串22222,入方向SA的密钥为明文字符串11111。

sa string-key inbound ah simple 11111

sa string-key outbound ah simple 22222

# 在接口GigabitEthernet0/0上应用IPsec安全策略map2。

interface GigabitEthernet0/0

ip address 12.12.12.1 255.255.255.252

ipsec apply policy map2

R_2设备配置

#配置一个IPv4高级ACL,定义要保护由子网23.23.23.1/32去往12.12.12.1/32的数据流。

acl number 3001

rule permit ip source 23.23.23.1 0 destination 12.12.12.1 0

#配置到R_1所在子网的静态路由。23.23.23.2为R_2直连下一跳地址

ip route-static 12.12.12.0 30 23.23.23.2

#创建IPsec安全提议tran2

ipsec transform-set tran2

#配置安全协议对IP报文的封装形式为隧道模式,设备默认是隧道模式。

encapsulation-mode tunnel

#配置采用的安全协议为AH。

protocol ah

#配置AH协议采用的认证算法为HMAC-SHA1。

ah authentication-algorithm sha1

#创建一条手工方式的IPsec安全策略,名称为map2,序列号为11。

ipsec policy map2 11 manual

#指定引用的IPsec安全提议为tran2。

transform-set tran2

#指定引用ACL 3101。

security acl 3001

-#指定IPsec隧道对端IP地址为12.12.12.1。

remote-address 12.12.12.1

#配置AH协议的出方向SPI为11111,入方向SPI为22222。

sa spi inbound ah 22222

sa spi outbound ah 11111

#配置AH协议的出方向SA的密钥为明文字符串11111,入方向SA的密钥为明文字符串22222。

sa string-key inbound ah simple 22222

sa string-key outbound ah simple 11111

#在接口GigabitEthernet0/2上应用IPsec安全策略map2。

interface GigabitEthernet0/2

ip address 23.23.23.1 255.255.255.252

ipsec apply policy map2

两台设备配置完毕后,分别查看两台设备IPSec SA建立情况,详细情况如下所示;

查看R_1的IPSec SA

查看R_2的IPSec SA

实战模拟场景抓包分析

使用命令reset ipsec statistics重置IPSec统计报文;

使用命令dis ipsec statistics查看IPSec统计报文;

如下图所示,重置后的IPSec统计报文是0;

在R_2路由器的G0/2接口开启抓包,然后R_1路由器ping测试路由器R_2,命令如下;ping -a 12.12.12.1 23.23.23.1;

Ping测试结果及IPSec统计报文如下图所示;

IPSec安全协议AH的封装模式采用隧道模式,R_2路由器G0/2的抓取的数据包如下图所示;

即AH头被插到原始IP头之前,另外生成一个新的报文头放到AH头之前,保护IP头和负载;

修改R_1和R_2之间IPSec安全协议AH的封装模式为传输模式的方法如下所示;

[R_1]ipsec transform-set tran2

[R_1-ipsec-transform-set-tran2]encapsulation-mode transport

[R_2]ipsec transform-set tran2

[R_2-ipsec-transform-set-tran2]encapsulation-mode transport

当IPSec安全协议AH的封装模式采用传输模式,R_2路由器G0/2的抓取的数据包如下图所示;

AH头被插入到IP头与传输层协议头之间,保护ICMP负载

总结

通过本次实战的模拟场景验证了:

1、在传输模式中,AH头被插入到IP头与传输层协议头之间,TCP/UDP/ICMP负载;

2、在隧道模式下,AH头被插到原始IP头之前,另外生成一个新的报文头放到AH头之前,保护IP头和负载;

另外,设备间IPSec安全协议AH的封装模式采用传输模式,要求应用于数据流的源地址和目的地址与IPsec隧道两端地址相同。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言