VServer und Root Server - Fail2ban für SSH einrichten
Fail2ban kann wiederholte fehlgeschlagene Anmeldungen erkennen und Quelladressen vorübergehend sperren. Es ersetzt weder SSH-Schlüssel noch Updates und Firewall.
Inhaltsverzeichnis
Voraussetzungen
- funktionierender, getesteter SSH-Zugang
- korrekte Systemzeit
- Firewall-Backend und Logquelle sind bekannt
- Zugriff auf die Anbieter-Konsole für den Notfall
Installation
Debian und Ubuntu:
sudo apt update sudo apt install fail2ban
Auf RHEL-kompatiblen Distributionen hängt die Paketverfügbarkeit von den aktivierten, unterstützten Repositories ab. Aktivieren Sie nicht unbesehen eine Fremdquelle.
Lokale Konfiguration für SSH
Ändern Sie nicht die mitgelieferte jail.conf. Legen Sie beispielsweise /etc/fail2ban/jail.d/sshd.local an:
[sshd] enabled = true backend = systemd bantime = 1h findtime = 10m maxretry = 5
backend = systemd passt nur, wenn SSH-Ereignisse im systemd-Journal vorliegen. Bei klassischen Logdateien muss das zur Distribution passende Backend verwendet werden.
Konfiguration testen und aktivieren
sudo fail2ban-client -t sudo systemctl restart fail2ban sudo fail2ban-client status sudo fail2ban-client status sshd
Der Test muss ohne Fehler enden. Halten Sie die bestehende SSH-Sitzung geöffnet und prüfen Sie eine zweite Anmeldung.
Adresse entsperren
Wenn eine berechtigte Adresse gesperrt wurde:
sudo fail2ban-client set sshd unbanip 203.0.113.20
Ersetzen Sie die Beispieladresse erst nach Prüfung durch die tatsächliche Adresse. Tragen Sie dynamische oder große Netze nicht leichtfertig in ignoreip ein.
Hinweise
Fail2ban reagiert erst nach Ereignissen. Dienste sollten trotzdem nur für notwendige Quellen und Ports erreichbar sein. Überwachen Sie außerdem den Fail2ban-Dienst und prüfen Sie nach Log- oder Distributionsänderungen, ob das Jail noch Treffer erhält.

