- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我是 fail2ban 的新手,很难确定我正在考虑设置的不同配置的性能注意事项。这是在树莓派板上运行的,因此性能是一个问题。
我能想到的最明显的优化是使用高效的正则表达式,并且只需要最少数量的 jail 。我想我的具体问题是:
例如,这个 jail 允许某人每天尝试 3,600 个 SSH 登录密码,前提是他们想出了 fail2ban 配置并调整了他们的脚本时间以适应。
[ssh]
enabled = true
action = iptables-allports[name=ssh]
filter = sshd
logpath = /var/log/auth.log
maxretry = 6
findtime = 120
如果我们将 findtime 更改为另一个极端值 86400(1 天),它每天只允许 5 次尝试,但现在它正在监视日志文件的更大部分。这对资源使用有何影响?
另一个例子,POST 洪水攻击的 jail :
[apache-post-flood]
enabled = true
action = iptables-allports[name=apache-post-flood]
filter = apache-post-flood
logpath = /var/log/apache2/*access.log
maxretry = 10
findtime = 10
在这里,我们有相反的情况,查找时间计数器每 10 秒重置一次。它还在监视所有 *access 日志(我再次猜测,我是新手)。这可能意味着它正在监视站点的 https 部分的 access.log、other_vhosts_access.log 和 https_access.log。如果今天很忙并且这些文件每个都是 10-20 MB 怎么办?
希望这有助于解释我的想法。预先感谢您的帮助。
最佳答案
只有一种方法可以找出这一点,测试它,没有别的。
如果需要,添加有关内存使用情况的监控,但没有公式可以告诉您所需的 CPU、IO 或内存量。
作为一般规则,当您重新调整系统时,请在注释中注明新值和需要重新调整的日期。这将使您能够查看是否存在任何趋势。
我个人的做法是每次将受影响的资源增加 30-50%。如果您使用的少于此数量,则您可能会冒着过于频繁地使用它的风险。
关于python - 关于日志大小、复杂性和 finditme 设置的 fail2ban 性能注意事项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26568928/
我是一名优秀的程序员,十分优秀!