fail2ban ban mehrfach rückfällige Wirte verbieten

1204
TheWolf

Wir verwenden fail2ban auf unseren Webservern, um IP-Adressen zu blockieren, deren Authentifizierung wiederholt fehlschlägt. Unser normales Bantime beträgt hier eine Stunde; IP-Adressen, die bereits mehrfach gebannt wurden, werden für einen Tag mit dem recidivein der fail2ban-Beispielkonfiguration enthaltenen Gefängnis blockiert .

Diese Blockdauer von einem Tag wurde gewählt, um dynamische IPs nicht zu sehr zu beeinflussen, zumal das recursiveGefängnis nicht bestimmte Ports, sondern alle eingehenden Verbindungen blockiert. Wir möchten jedoch sehr hartnäckige Angreifer für einen längeren Zeitraum verbieten. Derzeit wird dies durch einen benutzerdefinierten super-recidiveFilter und ein Gefängnis erreicht. Dieses Gefängnis blockiert eine Woche lang jeden Host, der zweimal gebannt wurde recidive(diese IP wird offensichtlich nicht dynamisch zugewiesen).

Im Idealfall möchte ich jedoch jede IP, die recidivein der Vergangenheit verboten wurde (z. B. eine Woche), für eine Woche verbieten und die nach dem Aufheben des Verbots wieder von dem Gefängnis verboten wird. Ich weiß, dass so etwas mit einem Komplex failregexmit Rückreferenzen möglich sein muss - aber gibt es einen eleganteren Weg, dies zu tun?

7

1 Antwort auf die Frage

0
HackSlash

Ich schlage vor, eine robustere Web Application Firewall wie NGINX zu besuchen. Sie können Wiederholungstäter an Ihre NGINX-Blacklist übergeben, wo möglicherweise andere Regeln für die Dauer der Sperrung eines Täter gelten.

BEISPIEL: https://www.nginx.com/blog/dynamic-ip-blacklisting-with-nginx-plus-and-fail2ban/