从子目录加载 fail2ban 过滤器

从子目录加载 fail2ban 过滤器

fail2ban 是否可以从 中的文件夹加载过滤器/etc/fail2ban/filters?例如,如果我在 处设置了一个文件/etc/fail2ban/filters/custom/log4j.conf,我可以在 中加载该过滤器吗jail.local?语法有何不同?我在网上做了一些研究,但在文档中没有找到任何相关内容。

我询问的原因是我们有许多针对常见攻击的定制过滤器(例如一个用于 Wordpress 登录尝试,一个用于 XMLRPC 攻击,一个用于 Log4j 等),并且通过在 Git 存储库中拥有一个自定义过滤器目录来保持它们同步很有用,可以通过从存储库中定期提取来克隆和保持最新状态。

我们可以通过使用 Ansible 之类的配置工具将 fail2ban 配置中的更改应用于多台服务器来实现这一点,事实上,我过去也曾将 Ansible 用于这种用例,但那是在我首先使用 Ansible 配置服务器的情况下,如果有更简单的替代方案,仅仅为了保持 fail2ban 过滤器同步而这样做可能不值得。

答案1

通常情况下,你会将过滤器放在 中/etc/fail2ban/filter.d/。在这种情况下,你可以在 jail 中使用它,如下所示:

[jail]
filter = name-of-filter

这将使用/etc/fail2ban/filter.d/name-of-filter.conf。并且,如果您的过滤器使用与监狱相同的名称调用,则您无需指定这一点(这是默认设置)。

您也可以使用没有过滤器的 jail。只需在 jail 中直接设置filter =并添加您的datepatternprefregex即可。failregex

更多人监狱.conf.5

相关内容