配置strongSwan和H3C VSR的IPsec对接案例

171ffce093a8592eec96ba0a614214cd.gif

正文共:888 字 10 图,预估阅读时间:1 分钟

strongSwan是一个开源的基于IPsec的VPN解决方案,经过前面几篇文章的铺垫,今天终于可以测试strongSwan和华三设备的对接情况了。

strongSwan的默认安装路径是/etc/strongswan/,这里面比较重要的就是ipsec.conf和ipsec.secrets这两个配置文件了。这两个文件的配置已经指导过了,有需要的小伙伴可以参考strongSwan之ipsec.conf配置手册)和(strongSwan之ipsec.secrets配置手册

cac7a3a67a7b65207d336919d0026c9e.png

对组网拓扑稍作调整,用一台华三VSR替换掉Linux2主机,使Linux服务器和VSR直接对接,如下图所示:

aaa9d16e871aa027e7c6f901c5a9193e.png

对比华三设备配置,讲解Linux主机如何配置strongSwan中,我们已经对strongSwan和VSR的IPsec配置进行了初步对比,简单回顾一下:

先看VSR和strongSwan一样的地方:第一阶段的协商模式默认都是主模式,第二阶段默认的加密模式都是ESP,报文封装模式默认都是隧道模式。

再看有差别的地方,strongSwan的ipsec.conf配置文件如下:

# cat /etc/strongswan/ipsec.conf
conn swan
  authby = psk
  keyexchange=ikev1
  left=12.1.1.1
  leftsubnet=11.1.1.0/24
  right=12.1.1.2
  rightsubnet=22.1.1.0/24
  auto=route

这里面有隐藏的默认配置:

conn swan
  leftid=12.1.1.1
  rightid=12.1.1.2
  ike = aes128-sha256-modp3072
  esp = aes128-sha256

这里有个问题,就是IKE算法中的PRF-modp3072算法华三暂时是不支持的。同时strongSwan有配置说明,如果没有给出PRF,则为完整性定义的算法将用于PRF,所以我们把配置修改为ike = aes128-sha256试一下。

到这里,strongSwan的配置就完成了。

conn swan
  authby = psk
  keyexchange=ikev1
  left=12.1.1.1
  leftid=12.1.1.1
  leftsubnet=11.1.1.0/24
  right=12.1.1.2
  rightid=12.1.1.2
  rightsubnet=22.1.1.0/24
  auto=route
  ike = aes128-sha256
  esp = aes128-sha256
# cat /etc/strongswan/ipsec.secrets
12.1.1.2 12.1.1.1 : PSK swan

接下来就是比较拿手的H3C配置了,按照strongSwan的配置进行调整,直接上配置:

#
ike keychain swan
 pre-shared-key address 12.1.1.1 255.255.255.0 key simple swan
#
ike proposal 10
 encryption-algorithm aes-cbc-128
 authentication-algorithm sha256
#
ike profile swan
 keychain swan
 local-identity address 12.1.1.2
 match remote identity address 12.1.1.1 255.255.255.0
 proposal 10
#
acl advanced 3402
 rule 0 permit ip source 22.1.1.0 0.0.0.255 destination 11.1.1.0 0.0.0.255
#
ipsec transform-set swan
 esp encryption-algorithm aes-cbc-128
 esp authentication-algorithm sha256
#
ipsec policy swan 10 isakmp
 transform-set swan
 security acl 3402
 local-address 12.1.1.2
 remote-address 12.1.1.1
 ike-profile swan
#
interface GigabitEthernet3/0
 ipsec apply policy swan

然后触发一下,发现IPsec协商失败,状态未知。

b993d5540b70b262b46681ef1840e522.png

在Linux端查看也是IKE SA建立失败。

284ba240e2be9b93a6b8b6c4aaf7389c.png

在VSR上进行debug,发现有报错,提示“No HASH in notification payload.”,翻译一下就是说通知有效负载中没有HASH。

2a28de8d5b929ecd10088776a20f71ff.png

然后抓包看一下。

c595358d5805864b2da4c0700563d324.png

我们发现DH组和生命周期信息还是存在一些差异,修改strongSwan的算法配置为ike = aes128-sha256-modp1024,对应的,调整VSR中ike proposal的DH组为2(1024-bit),命令dh group2。同时调整strongSwan的ikelifetime为86400(1天)。

ike = aes128-sha256-modp1024
ikelifetime=86400

再次触发一下,通了!

d5bd472ce0b3370caf73bae9c6de4279.png

查看VSR上相关的SA信息。

b176d478063d7dea106efe27c43205b7.png

查看strongSwan的相关状态信息。

b11dca107e1243ea95da3a6191c00bc6.png

报文交互也是正常的。

fb54d7e98018350b46a1079699c8012b.png

看来strongSwan和H3C的IPsec对接也不难啊!8634c5a25059cba3826a559846726ab0.png

最后给一份完整的设备配置。

# cat /etc/strongswan/ipsec.conf
conn swan
  authby = psk
  keyexchange=ikev1
  left=12.1.1.1
  leftid=12.1.1.1
  leftsubnet=11.1.1.0/24
  right=12.1.1.2
  rightid=12.1.1.2
  rightsubnet=22.1.1.0/24
  auto=route
  ike = aes128-sha256-modp1024
  esp = aes128-sha256
  ikelifetime=86400
# cat /etc/strongswan/ipsec.secrets
12.1.1.1 12.1.1.2 : PSK swan

VSR配置:

#
interface GigabitEthernet3/0
 ipsec apply policy swan
#
acl advanced 3402
 rule 0 permit ip source 22.1.1.0 0.0.0.255 destination 11.1.1.0 0.0.0.255
#
ipsec transform-set swan
 esp encryption-algorithm aes-cbc-128
 esp authentication-algorithm sha256
#
ipsec policy swan 10 isakmp
 transform-set swan
 security acl 3402
 local-address 12.1.1.2
 remote-address 12.1.1.1
 ike-profile swan
#
ike profile swan
 keychain swan
 local-identity address 12.1.1.2
 match remote identity address 12.1.1.1 255.255.255.0
 proposal 10
#
ike proposal 10
 encryption-algorithm aes-cbc-128
 dh group2
 authentication-algorithm sha256
#
ike keychain swan
 pre-shared-key address 12.1.1.1 255.255.255.0 key simple swan

挺简单的,不是吗?

228f7f966a9c9b194dc376b45805afdd.gif

长按二维码
关注我们吧

fd019a4539384f8a093edbc255be0b04.jpeg

ae61cdb4b3f646dd03d76a1edd5037e1.png

对比华三设备配置,讲解Linux主机如何配置strongSwan

如果吧Linux主机作为路由器转发流量,性能可靠吗?

strongSwan之ipsec.conf配置手册

HPE VSR配置穿越NAT场景下的ADVPN案例

一篇能解决90%以上SSL VPN问题的武林秘籍

Wireshark如何解密IPSec报文?

使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网

ADVPN和IPsec有啥关系?

  • 17
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Danileaf_Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值