Firewalld 中区域配置的“目标:默认”是什么?

Ala*_*a S 5 server firewall firewalld

我目前使用 ubuntu 20.04 机器并安装了firewalld作为防火墙管理器服务。在查看“公共区域”的配置时,我可以看到如下,

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: 
Run Code Online (Sandbox Code Playgroud)

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

Raf*_*ffa 6

man firewalld.zone

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

关于如何工作确实不是很具体default

\n

但是,通过对手册页的拟议更改/添加澄清了这一点:

\n
\n --permanent [--zone=zone] --set-target=target\n 设置永久区域的目标。target 是以下之一:default、\n ACCEPT、DROP、REJECT\n\n default 与 REJECT 类似,但在以下情况下具有特殊含义:\n\n 1. ICMP 显式允许\n\n 在明确允许区域规则集末尾的 ICMP 数据包。\n\n 2. 转发的数据包遵循出口区域的目标\n\n 在转发数据包的情况下,如果入口区域使用\n 默认值那么是否允许该数据包由出口区域决定。\n\n 对于入口 zoneA 和出口 zoneB 的转发数据包:\n\n \xc2\xb7 如果 zoneA\ 的目标是 ACCEPT, DROP 或 REJECT 则分别接受、丢弃或拒绝数据包。\n\n \xc2\xb7 如果 zoneA\ 的目标是默认值,则根据 zoneB 接受、\n 丢弃或拒绝数据包\ 的目标。如果 zoneB 的\n 目标也是默认的,则数据包将被防火墙\n 的包罗万象的拒绝所拒绝。\n\n 3. 区域从基于源的区域漂移到基于接口的区域\n\n这只适用于启用了AllowZoneDrifting 的情况。请参阅\nfirewalld.conf(5)。\n\n如果数据包进入目标为默认的基于源的区域,它仍可能进入基于接口的区域(包括默认区域)。\n n
\n