IPSec 手动配置与自动配置(IKE动态协商)
手动配置IPSec 逻辑图
开始 手动定义参数 静态SPI值 固定密钥
authentication/encryption-hex 无IKE协商 直接建立SA 流量匹配ACL时加密 通过SPI+密钥加解密 隧道维持至手动删除
关键逻辑:
- 无协商过程:所有参数(SPI、密钥)预先静态配置
- 对称配置:两端必须镜像设置SPI(入/出方向相反)
- 密钥固定:无自动更新机制,安全性较低
自动配置(IKE动态协商)逻辑图

关键逻辑:
- 两阶段协商 :
- 阶段1:建立管理通道(IKE SA),使用UDP 500/4500端口
- 阶段2:建立数据通道(IPSec SA),生成动态SPI和密钥
- 动态密钥:支持PFS(完美前向保密),定期更新密钥
- 自动恢复:网络中断后自动重新协商
核心区别对比图

阶段 | 手动配置 | 自动配置(IKE) |
---|---|---|
参数定义 | 管理员静态指定 | IKE协议动态协商 |
密钥管理 | 固定不变 | 定期自动更新 |
SPI生成 | 手动配置 | 系统自动分配 |
加密算法 | 预定义 | 两端协商最优算法 |
适用场景 | 测试/简单环境 | 生产环境/复杂网络 |
协议依赖 | 仅需ESP/AH | 依赖IKE(UDP 500+4500) |
配置复杂度 | 简单但易错 | 复杂但灵活 |
手动IPSec 协议交互流程图
总部路由器(R1) 分部路由器(R3) 阶段1:管理员预配置(无协议交互) 人工同步SPI和密钥 配置示例: acl 3001\nrule permit 192.168.10.0→192.168.20.0 ipsec sa manual\n spi inbound=1001 outbound=1002\n hex-key=1234.../5678... 镜像配置\n spi inbound=1002 outbound=1001\n hex-key相同 阶段2:流量触发加密 数据包+ESP头(SPI=1002)\nAES-256加密/SHA-256认证 数据包+ESP头(SPI=1001)\n相同算法解密 总部路由器(R1) 分部路由器(R3)
关键配置指令对应点:
-
SPI同步:
- R1出方向SPI 1002 = R3入方向SPI 1002
huawei! R1配置 ipsec sa manual sa-to-r3 10 outbound esp spi 1002 ! R3配置 ipsec sa manual sa-to-r1 10 inbound esp spi 1002
-
加密过程:
- 出站数据匹配ACL 3001后,使用SPI 1002的密钥加密
huaweidisplay ipsec sa brief # 查看加密计数
自动IPSec (IKEv1)协议交互流程图
总部(R1) 分部(R3) 阶段1:IKE SA协商(Main Mode) UDP 500: HDR,SA_i(proposal=10:aes-256/sha2-256) UDP 500: HDR,SA_r(同意proposal 10) KE,Nonce KE,Nonce IDi,Hash(预共享密钥验证) IDr,Hash(验证通过) 阶段2:IPSec SA协商(Quick Mode) HDR*,Hash,SA(proposal:aes-256),Nonce HDR*,Hash,SA(同意),Nonce HDR*,Hash(确认) 动态生成SPI和会话密钥 数据包+ESP头(动态SPI)\nAES-256加密 总部(R1) 分部(R3)
配置指令与协议交互对照:
-
阶段1配置:
huawei! 两端必须匹配的IKE参数 ike proposal 10 encryption-algorithm aes-256 authentication-algorithm sha2-256 dh group14 ike peer R3 pre-shared-key cipher Huawei@123 remote-address 23.0.0.3
-
阶段2配置:
huaweiipsec proposal tosH esp encryption-algorithm aes-256 esp authentication-algorithm sha2-256 ipsec policy POLICY1 10 isakmp ike-peer R3 proposal tosH
-
动态SPI查看:
huaweidisplay ipsec sa # 输出示例: SPI: 0x12345678 (动态生成) Encrypt algorithm: AES-256
关键配置与协议字段映射表
协议字段 | 华为配置指令 | 作用说明 |
---|---|---|
IKE SA_i/SA_r | ike proposal 10 |
协商加密算法/DH组 |
KE (Key Exchange) | dh group14 |
决定密钥交换强度 |
Hash Payload | pre-shared-key cipher |
身份认证凭证 |
IPSec SPI | 自动生成(手动配置则固定) | 唯一标识安全关联 |
ESP Encryption | esp encryption-algorithm aes-256 |
数据加密算法 |
-
现象 :
display ike sa
无输出 -
排查步骤:
-
检查UDP 500可达性:
huaweiping -c 1 -p 500 23.0.0.3
-
验证提议匹配:
huaweidisplay ike proposal # 确认两端aes-256/sha2-256一致
-
-
现象 :
display ipsec statistics
无计数增长 -
排查步骤:
-
检查ACL匹配:
huaweidisplay acl 3001 # 确认规则命中测试流量
-
验证策略应用:
huaweidisplay ipsec policy # 查看接口绑定状态
-
-
启用NAT穿透(适用于中间有NAT设备):
huaweiike peer R3 nat-traversal enable # 自动使用UDP 4500封装
-
配置PFS增强安全:
huaweiipsec policy POLICY1 10 isakmp pfs dh-group14 # 每次重协商使用新DH密钥
-
设置SA生存时间:
huaweiipsec policy POLICY1 10 isakmp sa duration time-based 86400 # 24小时后自动重协商
示例
[PC1] --- (Ethernet0/0/1) --- [AR1] --- (GE0/0/1: 2.2.2.1/24) --- [AR2 (ISP)] --- (GE0/0/0: 2.2.2.3/24) --- [AR3] --- (Ethernet0/0/1) --- [PC2]
| | |
| IP: 192.168.10.0/24 | GE0/0/0: 192.168.10.254/24 | GE0/0/0: 192.168.20.254/24 | IP: 192.168.20.0/24
| | | |
[Headquarters] [IPSec Tunnel] [Shangrao Branch]
一、基础网络配置(R1和R3必须先完成)
R1配置(总部)
huawei
sysname R1
# 配置内网接口(连接总部PC)
interface GigabitEthernet0/0/0
ip address 192.168.10.1 255.255.255.0
dhcp select interface # 可选:为PC分配IP
# 配置公网接口(连接ISP)
interface GigabitEthernet0/0/1
ip address 2.2.2.1 255.255.255.0
# 配置默认路由指向ISP
ip route-static 0.0.0.0 0.0.0.0 2.2.2.2
R3配置(分部)
huawei
sysname R3
# 配置内网接口(连接分部PC)
interface GigabitEthernet0/0/0
ip address 192.168.20.1 255.255.255.0
dhcp select interface
# 配置公网接口
interface GigabitEthernet0/0/1
ip address 2.2.2.3 255.255.255.0
# 默认路由
ip route-static 0.0.0.0 0.0.0.0 2.2.2.2
二、手动配置IPSec (静态密钥)
R1配置
huawei
# 定义需要加密的流量(总部→分部)
acl number 3000
rule 5 permit ip source 192.168.10.0 0.0.0.255 destination 192.168.20.0 0.0.0.255
# 1. 定义IPSec提案(加密/认证算法)
ipsec proposal a
esp authentication-algorithm sha2-256 # ESP认证算法(完整性保护)
esp encryption-algorithm aes-256 # ESP加密算法(数据加密)
# 2. 创建手动IPSec策略
ipsec policy a 1 manual # 策略名HF,序号1,手动模式
security acl 3000 # 绑定ACL 3000(定义感兴趣流)
proposal a # 引用上述提案
tunnel local 12.0.0.1 # 本端隧道源IP
tunnel remote 23.0.0.3 # 对端隧道目的IP
# 3. 配置安全关联 Security Association(SA)参数
sa spi inbound esp 12345 # 入方向SPI值(对端出方向需匹配)
sa string-key inbound esp cipher aaa # 入方向密钥(cipher表示加密存储)
sa spi outbound esp 54321 # 出方向SPI值(对端入方向需匹配)
sa string-key outbound esp cipher aaa # 出方向密钥
# 4. 应用到物理接口
interface GigabitEthernet0/0/1 # 公网接口
ipsec policy a # 应用名为a 的IPSec策略
R3配置
huawei
acl number 3000
rule 5 permit ip source 192.168.20.0 0.0.0.255 destination 192.168.10.0 0.0.0.255
ipsec proposal b
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-256
ipsec policy b 1 manual
security acl 3000
proposal b
tunnel local 23.0.0.3 # 本端IP与R1的remote IP对应
tunnel remote 12.0.0.1 # 对端IP与R1的local IP对应
# 注意SPI和密钥与R1相反!
sa spi inbound esp 54321 # 对应R1的outbound spi
sa string-key inbound esp cipher 123456
sa spi outbound esp 12345 # 对应R1的inbound spi
sa string-key outbound esp cipher 123456
interface GigabitEthernet0/0/1
ipsec policy b
三、自动配置IPSec (IKE动态协商)
R1配置
huawei
# 阶段1:IKE提议(加密管理通道)
ike proposal 10
encryption-algorithm aes-256 # 加密算法
dh group14 # 密钥交换组
authentication-algorithm sha2-256 # 完整性校验
authentication-method pre-share # 认证方式
sa duration 86400000
# 阶段1:IKE对等体
ike peer R3
ike-proposal 10
pre-shared-key cipher Huawei@123 # 预共享密钥
remote-address 2.2.2.3 # 对端IP
# 阶段2:IPSec提案(加密数据通道)
ipsec proposal r3-prop
esp encryption-algorithm aes-256 # 数据加密
esp authentication-algorithm sha2-256 # 数据完整性
# 绑定策略
ipsec policy policy-to-r3 10 isakmp
security acl 3001 # 匹配加密流量
ike-peer R3 # 引用IKE对等体
proposal r3-prop # 引用IPSec提案
# 应用到接口
interface GigabitEthernet0/0/1
ipsec policy policy-to-r3
R3配置
huawei
ike proposal 10 # 参数必须与R1完全一致!
encryption-algorithm aes-256
dh group14
authentication-algorithm sha2-256
authentication-method pre-share
ike peer R1
ike-proposal 10
pre-shared-key cipher Huawei@123
remote-address 2.2.2.1 # 指向R1的IP
ipsec proposal r1-prop
esp encryption-algorithm aes-256
esp authentication-algorithm sha2-256
ipsec policy policy-to-r1 10 isakmp
security acl 3001
ike-peer R1
proposal r1-prop
interface GigabitEthernet0/0/1
ipsec policy policy-to-r1
四、NAT豁免配置(防止IPSec流量被NAT干扰)
R1和R3均需配置
huawei
acl number 2000 # 创建NAT豁免ACL
rule 5 deny ip source 192.168.10.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 # 阻止总部→分部NAT
rule 10 permit ip # 允许其他流量NAT
# 应用到公网接口
interface GigabitEthernet0/0/1
nat outbound 2000
五、验证命令
huawei
# 查看IKE SA(阶段1)
display ike sa
# 预期结果:State字段为"RD"(已建立)
# 查看IPSec SA(阶段2)
display ipsec sa brief
# 预期结果:有inbound/outbound ESP记录
# 测试连通性
ping -a 192.168.10.1 192.168.20.1 # 从总部PC ping分部PC
关键问题排查表
现象 | 可能原因 | 解决方法 |
---|---|---|
IKE SA无法建立 | 预共享密钥不匹配/UDP 500被阻断 | 检查密钥/抓包确认UDP 500可达性 |
IPSec SA无流量 | ACL未匹配测试流量 | 使用ping -a 指定源IP或调整ACL规则 |
能ping通但数据未加密 | NAT未豁免流量 | 检查ACL 2000规则和nat outbound绑定 |