无论默认防火墙设置是拒绝还是拒绝,是否有必要禁止恶意 IP?

无论默认防火墙设置是拒绝还是拒绝,是否有必要禁止恶意 IP?

我在 Linux 上使用 fail2ban 作为禁止系统。到目前为止,它已经收集并禁止了大约 150K 个恶意 IP,我很担心,想知道这是否会消耗大量资源。据我在 上看到top,它的 CPU 时间相对较高。我的问题是,

  1. 如果有更多被禁止的 IP 地址,那么我的 CPU 是否会占用更多资源来过滤传入连接?(我的担心源于未经验证的想法,即 CPU 是否必须将任何传入 IP 与 150k 禁止列表进行比较以确定过滤。)
  2. 如果我只是简单地将默认防火墙设置设置为拒绝,那么禁止系统是否就不再必要了?还是无论如何我都要运行禁止系统?(如果是,原因是什么?)

答案1

  1. 如果你使用fail2ban中的一些“简单”iptables禁止操作,你可以切换到iptables-ipset或者nftables动作,例如:
[DEFAULT]
banaction = iptables-ipset[type=multiport]
banaction_allports = iptables-ipset[type=allports]
[DEFAULT]
banaction = iptables-ipset-proto6
banaction_allports = iptables-ipset-proto6-allports
  1. 关于“否认/拒绝”的问题……

    尽管我必须承认,我不太理解“那么禁止系统就没有必要了”这句话,或者说某些默认防火墙设置如何能够防止这种情况发生。如果侦听器端口仍然开放且可供公众使用。

    如果您信任强密码策略或使用非对称密钥代替密码进行身份验证(这样暴力破解就不再有意义了),并且您接受通过连续提供失败的身份验证尝试以及日志日志中的洪水来提供一定的负载,则任何类型的禁止系统都是不必要的。或者,如果您切换到一些严格的防火墙规则,仅将某些地址列入白名单或仅按需打开侦听器端口(端口、http 或任何其他敲击机制),那么您的服务将不再公开访问。

至于“丢弃与拒绝”,请参阅https://github.com/fail2ban/fail2ban/issues/2217#issuecomment-423248516讨论。

相关内容