
Angenommen, ich habe eine TXT-Datei mit einer Liste von IP-Adressen, die ich für eine bestimmte Zeit sperren möchte (also eine Art Blacklist-Datei). Ich weiß, wie das beispielsweise in Apache geht – einfach indem ich die TXT-Datei in apache.conf einbinde und dann einen ordnungsgemäßen Neustart durchführe.
Ich habe mich gefragt, ob dasselbe mit fail2ban möglich wäre, indem ich fail2ban irgendwie dazu bringe, in regelmäßigen Abständen die Liste der IP-Adressen, die ich sperren möchte, „einzulesen“ und dabei die fail2ban-Maschinerie zur Kommunikation mit iptables nutze?
Antwort1
Fail2ban dient zur Verwaltung einer Liste zu sperrender Adressenautomatisch.
Alles beruht auf der Annahme, dass bei mehreren aufeinanderfolgenden „Fehlern“ seitens desDasselbeRemote-Adresse, diese „Fehler“ sind nicht zufällig und die Adresse ist bösartig und versucht, etwas Böses zu tun (z. B. Passwörter mit Brute-Force-Methode zu erzwingen, nach Schwachstellen zu suchen usw.). Fehler werden in Anführungszeichen gesetzt, weil es einer Definition unterliegt – was als „Fehler“ gilt, wird definiert durchFilterin fail2ban. Es erwartet, dass eine AnwendungProtokolleetwasin Echtzeit(fast) wenn es ein Problem bei einer Kommunikation entdeckt, und diese Protokollnachricht enthält auch eine Adresse der Fernbedienung, mit der es kommuniziert hat.
Diese Art der Erkennung ist selbst nicht fehlerfrei. Der legitime Benutzer kann sich sein Passwort falsch merken und beim Anmelden mehrere ungefähre Versuche durchführen; die Art und Weise, wie diese Versuche in den Protokollen erscheinen, unterscheidet sich nicht von echter Brute-Force-Attacke. Wenn er zu hartnäckig und voreilig war, wird er gesperrt, und das ist ein echtes Fehlalarmergebnis.
Bei Remote-IPs handelt es sich häufig auch nur um infizierte Computer, die nach einiger Zeit unter einer anderen IP-Adresse auftauchen. Die zuvor von ihnen verwendete IP-Adresse kann von einem anderen, unschuldigen Akteur übernommen werden, und das System wird fälschlicherweise gesperrt. Infizierte und anfällige Systeme werden manchmal auch geheilt und repariert, sodass sie nicht mehr gefährlich sind.
Um all dem Rechnung zu tragen, sind die von fail2ban verhängten Sperrennicht permanent, und die Sperre wird nach einiger Zeit automatisch aufgehoben.
Das ist ganz anders, wenn Sie eina prioriListe der zu sperrenden Adressen. Zunächst einmal sind diese Adressen normalerweise keine Adressen, sondernNetzwerkblöcke(eine Menge an benachbarten Adressen). Zweitens sind die Einträge dieser Listebekanntermaßen kein Ablaufdatum; wir gehen davon aus, dass die Unternehmen, die diese Netzwerkblöcke betreiben,sind bösartigUnd zum Schluss das Wichtigste:fail2ban ist schrecklich bei der Verwaltung großer Sperrlisten. Es ist nur gut und verwendbar, weil es automatisch ist;Versuchen Sie nicht, es mit Tausenden von Adressen zu verwenden. Allein das Starten/Stoppen bei Tausenden von Adressen in einer Datenbank führt zu einer erheblichen Verarbeitungszeit (mehrere zehn Minuten).
Verwenden Sie Ihre Firewall direkt, wenn Sie eine Liste von Adressen haben. Versuchen Sie nicht, diese mit fail2ban zu verwalten. Wenn Sie stattdessen einige Adressen (oder enge Adressgruppen, wie kleine Subnetze) entdecken, die häufig automatisch gesperrt und wieder freigegeben werden, kann es von Vorteil sein, diese zu untersuchen und sie möglicherweise manuell zu sperren, damit fail2ban nie wieder mit ihnen zu tun hat.