strongSwan对接H3C

简介: strongSwan对接H3C

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

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

1677234919562.jpg

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

1677234939026.jpg

在(文章)中,我们已经对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协商失败,状态未知。

1677234991404.jpg

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

1677235006211.jpg

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

1677235012867.jpg

然后抓包看一下。

1677235018895.jpg

我们发现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

再次触发一下,通了!

1677235037600.jpg

查看VSR上相关的SA信息。

1677235051150.jpg

查看strongSwan的相关状态信息。

1677235056989.jpg

报文交互也是正常。

1677235062019.jpg

看来strongSwan和H3C的IPsec对接也不难啊!


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



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


挺简单的,不是吗?

相关文章
|
存储 数据安全/隐私保护 索引
Windows Server 各版本搭建文件服务器实现共享文件(03~19)
Windows Server 各版本搭建文件服务器实现共享文件(03~19)
|
IDE Java 开发工具
java编译通过,运行却提示找不到或无法加载主类的解决方案
java编译通过,运行却提示找不到或无法加载主类的解决方案
1952 0
|
网络协议 Unix Linux
CentOS7下利用FRR路由套件实现OSPF动态路由组网
CentOS7下利用FRR路由套件实现OSPF动态路由组网
1860 0
CentOS7下利用FRR路由套件实现OSPF动态路由组网
|
11月前
|
机器学习/深度学习 编解码 人工智能
STAR:南京大学联合字节开源视频超分辨率增强生成框架,视频清晰度一键提升,支持从低分辨率视频生成高分辨率视频
STAR 是由南京大学、字节跳动和西南大学联合推出的视频超分辨率框架,能够将低分辨率视频提升为高分辨率,同时保持细节清晰度和时间一致性。
2113 13
STAR:南京大学联合字节开源视频超分辨率增强生成框架,视频清晰度一键提升,支持从低分辨率视频生成高分辨率视频
|
SQL 缓存 分布式计算
手把手教你解决 Hive 的数据倾斜
数据倾斜是 Hive 中影响任务执行效率的现象,表现为某些任务处理的数据量或耗时远超其他任务。根本原因是 Shuffle 后 Key 分布不均,导致部分 Reduce 负载过高。常见场景包括空值聚合、不可拆分大文件、数值膨胀、不同数据类型 Join、Count(distinct) 计算以及表 Join 操作。解决方法包括过滤空值、转换数据类型、调整聚合策略、使用 MapJoin 等。通过合理优化,如设置 `hive.groupby.skewindata` 和 `hive.map.aggr` 参数,可以有效缓解数据倾斜问题。
2220 2
|
监控 Linux 数据处理
探索Linux命令needs-restarting:了解哪些服务需要重启
`needs-restarting`是Linux中用于检测因文件更新需重启的服务的工具。它对比服务状态与文件修改时间,快速识别需重启的服务,提供详细输出和可配置选项。命令参数如`--all`检查所有服务,`--service`针对特定服务,`--verbose`显示详细信息。使用时注意权限,谨慎重启,定期检查,并与其他系统管理工具结合使用。修改配置后,应运行此命令确保更新生效。
|
网络安全 网络虚拟化
VSR公网对接strongSwan NAT穿越
VSR公网对接strongSwan NAT穿越
VSR公网对接strongSwan NAT穿越
|
存储 消息中间件 Java
新一代消息中间件—Apache Pulsar
新一代消息中间件—Apache Pulsar
1503 0
新一代消息中间件—Apache Pulsar
|
算法 安全 Linux
Linux配置strongSwan
Linux配置strongSwan
Linux配置strongSwan
|
XML 小程序 Java
【Android App】给三维魔方贴图以及旋转动画讲解和实战(附源码和演示视频 超详细必看)
【Android App】给三维魔方贴图以及旋转动画讲解和实战(附源码和演示视频 超详细必看)
346 0