防火墙技术案例 双机热备 负载分担 组网下的IPSec配置 联系客服

发布时间 : 星期日 文章防火墙技术案例 双机热备 负载分担 组网下的IPSec配置更新完毕开始阅读10f6d1296394dd88d0d233d4b14e852458fb39b6

【防火墙技术案例5】双机热备(负载分担)组网下的IPSec配置 论坛的小伙伴们,大家好。强叔最近已经开始在“侃墙”系列中为各位小伙伴们介绍各种VPN了。说到VPN,小伙伴们肯定首先想到的是最经典的IPSec VPN,而且我想大家对IPSec的配置也是最熟悉的。但是如果在两台处于负载分担状态下的防火墙上部署IPSec VPN又该如何操作呢?有什么需要注意的地方呢? 本期强叔就为大家介绍如何在双机热备的负载分担组网下配置IPSec。 ?

【组网需求】

如下图所示,总部防火墙NGFW_C和NGFW_D以负载分担方式工作,其上下行接口都工作在三层,并与上下行路由器之间运行OSPF协议。(本例中,NGFW是下一代防火墙USG6600的简称,软件版本为USG6600V100R001C10)

现要求分支用户访问总部的流量受IPSec隧道保护,且NGFW_C处理分支A发送到总部的流量,NGFW_D处理分支B发送到总部的流量。当NGFW_C或NGFW_D中一台防火墙出现故障时,分支发往总部的流量能全部切换到另一台运行正常的防火墙。

??

【需求分析】

针对以上需求,强叔先带小伙们做一个简要分析,分析一下我们面临的问题以及解决这个问题的方法。 1、??如何使两台防火墙形成双机热备负载分担状态?

两台防火墙的上下行业务接口工作在三层,并且连接三层路由器,在这种情况下,就需要在防火墙上配置VGMP组(即hrp track命令)来监控上下行业务接口。如果是负载分担状态,则需要在每台防火墙上调动两个VGMP组(active组和standby组)来监控业务接口。 2、??分支与总部之间如何建立IPSec隧道?

正常状态下,根据组网需求,需要在NGFW_A与NGFW_C之间建立一条隧道,在NGFW_B与NGFW_D之间建立一条隧道。当NGFW_C与NGFW_D其中一台防火墙故障时,NGFW_A和NGFW_B都会与另外一台防火墙建立隧道。 3、总部的两台防火墙如何对流量进行引导?

总部的两台防火墙(NGFW_C与NGFW_D)通过路由策略来调整自身的Cost值,从而实现正常状态下来自NGFW_A的流量通过NGFW_C转发,来自NGFW_B的流量通过NGFW_D转发,故障状态下来自NGFW_A和NGFW_B的流量都通过正常运行的防火墙转发。 【配置步骤】

1、??配置双机热备功能。 在配置双机热备功能前,小伙伴们需要按照上图配置各接口的IP地址,并将各接口加入相应的安全区域,然后配置正确的安全策略,允许网络互通。由于这些不是本案例的重点,因此不在此赘述。 完成以上配置后,就要开始配置双机热备功能了。大家可以看到形成双机的两台防火墙(NGFW_C和NGFW_D负载分担处理流量)的上下行接口都工作在三层,而且连接的是路由器。这无疑是非常经典的“防火墙业务接口工作在三层,上下行连接路由器的负载分担组网”。各位小伙伴们可以在华为的任何防火墙资料中看到此经典举例,无论是命令行配置举例还是Web配置举例,大家想怎么看就怎么看~ 因此强叔只在此给出双机热备的命令行配置和关键解释。 # ?hrp mirror session enable????? //负载分担组网必须配置此命令 ?hrp enable????????????????? //启用双机热备功能 ?hrp ospf-cost adjust-enable???? //根据主备状态调整OSPF的COST值? ?hrp interface GigabitEthernet 1/0/7???? //指定心跳接口 # interface GigabitEthernet 1/0/1 ?ip address ?hrp track active //业务接口工作在三层,上下行连接路由器的组网需要配置hrp track ?hrp track standby??? //负载分担组网需要同时配置hrp track active和standby # interface GigabitEthernet 1/0/3 ?ip address ?hrp track active ?hrp track standby # interface GigabitEthernet 1/0/7 ?ip address 【强叔点评】各位小伙伴们在配置双机热备功能时,首先要确定的是防火墙业务接口的工作状态和上下行连接的设备,然后据此采用不同的命令进行配置。强叔在此先为大家简单总结下,如果小伙伴们想深入学习,可以关注后面几期的“侃墙”系列。 组网 业务接口工作在三层,上下行连接二层设备 业务接口工作在三层,上下行连接三层设备 业务接口工作在二层,上下行连接三层设备 ? 2、??配置IPSec。 【强叔点评】双机热备配置完成后,我们就开始配置IPSec功能,建立IPSec VPN隧道啦。 由于公司希望NGFW_C处理分支A(NGFW_A)发送到总部的流量,NGFW_D处理分支B(NGFW_B)发送到总部的流量,因此正常情况下我们需要在NGFW_C和NGFW_A之间建立一条隧道,在NGFW_D和NGFW_B之间建立一条隧道。 这样看似已经满足需求了,但是如果NGFW_D出现故障了怎么办呢?分支B发送到总部的流量不就中断了吗?小伙伴们仔细思考就会想到办法,我们需要在NGFW_C与NGFW_B,NGFW_D与NGFW_A之间分别建立一条备用隧道(图中虚线表示)。这样当NGFW_D出现故障时,分支B发送到总部的流量会通过备用隧道由NGFW_C发送到总部,就不会导致业务中断啦。 配置命令 VRRP相关命令 在接口视图下配置(hrp track) 在VLAN视图下配置(hrp track) 这个想法很好,但是如何实现呢?我们可以在NGFW_C上创建两个tunnel接口,然后在tunnel1上与NGFW_A建立一条主用隧道,在tunnel2上与NGFW_B建立一条备份隧道。同理在NGFW_D的tunnel1上与NGFW_A建立一条备份隧道,在tunnel2上与NGFW_B建立一条主用隧道。这里需要注意的是NGFW_C上的tunnel1(tunnel2)地址需要与NGFW_D上的tunnel1(tunnel2)地址保持一致。

?

我想这时小伙伴们又要问为什么了?这样做的好处是在NGFW_A上只需要与对端的tunnel1接口建立隧道即可,NGFW_A不用去关心这个tunnel1是NGFW_C还是NGFW_D的(因为他们的IP是一致的)。同理NGFW_B只需要与对端的tunnel2接口建立隧道即可。 1)??定义受IPSec VPN保护的数据流。

HRP_A[NGFW_C]?acl 3005?

HRP_A[NGFW_C-acl-adv-3005]?rule permit ip source destination ? HRP_A[NGFW_C-acl-adv-3005]?quit? HRP_A[NGFW_C] acl 3006?

HRP_A[NGFW_C-acl-adv-3006]?rule permit ip source destination ? HRP_A [NGFW_C-acl-adv-3006]?quit

【强叔点评】ACL3005定义的是总部与分支A之间的流量,ACL3006定义的是总部与分支B之间的流量。

2)??配置IPSec安全提议。

【强叔点评】如果创建IPSec安全提议后,不进行任何配置,则IPSec安全提议使用默认参数。本案例中使用默认参数,小伙伴们可以根据自己的实际安全需求修改IPSec安全提议中的参数。 HRP_A[NGFW_C]?ipsec proposal tran1 HRP_A[NGFW_C-ipsec-proposal-tran1]?quit

3)??配置IKE安全提议。本案例中使用IKE安全提议的默认参数。

HRP_A[NGFW_C]?ike proposal 10 HRP_A[NGFW_C-ike-proposal-10]?quit

4)??配置两个IKE对等体,分别用于总部与两个分支建立IPSec。

HRP_A[NGFW_C]?ike peer ngfw_a?

HRP_A[NGFW_C-ike-peer-ngfw_a]?ike-proposal 10?

HRP_A[NGFW_C-ike-peer-ngfw_a]?remote-address ?

HRP_A[NGFW_C-ike-peer-ngfw_a]?pre-shared-key Admin@123? HRP_A[NGFW_C-ike-peer-ngfw_a]?quit? HRP_A[NGFW_C]?ike peer ngfw_b?

HRP_A[NGFW_C-ike-peer-ngfw_b]?ike-proposal 10? HRP_A[NGFW_C-ike-peer-ngfw_b]?remote-address ?

HRP_A[NGFW_C-ike-peer-ngfw_b]?pre-shared-key Admin@123? HRP_A[NGFW_C-ike-peer-ngfw_b]?quit

5)??配置两个IPSec策略,分别用于总部与两个分支建立IPSec。

HRP_A[NGFW_C]?ipsec policy map1 10 isakmp?

HRP_A[NGFW_C-ipsec-policy-isakmp-map1-10]?security acl 3005? HRP_A[NGFW_C-ipsec-policy-isakmp-map1-10]?proposal tran1? HRP_A[NGFW_C-ipsec-policy-isakmp-map1-10]?ike-peer ngfw_a? HRP_A[NGFW_C-ipsec-policy-isakmp-map1-10]?quit? HRP_A[NGFW_C]?ipsec policy map2 10 isakmp?

HRP_A[NGFW_C-ipsec-policy-isakmp-map2-10]?security acl 3006? HRP_A[NGFW_C-ipsec-policy-isakmp-map2-10]?proposal tran1? HRP_A[NGFW_C-ipsec-policy-isakmp-map2-10]?ike-peer ngfw_b? HRP_A[NGFW_C-ipsec-policy-isakmp-map2-10]?quit 6)??配置在Tunnel接口上应用IPSec策略。

【强叔点评】之前点评中提到我们需要在NGFW_C的tunnel1上与NGFW_A建立一条主用隧道,在tunnel2上与NGFW_B建立一条备份隧道,这是通过在应用IPSec策略时设定active或standby参数来实现的。

HRP_A[NGFW_C]?interface Tunnel 1?

HRP_A[NGFW_C-Tunnel1]?ipsec policy map1 active? HRP_A[NGFW_C-Tunnel1]?quit? HRP_A[NGFW_C]?interface Tunnel 2?

HRP_A[NGFW_C-Tunnel2]?ipsec policy map2?standby? HRP_A[NGFW_C-Tunnel2]?quit

7)??在NGFW_D上配置IPSec。 双机热备状态成功建立后,NGFW_C上配置的ACL、IPSec策略(包括其中的IPSec安全提议,IKE对等体)等都会自动备份到NGFW_D上。只有在接口上应用IPSec策略的配置不会备份,需要在此手动配置。

HRP_S[NGFW_D]?interface Tunnel 1?

HRP_S[NGFW_D-Tunnel1]?ipsec policy map1 standby? HRP_S[NGFW_D-Tunnel1]?quit? HRP_S[NGFW_D]?interface Tunnel 2?

HRP_S[NGFW_D-Tunnel2]?ipsec policy map2 active? HRP_S[NGFW_D-Tunnel2]?quit

8)??在NGFW_A和NGFW_B上配置IPSec。

NGFW_A和NGFW_B的配置比较简单,就是一个点到点方式的IPSec配置。只要将NGFW_A的IPSec隧道Remote Address配置为Tunnel1接口的IP地址;NGFW_B的IPSec隧道Remote Address配置为Tunnel2接口的IP地址就行了。受篇幅所限,强叔就不详细讲了。