Fail2ban

Installieren und konfigurieren Sie Fail2ban, um wiederholte SSH-Authentifizierungsfehler auf einem Ubuntu-Server vorübergehend zu blockieren.

Vor der Ausführung

Diese Beispiele zielen auf einen Ubuntu-Server ab, der systemd und eine unterstützte Firewall verwendet. Paketnamen, Protokollquellen und Firewall-Backends unterscheiden sich je nach Verteilung. Fail2ban reduziert wiederholte Anmeldeversuche; Es ersetzt keine SSH-Schlüssel, Updates oder Zugriffskontrollen. Halten Sie eine bestehende Verwaltungssitzung und Konsolenwiederherstellung verfügbar und vermeiden Sie Tests von Ihrer einzigen Arbeitsadresse aus. Überprüfen Sie, ob das SSH-Gefängnis die tatsächlichen Authentifizierungsprotokolle liest und seine Firewall-Aktion wirksam ist. Setzen Sie große Netzwerke nicht auf die Whitelist, ohne das Risiko zu verstehen.

Prüfen Sie nach dem Anwenden der Änderungen in einer neuen SSH-Sitzung die Anmeldung und das gewünschte Verhalten. Lassen Sie die aktuelle Sitzung bis zur erfolgreichen Prüfung geöffnet, damit Sie die Konfiguration bei Bedarf wiederherstellen können.

Beispiele

Installieren Sie Fail2ban auf Ubuntu und starten Sie seinen Dienst. Für die Installation sind Administratorrechte erforderlich.

sudo apt update
sudo apt install fail2ban
sudo systemctl enable --now fail2ban

Erstellen Sie eine separate Jail-Überschreibung unter /etc/fail2ban/jail.d/sshd.local; Bearbeiten Sie nicht die gepackte jail.conf. Das Beispiel verwendet Systemd-Protokolle und blockiert eine Adresse für eine Stunde nach fünf Fehlern in zehn Minuten.

Öffnen Sie die Datei mit nano:

sudo nano /etc/fail2ban/jail.d/sshd.local
[sshd]
enabled = true
backend = systemd
maxretry = 5
findtime = 10m
bantime = 1h

Überprüfen Sie die Konfiguration, starten Sie den Dienst neu und überprüfen Sie das SSH-Gefängnis. Stellen Sie sicher, dass die Ausgabe die beabsichtigte Protokollquelle und Firewall-Aktion identifiziert.

sudo fail2ban-client -t && sudo systemctl restart fail2ban && sudo fail2ban-client status sshd

Überprüfen Sie die aktuellen Dienstprotokolle, wenn das Jail nicht startet oder keine Fehler erkannt werden.

sudo journalctl -u fail2ban -n 100 --no-pager

Wenn eine autorisierte Adresse gesperrt wurde, heben Sie die Sperre dieser Adresse für eine bestehende Verwaltungssitzung oder die Serverkonsole auf. Ersetzen Sie die Beispieladresse.

sudo fail2ban-client set sshd unbanip 192.0.2.10

Maßgebliche Quellen

Geprüft am 27. Oktober 2026