Ein Linux-Server ohne gehärteten SSH-Zugang ist eine offene Einladung. Bot-Netze probieren rund um die Uhr Standard-Benutzer und schwache Passwörter durch. Mit den folgenden fünf Maßnahmen reduzieren Sie das Risiko deutlich – ohne dass Sie deshalb den Komfort verlieren.
1. Login per Passwort abschalten, nur noch Schlüssel zulassen
Der wichtigste Schritt. Ein guter Schlüssel ist nicht zu erraten, ein Passwort schon.
ssh-keygen -t ed25519 -C "ihr-name@arbeitsplatz"
ssh-copy-id user@server
Auf dem Server in /etc/ssh/sshd_config:
PasswordAuthentication no
PubkeyAuthentication yes
Anschließend systemctl reload sshd. Wichtig: Vorher prüfen, dass der Schlüssel funktioniert – sonst sperren Sie sich aus.
2. Root-Login deaktivieren
PermitRootLogin no
Stattdessen mit normalem Benutzer einloggen und bei Bedarf sudo nutzen.
3. Nur konkrete Benutzer zulassen
AllowUsers cornell admin
Damit ist der Server für alle anderen Konten dicht – auch falls jemand versehentlich einen Test-User anlegt.
4. Standard-Port verschieben (optional)
Bringt keine echte Sicherheit, aber reduziert das Grundrauschen massiv. Statt 22 dann zum Beispiel 2244:
Port 2244
Firewall entsprechend anpassen, sonst sperren Sie sich aus.
5. fail2ban gegen Brute-Force-Versuche
apt install fail2ban
Eine simple Jail-Konfiguration unter /etc/fail2ban/jail.local:
[sshd]
enabled = true maxretry = 5 bantime = 3600
findtime = 600
Damit fliegt jede IP für eine Stunde, die fünfmal in zehn Minuten falsch loggt.
Bonus: Logs regelmäßig prüfen
Auch der beste Schutz nützt nichts, wenn niemand hinschaut. Ein wöchentlicher Blick in /var/log/auth.log oder ein zentrales Logging-System (Loki, Graylog, Wazuh) hilft, ungewöhnliche Aktivitäten zu erkennen.
Hinweis: Die Maßnahmen ersetzen keine umfassende Server-Härtung. Wer mehr will, sollte sich CIS Benchmarks oder Lynis anschauen – oder einfach einen Audit machen lassen.