Foto von Kevin Ku: https://www.pexels.com/de-de/foto/schwarze-bewirtschaftete-brille-vor-laptop-computer-577585/

SSH (Secure Shell) ist das wichtigste Protokoll für den sicheren Fernzugriff auf Linux-Server. Doch eine unsichere SSH-Konfiguration kann dein System verwundbar machen. In diesem Beitrag zeige ich dir, wie du SSH absicherst, um Brute-Force-Angriffe, unerlaubte Zugriffe und andere Sicherheitsrisiken zu vermeiden. 🚀


🔍 Warum SSH absichern?

Standardmäßig läuft SSH auf Port 22, verwendet Passwort-Authentifizierung und erlaubt möglicherweise root-Logins – alles potenzielle Sicherheitsrisiken.

Brute-Force-Angriffe: Bots versuchen automatisiert, Passwörter zu erraten.
Root-Login: Falls jemand root-Zugriff erhält, kann er das gesamte System kompromittieren.
Standard-Port: Port 22 wird häufig von Angreifern gescannt.

➡️ Lösung: Die richtigen Einstellungen in der SSH-Config! 🔧


🛠️ Schritt 1: SSH-Port ändern

Die erste Maßnahme ist, den Standard-SSH-Port 22 zu ändern, damit dein Server weniger Angriffen ausgesetzt ist. Wähle einen zufälligen, freien Port (z. B. 2222 oder 5822).

Bearbeite die SSH-Konfigurationsdatei:

sudo nano /etc/ssh/sshd_config

Finde die Zeile mit Port 22 und ersetze sie:

Port 5822

💡 Wichtig: Stelle sicher, dass deine Firewall (z. B. UFW oder iptables) den neuen Port bereits erlaubt, bevor du den SSH-Dienst neu startest!

sudo ufw allow 5822/tcp

Speichern und SSH neu starten:

sudo systemctl restart sshd

🔐 Schritt 2: Root-Login deaktivieren

Es ist extrem gefährlich, sich direkt als root per SSH anzumelden. Deaktiviere den Root-Login mit:

PermitRootLogin no

Setze dies in /etc/ssh/sshd_config und starte den SSH-Dienst neu:

sudo systemctl restart sshd

Nun kann sich niemand mehr direkt als root anmelden! ✅


🔑 Schritt 3: Passwort-Authentifizierung abschalten

Nutze stattdessen SSH-Schlüsselpaare, um dich sicher anzumelden.

Falls du noch keinen SSH-Schlüssel hast:

ssh-keygen -t rsa -b 4096

Dann den öffentlichen Schlüssel auf den Server kopieren:

ssh-copy-id -p 5822 user@dein-server.de

Nun in der SSH-Konfiguration Passwort-Logins deaktivieren:

PasswordAuthentication no

Danach erneut den SSH-Dienst neustarten:

sudo systemctl restart sshd

➡️ Ab jetzt sind nur noch SSH-Keys erlaubt! 🔑


🚀 Schritt 4: SSH-Zugriff auf bestimmte Nutzer beschränken

Falls du möchtest, dass nur bestimmte User SSH nutzen dürfen, ergänze in /etc/ssh/sshd_config:

AllowUsers deinbenutzer

Oder falls mehrere Nutzer erlaubt sein sollen:

AllowUsers user1 user2

Das verhindert unbefugte Anmeldeversuche durch andere Accounts!


🛡️ Schritt 5: SSH mit Fail2Ban absichern

Fail2Ban schützt vor Brute-Force-Attacken, indem es IPs nach zu vielen Fehlversuchen blockiert.

Installation unter Ubuntu/Debian:

sudo apt install fail2ban -y

Dann eine Konfigurationsdatei anlegen:

sudo nano /etc/fail2ban/jail.local

Darin Folgendes hinzufügen:

[sshd]
enabled = true
maxretry = 5
bantime = 600

➡️ Nach 5 falschen Versuchen wird die IP für 10 Minuten gesperrt!

Danach Fail2Ban aktivieren:

sudo systemctl restart fail2ban

📌 Fazit: Dein SSH ist jetzt sicher! 🔐

Mit diesen einfachen, aber effektiven Maßnahmen schützt du deinen SSH-Zugang vor Angreifern:

Port geändert 🔄
Root-Login deaktiviert
Passwort-Logins abgeschaltet 🔑
Nutzerzugriff begrenzt 👥
Fail2Ban aktiviert 🛡️

💡 Tipp: Falls du mehrere SSH-Server verwalten musst, nutze meinen SSH-Konfigurationsgenerator, um schnell sichere Einstellungen zu erstellen! 🚀

Jetzt ist dein Server gegen die häufigsten Angriffe abgesichert! 🔥

Von Daniel Mattick

Ich bin Daniel, Technik-Enthusiast mit einer Vorliebe für Automatisierung, Skripting und alles, was IT-Prozesse einfacher macht. Ich bastle gerne an Lösungen, die den Alltag in der IT erleichtern – egal ob für Profis oder Neugierige, die sich in die Materie einarbeiten wollen. Dabei teile ich mein Wissen und meine Skripte in der IT Toolbox, weil ich finde: Gute Lösungen sollte man nicht für sich behalten!

5 Gedanken zu „Sichere SSH-Konfiguration leicht gemacht 🔐“
  1. Dieser Guide zur SSH-Sicherheit ist Gold wert! Ich habe alle Schritte direkt umgesetzt. Das Deaktivieren des Root-Logins und die Public-Key-Authentifizierung sind einfach Pflicht. Vielen Dank, Daniel, für diese umfassende Anleitung!

  2. Sehr gute Zusammenfassung der SSH-Best Practices. Besonders der Hinweis auf Fail2Ban ist wichtig. Jeder Serveradmin sollte diesen Artikel lesen und die Tipps umsetzen.

  3. Perfekte Anleitung, um SSH sicher zu machen. Die Schritt-für-Schritt-Anweisungen sind super. Mein Server ist jetzt deutlich widerstandsfähiger gegen Angriffe.

  4. Ein absolutes Muss für DevOps-Teams, die Server automatisiert provisionieren. Die Security-Maßnahmen sind einfach zu implementieren und erhöhen die Sicherheit massiv.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert