薛佳宇,V7防火墙国密IPSEC隧道建议失败(数字信封方式)
组网及说明
现场使用ipsec 国密主模式数字信封认证方式,与各分支对接
告警信息
Aug 4 18:07:34:228 2022 H3C IKE/7/ERROR: -COntext=1; vrf = 0, local = 2.2.2.2, remote = 1.1.1.5/500
Can't match an available PKI domain.
问题描述
1、IPSEC隧道无法正常建立,dis ike sa看到状态为unknow
<H3C>dis ike sa
Connection-ID Remote Flag DOI
------------------------------------------------------------------
259 1.1.1.1/500 Unknown IPsec
250 1.1.1.2/500 Unknown IPsec
247 1.1.1.3/500 Unknown IPsec
240 1.1.1.4/500 Unknown IPsec
249 1.1.1.5/500 Unknown IPsec
261 1.1.1.6/500 Unknown IPsec
过程分析
1、 检查ipsec基础配置无问题
2、 开启debug ike all remote-address x.x.x.x,并reset ike sa收集ipsec协商日志,在收到对端回复的2号消息后看到如下报错:
<H3C>ddebug ike all remote-address 1.1.1.5
This command is CPU intensive and might affect ongoing services. Are you sure you want to continue? [Y/N]:y
<H3C>t d
<H3C>t m
<H3C>rest ike sa
<H3C>
*Aug 3 18:38:37:380 2022 H3C IKE/7/ERROR: -COntext=1; vrf = 0, local = 2.2.2.2, remote = 1.1.1.5/500
Can't match an available PKI domain.
3、 根据上述报错,同时跟现场了解到此前是手动导入证书后直接刷的配置脚本,因此怀疑刷入的PKI相关配置与实际导入的证书信息不匹配。
4、 登陆防火墙web查看local证书的CN信息:对象àPKIà证书,找到对应pki domain下的local证书,查看证书内容中的subject部分,确认O、OU和CN的信息。
5、 设备的PKI相关配置如下:
#
pki domain pki1
certificate request entity entity1
public-key sm2 signature name test1cer encryption name test1pfx
pkcs7-encryption-algorithm sm4-cbc
crl url ldap://x.x.x.x
revocation-check method crl none
crl update-period 720
#
pki entity entity1
common-name xxxxx
organization-unit xxxxxx
organization xxxxx
#
6、 通过对比,发现证书的O、OU、CN与设备pki entity中的配置不一致,根据实际证书内容修改pki entity配置,随后reset ike sa,但是隧道还是建立失败,此时debug ike all依旧显示:
Aug 4 18:07:34:228 2022 H3C IKE/7/ERROR: -COntext=1; vrf = 0, local = 2.2.2.2, remote = 1.1.1.5/500
Can't match an available PKI domain.
7、 再次检查配置,看到pki domain pki1下存在public-key sm2 signature name test1cer encryption name test1pfx,这里配置的密钥对的名称需要跟实际导入证书的名称保持一致,跟现场核实找到正确的名称修改配置后再次reset ike sa
#
pki domain pki1
certificate request entity entity1
public-key sm2 signature name realcer encryption name realpfx
pkcs7-encryption-algorithm sm4-cbc
crl url ldap://x.x.x.x
revocation-check method crl none
crl update-period 720
#
8、 Ipsec隧道正常建立:
<H3C>dis ike sa
Connection-ID Remote Flag DOI
------------------------------------------------------------------
6961 1.1.1.2/500 RD IPsec
6962 1.1.1.3/500 RD IPsec
6960 1.1.1.5/500 RD IPsec
6963 1.1.1.4/500 RD IPsec
6966 1.1.1.6/500 RD IPsec
Flags:
RD--READY RL--REPLACED FD-FADING RK-REKEY
<H3C>
<H3C>dis ipsec sa 也正常
解决方法
1、修改pki entity中的配置与实际导入的证书的O、OU、CN保持一致
2、修改pki domain下public-key sm2 signature name xxxxx encryption namexxxxxx密钥对的名称需要跟实际导入证书的名称保持一致