Iptables

獲取禁用 IP 地址的 Fail2Ban 監獄

  • May 13, 2021

有人想知道禁止 IP 地址的監獄有很多原因,但我找不到fail2ban-client告訴我這一點的命令。應該有一個get不需要的命令,<JAIL>而是輸出它。

我知道從 v0.10.2 版本開始,我可以通過以下方式解禁 IP:

fail2ban-client unban 192.0.2.138

我的問題不是如何解禁IP。我問我如何才能找到禁止IP的監獄。

fail2ban 的較新版本 (0.10.6/0.11.2) 可以使用 處理此問題fail2ban-client banned <IP>,請參閱RFE 2725

這將返回目前禁止給定 IP 的監獄列表。

該命令顯示了該監獄目前fail2ban-client status JAIL禁止的 IP 地址列表,但是像這樣遍歷每個監獄有點費力,而且它也不會顯示已經從監獄中釋放的 IP 地址。

收集所需知識的最佳方法是從 Fail2Ban 日誌中搜尋 IP 地址:

# grep "192.0.2.138" /var/log/fail2ban.log
fail2ban.actions  [388]: NOTICE  [sshd] Ban 192.0.2.138
fail2ban.actions  [388]: NOTICE  [sshd] Unban 192.0.2.138
fail2ban.filter   [388]: INFO    [sshd] Found 192.0.2.138 - 2020-12-24 10:52:42
fail2ban.filter   [388]: INFO    [sshd] Found 192.0.2.138 - 2020-12-24 10:52:43
fail2ban.filter   [388]: INFO    [sshd] Found 192.0.2.138 - 2020-12-24 10:52:47
fail2ban.filter   [388]: INFO    [sshd] Found 192.0.2.138 - 2020-12-24 10:52:51
fail2ban.filter   [388]: INFO    [sshd] Found 192.0.2.138 - 2020-12-24 10:52:56
fail2ban.actions  [388]: NOTICE  [sshd] Ban 192.0.2.138

這不僅會顯示哪個監獄禁止了 IP,還會顯示原因- 您可以使用所有時間戳從 Fail2Ban 正在監控的日誌中找到相應的事件。

引用自:https://serverfault.com/questions/1047407