secure-os.org
Alle AnleitungenQubes OSTailsWhonixGehärtetes LinuxFestplattenverschlüsselungBedrohungsmodell
ssh

Fail2ban sichert SSH nicht ab, und die eigene README sagt es

secure-os· Aktualisiert 1. August 2026· 4 Min. Lesezeit #ssh#fail2ban#hardening#linux
Eine Zugangsschranke aus Edelstahl in einem Bahnhof, deren rotes X leuchtet und den Zutritt verweigert, mit einer verschwommenen Gestalt dahinter

Fail2ban installieren, dem Sperrzähler beim Klettern zusehen, sich sicherer fühlen. Diese Abfolge ist der Grund, warum das Werkzeug auf fast jedem Server läuft, und sie ist zugleich der Grund, warum viele dieser Server weniger geschützt sind, als ihre Betreiber glauben.

Die klarste Formulierung des Problems steht nicht in einer Kritik an fail2ban. Sie steht in der eigenen README von fail2ban.

Was es tatsächlich tut

Der Mechanismus ist einfach, und er funktioniert. Fail2ban durchsucht Logdateien wie /var/log/auth.log und sperrt IP-Adressen, die zu viele fehlgeschlagene Anmeldeversuche durchfĂĽhren. Es tut dies, indem es die Firewall-Regeln des Systems aktualisiert, um neue Verbindungen von diesen IP-Adressen fĂĽr eine konfigurierbare Zeitspanne abzuweisen.

Es wird betriebsbereit ausgeliefert, um viele gängige Logdateien zu lesen, darunter jene für sshd und Apache, und es lässt sich auf jede Logdatei Ihrer Wahl richten, für jeden Fehler, den Sie wünschen. Seit Version 0.10 erkennt es auch IPv6-Adressen.

Das ist ein wirklich nützliches Stück Infrastruktur. Ein Server, der dem Internet ausgesetzt ist, sammelt täglich Tausende automatisierter Anmeldeversuche, und fail2ban macht aus dieser Flut ein Rinnsal.

Der Satz, den das Projekt in seine eigene README schreibt

Hier ist das Werkzeug ehrlicher als die meisten Ratschläge darüber:

Obwohl Fail2Ban in der Lage ist, die Rate falscher Authentifizierungsversuche zu senken, kann es das Risiko, das von schwacher Authentifizierung ausgeht, nicht beseitigen.

Lesen Sie, was das einräumt. Fail2ban wirkt auf die Rate. Es wirkt nicht auf das Risiko. Das sind unterschiedliche Größen, und sie zu vermengen ist der ganze Fehler.

Wenn Ihr SSH-Server ein Passwort akzeptiert, muss ein Angreifer es erraten. Fail2ban verlangsamt das Raten auf ein Schneckentempo und macht eine naive Brute-Force-Attacke unpraktikabel. Aber die Tür öffnet sich weiterhin für jeden, der das Passwort hat, ob er es erraten, per Phishing erbeutet, in einem Zugangsdaten-Leak gekauft oder aus einer wiederverwendeten Anmeldung auf einer unbeteiligten, kompromittierten Website gezogen hat. Keiner dieser Wege umfasst wiederholte Fehlschläge, also löst keiner davon eine Sperre aus.

Drei leere Zugangsschranken bei Nacht, jede zeigt ein rotes X.

Was das Projekt Ihnen stattdessen zu tun aufträgt

Die README bleibt nicht bei der Warnung stehen. Sie benennt die Alternative:

Richten Sie Dienste so ein, dass sie ausschlieĂźlich Zwei-Faktor- oder Public-Private-Authentifizierungsmechanismen verwenden, wenn Sie Dienste wirklich schĂĽtzen wollen.

Das ist die eigentliche Lösung, und sie ist eine Änderung der Art und nicht eine Änderung des Grades. Ein Server, der nur schlüsselbasierte Authentifizierung akzeptiert, kann überhaupt nicht per Brute Force angegriffen werden, weil es nichts zu erraten gibt. Die Angriffsfläche wird nicht verkleinert, sie wird beseitigt.

Beachten Sie das Wort nur. Einen Schlüssel hinzuzufügen und dabei die Passwort-Authentifizierung aktiviert zu lassen, ändert nichts am Risiko, denn die schwächste akzeptierte Methode ist diejenige, die Ihre Angreifbarkeit bestimmt. Die Einstellung, auf die es ankommt, ist das Deaktivieren der Passwort-Authentifizierung, nicht das Hinzufügen eines Schlüssels daneben.

Sollten Sie es also betreiben

Ja, und aus dem richtigen Grund.

Behalten Sie es wegen des Rauschens. Logs, die Sie tatsächlich lesen können, sind viel wert. Wenn fehlgeschlagene Authentifizierungsversuche von Tausenden pro Tag auf eine Handvoll sinken, wird eine Anomalie sichtbar, statt begraben zu werden. Das ist ein echter betrieblicher Nutzen und ein gutes Argument für das Werkzeug.

Rechnen Sie es nicht als Ihre SSH-Sicherheit. Wenn eine Sicherheitsprüfung Ihres Servers bei “fail2ban ist installiert” endet, hat die Prüfung einen Schritt zu früh aufgehört. Die Frage, die über Ihre Angreifbarkeit entscheidet, ist, ob Passwort-Authentifizierung weiterhin akzeptiert wird.

Achten Sie darauf, was es Sie kostet. Sperren gelten für Adressen, und Adressen werden geteilt. Ein vertipptes Passwort in einem Unternehmens- oder Mobilfunknetz kann alle hinter dieser Adresse aussperren, Sie eingeschlossen. Fail2ban gehört zu den häufigeren Arten, auf die Administratoren sich selbst aus ihren eigenen Servern aussperren.

Die ehrliche Zusammenfassung

Fail2ban tut genau das, was es sagt: Es senkt die Rate fehlgeschlagener Authentifizierungsversuche, indem es auffällige Adressen an der Firewall für eine konfigurierbare Zeit sperrt, auf Basis Ihrer Logs.

Seine eigene Dokumentation stellt ausdrücklich fest, dass dies das Risiko, das von schwacher Authentifizierung ausgeht, nicht beseitigen kann, und dass Dienste, die Sie wirklich schützen wollen, Zwei-Faktor- oder Public-Private-Schlüsselmechanismen verwenden sollten. Diese zwei Sätze sind mehr wert als die meisten Härtungs-Checklisten.

Betreiben Sie fail2ban, um Ihre Logs lesbar zu halten. Deaktivieren Sie die Passwort-Authentifizierung, um Ihren Server zu behalten. Sie sind kein Ersatz füreinander, und nur eines von beiden verändert, was ein Angreifer tun kann.

Die Beschreibung des Verhaltens von fail2ban, die zitierte Einschränkung zu schwacher Authentifizierung, die Empfehlung, Zwei-Faktor- oder Public-Private-Schlüssel-Authentifizierung zu verwenden, sowie die IPv6-Unterstützung seit Version 0.10 stammen aus der eigenen README des fail2ban-Projekts, geprüft zum Zeitpunkt der Erstellung. Konfigurationsdetails unterscheiden sich je nach Distribution; prüfen Sie die Dokumentation Ihres eigenen Pakets, bevor Sie sich auf einen bestimmten Pfad oder Standardwert verlassen.