防火墙忽略源

防火墙忽略源

我有一个 CentOS8 机器,以及 firewalld 的默认配置:

firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources: 
  services: dhcpv6-client mdns ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

我添加了一个我想要列入白名单的范围,我想允许 10.21.0.0/16 并阻止其他所有人:

firewall-cmd --add-source=10.21.0.0/16
firewall-cmd --add-source=10.21.0.0/16 --permanent
firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources: 10.21.0.0/16
  services: dhcpv6-client mdns ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

但是当我尝试从 IP 为 158.121.110.66 的盒子进行 ssh 时,它会通过。难道它不应该阻止除 10.21.0.0/16 之外的所有内容吗?难道我做错了什么?

答案1

如果您希望防火墙拒绝除特定源之外的所有连接,您应该将默认区域设置为,例如dropblock

firewall-cmd --set-default-zone=drop

当然,应用这些东西时你必须非常小心:-)

相关内容