Firewalld 默认放弃并允许现有的规则

Firewalld 默认放弃并允许现有的规则

我的问题是,如果没有特定的规则,我该如何保留现有的firewalld配置并删除所有其他连接。

我有以下防火墙配置:

[root@server ~]$ firewall-cmd --get-default-zone
public

[root@server ~]$ firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources:
  services: ssh dhcpv6-client
  ports: 123/udp 514/tcp 514/udp 5514/udp 5514/tcp 9200/tcp 9300/tcp 5044/tcp 53/udp 443/tcp 5000/tcp 55000/tcp 1516/tcp 1515/tcp 1514/tcp
  protocols:
  masquerade: yes
  forward-ports: port=514:proto=udp:toport=5514:toaddr=
        port=514:proto=tcp:toport=5514:toaddr=
  source-ports:
  icmp-blocks:
  rich rules:

我该如何使用已配置的规则,但仍然默认删除?因为如果我执行 iptables -L,我可以看到默认策略是 ACCEPT:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere
INPUT_direct  all  --  anywhere             anywhere
INPUT_ZONES_SOURCE  all  --  anywhere             anywhere
INPUT_ZONES  all  --  anywhere             anywhere
DROP       all  --  anywhere             anywhere             ctstate INVALID
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

答案1

来自文档

民众

适用于公共区域。您不相信网络上的其他计算机不会损害您的计算机。仅接受选定的传入连接。

这意味着,您已经删除了所有未明确允许的内容。您也可以从以下行中看到这一点:

target: default

默认目标是 REJECT,即硬编码在firewalld

答案2

使用firewalld/firewall-cmd时,如果你运行的是最新的企业版Linux(8及以上),请完全忘记iptables

该命令的输出iptables不相关并且会让您感到困惑,因为它一开始就让我感到困惑。

互联网上有很多关于firewalld的文档,但大多数对于习惯于简单传统防火墙的人来说都没有多大帮助。

我发现非常有帮助的一个答案是:https://serverfault.com/a/680789/50874

相关内容