Firewalld 中区域配置的‘target: default’是什么?

Firewalld 中区域配置的‘target: default’是什么?

我目前正在使用 ubuntu 20.04 机器并安装了防火墙作为防火墙管理服务。查看‘公共区域’,我可以看到如下内容,

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources: 
  services: dhcpv6-client dns http https mysql squid ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

为什么目标是默认这里?它如何影响firewalld的传入连接请求处理?

答案1

man firewalld.zone

目标=“接受|%%拒绝%%|删除”
   可用于接受、拒绝或丢弃每个数据包。ACCEPT 目标用于
   受信任区域,每个数据包都将被接受。%%REJECT%% 目标用于
   阻止区域,每个数据包都将以默认的 Firewalld 拒绝类型被拒绝。
   DROP 目标用于丢弃区,所有数据包都将被丢弃。默认目标
   是 {chain}_ZONE_{zone} 并且将在未指定目标时使用。如果除
   使用默认目标,除接口和源之外的所有设置都将被忽略,
   因为防火墙为该区域创建的第一条规则是“跳转到目标”。

对于其工作原理,实际上并不是很具体default

然而,这一点已得到澄清对手册页的拟议更改/添加

--permanent [--zone=区域] --set-target=目标
    设置永久区域的目标。目标是以下之一:默认,
    接受、丢弃、拒绝

    default 与 REJECT 类似,但在
    以下场景:

     1. ICMP 明确允许

        在区域规则集的末尾,ICMP 数据包被明确
        允许。

     2. 转发的数据包遵循出口区域的目标

        对于转发的数据包,如果入口区域使用
        那么是否允许数据包是默认的
        由出口区域决定。

        对于进入区域 A 并从区域 B 流出的转发数据包:

        · 如果 zoneA 的目标是 ACCEPT、DROP 或 REJECT,那么
            数据包分别被接受、丢弃或拒绝。

        · 如果 zoneA 的目标是默认,则接受该数据包,
            根据 zoneB 的目标丢弃或拒绝。如果 zoneB 的
            目标也是默认的,那么数据包将被拒绝
            firewalld 的 catchall 拒绝。

     3. 从基于源的区域漂移到基于接口的区域

        这仅在启用了 AllowZoneDrifting 时才适用。请参阅
        防火墙d.conf(5)。

        如果数据包进入目标为
        默认情况下,它仍可能进入基于接口的区域(包括
        默认区域)。

相关内容