StrongSwan与Cisco CSR 1000V构建IPsec隧道时IKE第一阶段失败(IKE_SA被删除)求助
StrongSwan与Cisco CSR 1000V构建IPsec隧道时IKE第一阶段失败(IKE_SA被删除)求助
兄弟,看了你的配置和日志,问题根源一眼就找到了——日志里那句 IDir '10.0.1.189' does not match to 'Y.Y.Y.Y' 就是导致IKE_SA被删除的直接原因!
问题分析
Cisco CSR 1000V在IKE协商过程中,发送的身份ID是它的内部私网IP 10.0.1.189,但你在StrongSwan的ipsec.conf里把rightid硬指定成了对方的公网IP Y.Y.Y.Y,两边身份验证不匹配,StrongSwan直接终止了IKE_SA的建立。
具体修复步骤
修正身份ID配置
你有两个选择:- 方案一(更灵活,适配对方NAT场景):把
rightid=Y.Y.Y.Y改成rightid=%any,允许对方使用任意ID发起协商 - 方案二(更严谨,如果对方私网ID固定):直接改成
rightid=10.0.1.189,和日志里显示的Cisco设备ID一致
- 方案一(更灵活,适配对方NAT场景):把
修正IKE生命周期数值
你配置里的ikelifetime=288000s多了一个0,需求里要求的是28800秒,改成ikelifetime=28800s,避免生命周期不匹配导致协商失败。强制Phase2关闭PFS
需求里明确要求“Group 2(no PFS)”,所以要在ESP配置后加!强制匹配,关闭PFS,把esp=aes256-sha1改成esp=aes256-sha1!
修改后的核心配置片段
conn c2c-vpn type=tunnel keyexchange=ikev1 left=X.X.X.X leftid=X.X.X.X leftsubnet=172.31.8.0/24 leftauth=secret leftfirewall=no right=Y.Y.Y.Y rightid=%any # 这里替换成%any或10.0.1.189 rightsubnet=10.0.0.0/16 rightauth=secret rightfirewall=yes ike=aes256-sha1-modp1024! esp=aes256-sha1! aggressive=no fragmentation=yes ikelifetime=28800s lifetime=3600s keyingtries=%forever dpddelay=30s dpdtimeout=120s dpdaction=restart auto=start
额外检查项
- 确认
ipsec.secrets里的PSK和Cisco设备上的配置完全一致,包括大小写、特殊字符,哪怕一个空格错了都会导致验证失败 - 检查两边的防火墙/安全组是否允许UDP 500和4500端口的流量通过(日志里已经看到NAT-T切换到4500了,所以这两个端口都要开)
修改完成后重启StrongSwan服务(ipsec restart),再观察日志,应该能顺利完成IKE第一阶段的协商了。
备注:内容来源于stack exchange,提问作者9ieR
相关产品推荐
相关产品推荐

