Egal ob Vaultwarden, Pi-hole oder ein WireGuard-Server – sobald du etwas selbst hostest, ist SSH die Haustür zu deiner Maschine. Und diese Tür steht ab Werk weiter offen, als den meisten lieb ist: Automatisierte Bots scannen rund um die Uhr Port 22 und probieren Standard-Passwörter durch. Die gute Nachricht: Mit einer Handvoll Einstellungen wird aus dem Scheunentor ein Tresor. Diese Anleitung zeigt die wichtigsten Hardening-Schritte für 2026 – in der Reihenfolge, in der sie am meisten bringen.
Warum SSH-Hardening Pflicht ist
Ein frisch aufgesetzter Server bekommt innerhalb von Minuten den ersten Login-Versuch von einem fremden Rechner. Das sind keine gezielten Angriffe, sondern Bot-Netze, die das gesamte Internet nach offenen SSH-Ports absuchen und stumpf Benutzername-Passwort-Kombinationen durchprobieren.
- Dein Server ist nur so sicher wie sein SSH-Zugang. Jeder Dienst dahinter – Passwort-Manager, Backups, Smart-Home – fällt mit, wenn jemand SSH-Zugriff erlangt.
- Passwörter sind das schwächste Glied. Selbst ein gutes Passwort lässt sich theoretisch erraten; ein kryptografischer Schlüssel praktisch nicht.
- Die Standardkonfiguration ist auf Bequemlichkeit optimiert, nicht auf Sicherheit – auf vielen Systemen ist der Root-Login per Passwort noch erlaubt.

Schritt 1: Schlüssel statt Passwort
Der wichtigste Schritt überhaupt: Passwort-Login abschalten und durch einen SSH-Schlüssel ersetzen. Ein Schlüsselpaar besteht aus einem privaten Schlüssel, der auf deinem Rechner bleibt, und einem öffentlichen, der auf den Server kommt.
# Modernen ed25519-Schlüssel erzeugen
ssh-keygen -t ed25519 -C "mein-laptop"
# Öffentlichen Schlüssel auf den Server kopieren
ssh-copy-id benutzer@server-ipVergib beim Erzeugen unbedingt eine Passphrase für den privaten Schlüssel – sie schützt ihn, falls dein Laptop in falsche Hände gerät. Teste anschließend, ob der Login per Schlüssel sauber funktioniert. Erst danach deaktivierst du den Passwort-Login (nächster Schritt).
Schritt 2: Die wichtigsten sshd_config-Einstellungen
Die zentrale Konfigurationsdatei liegt unter /etc/ssh/sshd_config. Diese Zeilen solltest du setzen beziehungsweise anpassen:
# Kein Root-Login über SSH
PermitRootLogin no
# Passwort-Login komplett aus – nur noch Schlüssel
PasswordAuthentication no
KbdInteractiveAuthentication no
# Nur bestimmte Benutzer zulassen
AllowUsers benutzer
# Login-Versuche pro Verbindung begrenzen
MaxAuthTries 3Nach dem Speichern den Dienst neu laden mit sudo systemctl reload sshd. Wichtig: Lass während der Umstellung eine zweite SSH-Sitzung offen – falls du dich aussperrst, kommst du so noch rein. Den SSH-Port zu ändern reduziert zwar das Bot-Rauschen in den Logs, ist aber reine Security-by-Obscurity und kein echter Schutz.

Schritt 3: Fail2ban gegen Brute-Force
Auch mit deaktiviertem Passwort-Login hämmern Bots weiter gegen deinen Port. Fail2ban liest die SSH-Logs mit und sperrt IP-Adressen automatisch aus, sobald sie zu oft scheitern.
# Debian / Ubuntu
sudo apt install fail2ban
# Arch / CachyOS
sudo pacman -S fail2ban
sudo systemctl enable --now fail2banDas mitgelieferte sshd-Jail ist meist schon aktiv. In /etc/fail2ban/jail.local lassen sich Sperrdauer und Toleranz anpassen. Mit sudo fail2ban-client status sshd siehst du, wie viele Angreifer schon geblockt wurden – meist überraschend viele.
Schritt 4: Zusätzliche Härtung
Wer auf Nummer sicher gehen will, legt noch eine Schicht drauf:
- Zwei-Faktor-Authentifizierung. Mit einem PAM-Modul lässt sich SSH zusätzlich mit einem TOTP-Code aus einer Authenticator-App absichern – selbst ein gestohlener Schlüssel reicht dann nicht mehr.
- Firewall davor. Eine einfache Regel mit ufw oder nftables, die SSH nur aus bestimmten Netzen oder über ein VPN erlaubt, nimmt den Port komplett aus dem öffentlichen Internet.
- System aktuell halten. SSH-Sicherheitslücken sind selten, aber wenn, dann kritisch. Regelmäßige Updates sind Pflicht.
- Unbenutzte Zugänge entfernen. Alte Benutzerkonten und verwaiste Schlüssel in
~/.ssh/authorized_keysregelmäßig aufräumen.

Fazit
SSH-Hardening folgt einer klaren Prioritätenliste: Schlüssel statt Passwort ist die halbe Miete, eine saubere sshd_config und Fail2ban erledigen den größten Rest. Das ist keine halbe Stunde Arbeit – und danach ist die Haustür deines Servers für die üblichen Bot-Angriffe schlicht uninteressant. Wer mehrere Dienste selbst hostet, sollte diesen Schritt nicht als optional betrachten, sondern als Fundament.
📖 Passende Artikel: WireGuard VPN-Server selbst hosten · Tailscale 2026: Mesh-VPN einrichten
Bildquellen: Wikimedia Commons (CC BY-SA 3.0, CC BY-SA 4.0, CC BY 3.0, GPL).


