📜  基于区域的防火墙配置

📅  最后修改于: 2022-05-13 01:57:02.551000             🧑  作者: Mango

基于区域的防火墙配置

先决条件 - 基于区域的防火墙
基于区域的防火墙是一种高级的状态防火墙方法。在有状态防火墙中,为有状态数据库中受信任(私有)网络生成的流量维护一个包含源 IP 地址、目标 IP 地址、源端口号和目标端口号的条目。这将仅包括使用有状态数据库的私有(可信)网络的回复在内的流量。

基于区域的防火墙程序:

  1. 创建区域并为其分配接口 –
    在基于区域的防火墙中,会创建逻辑区域。一个区域被分配给一个接口。默认情况下,不允许从一个区域到另一个区域的流量。
  2. 创建类图——
    创建区域后,将制定一个类映射策略,该策略将识别将应用策略的流量类型,如 ICMP。
  3. 创建策略映射并将类映射分配给策略映射 –
    在识别类映射中的流量类型后,我们必须定义必须对流量采取的操作。动作可以是:
    • 检查:与 CBAC 的检查相同,即只允许来自将被检查的外部网络的流量(返回内部(受信任)网络的流量。
    • 丢弃:这是所有流量的默认操作。在策略映射中配置的类映射可以配置为丢弃不需要的流量。
    • Pass:这将允许从一个区域到另一个区域的流量。与检查操作不同,它不会为流量创建会话状态。如果我们想允许来自相反方向的流量,则应创建相应的策略。
  4. 配置区域对并分配策略 –
    区域对仅配置为一个方向。策略定义了哪些流量被识别(什么类型的流量)然后应该采取什么行动(检查被拒绝,允许)。然后我们必须将此策略应用于区域对。

配置:

如图所示,4台路由器相互连接,Router1的fa0/0接口的IP地址为10.1.1.1/24,Router2的fa0/0接口的IP地址为10.1.1.2/24,Router2的fa0/0接口的IP地址为10.1.2.1/24它的 fa0/1 接口和 fa1/0 接口上的 10.1.3.1/24,Router3 在其 fa0/1 接口上具有 IP 地址 10.1.2.2/24,Router4 在其 fa0/1 接口上具有 10.1.3.2/24。

首先,我们必须执行路由,以便路由器可以相互访问。
在 Router2 上配置 RIP:

Router2(config)#router rip
Router2(config-router)#network 10.1.1.0
Router2(config-router)#network 10.1.2.0
Router2(config-router)#network 10.1.3.0
Router2(config-router)#no auto-summary

现在,在 Router1 上给出默认路由:

Router1(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.2 

在 Router2 上提供默认路由

Router3(config)#ip route 0.0.0.0 0.0.0.0 10.1.2.1

在 Router4 上提供默认路由

Router4(config)#ip route 0.0.0.0 0.0.0.0 10.1.3.1

现在,我们必须在 RIP 中重新分配默认路由:

Router2(config)#router rip
Router2(config-router)#default-information originate 

这些路由器将能够相互ping通。
现在,配置基于区域的防火墙。
在这种情况下,我们将只允许从内部区域到外部区域的 ICMP 流量和 telnet 流量。

为完成此任务,将采取以下步骤:

  1. 创建区域并将接口分配给区域 –
    首先,我们必须为区域配置一个名称,然后将其应用于接口(此处为 Router2)。配置区域并将它们命名为内部、外部和 dmz。
    Router2(config)#zone security inside
    Router2(config-sec-zone)#exit 
    Router2(config)#zone security outside 
    Router2(config-sec-zone)#exit
    Router2(config)#zone security dmz 
    Router2(config-sec-zone)#exit

    现在,将区域应用于接口。

    Router2(config)#interface fa0/0
    Router2(config-if)#zone-member security inside
    Router2(config)#interface fa0/1
    Router2(config-if)#zone-member security outside
    Router2(config)#interface fa1/0
    Router2(config-if)#zone-member security dmz

    将区域应用到接口后,路由器将无法相互 ping,因为默认情况下,从一个区域到另一个区域的流量将被丢弃(根据默认策略)。

  2. 创建一个类图——
    将创建类映射以识别我们要执行操作的流量类型。
    配置类映射,说明将对其执行检查的流量类型。
    Router2(config)#class-map type inspect match-any in-out
    Router2(config-cmap)#match protocol icmp
    Router2(config-cmap)#match protocol telnet

    match-any 表示类映射中的任何语句匹配,即用于 telnet 或 ICMP。我们已经为类映射命名。

  3. 创建策略映射并将类映射应用于策略映射 –
    将配置策略映射以提及将执行的操作(检查、删除或通过)。在我们的场景中,我们将使用检查,即只有在有状态数据库中有条目的情况下,流量才会从外部进入到内部区域(内部区域发起的流量回复)。
    Router2(config)#policy-map type inspect in-out
    Router2(config-pmap)#class in-out
    Router2(config-pmap-c)#inspect

    在这里,我们配置了一个名为 input 的策略映射,并为其分配了一个类映射(命名为 in-out),并且将采取的操作是检查。
    在这里,我们取了同名的类映射和策略映射。可以取不同的名字,但那样会很复杂。

  4. 创建区域对并将策略映射应用于区域对 -
    创建指定源和目标区域的区域对,并将策略映射应用于区域对。
    Router2(config)#zone-pair security in-outpair source inside destination outside
    Router2(config-sec-zone-pair)#service-policy type inspect in-out

    在这里,在第一个命令中,请注意 in-outpair 是 zone-pair 的名称,其中内部区域将是源,外部区域将是目标。

    这意味着已经在从内部区域到外部区域的方向上定义了一个区域对。在第二个命令中,in-out 是策略映射的名称。
    现在,内部区域将用于 ping 和 telnet 外部区域设备,但反之亦然,我们必须定义单独的区域对。另外,请注意,内部区域设备将能够到达外部区域设备,但不能到达 DMZ 区域,因为尚未为其定义区域对。