Erstellen eines SSH-Schlüsselpaares unter Windows, Mac und Linux

Die Verwendung von SSH-Schlüsselpaaren statt traditioneller Passwort-Logins bietet eine deutlich erhöhte Sicherheit für deine Serververbindungen. SSH-Schlüssel sind komplexer und daher schwerer zu erraten oder zu knacken als herkömmliche Passwörter. Zudem kannst du den Passwort-Login auf dem Server deaktivieren, um die Sicherheit weiter zu erhöhen. Hier zeigen wir dir, wie du ein SSH-Schlüsselpaar unter Windows, Mac und Linux erstellst, den öffentlichen Schlüssel auf dem Server hinterlegst und den Passwort-Login abschaltest.

Warum sind Zertifikats-Logins sicherer?

Zertifikats-Logins, basierend auf SSH-Schlüsselpaaren, sind sicherer als Passwort-Logins, weil:

  • Komplexität: SSH-Schlüssel haben Tausende von Bits an Daten, im Gegensatz zu Passwörtern, die in der Regel viel kürzer sind.
  • Private Schlüssel: Der private Schlüssel bleibt immer auf deinem lokalen Rechner und wird nie über das Netzwerk übertragen.
  • Phishing-Resistenz: Selbst wenn ein Angreifer den Verkehr abfängt, ohne den privaten Schlüssel kann er keine Authentifizierung durchführen.

Windows

SSH-Schlüssel mit PuTTYgen erstellen

  1. PuTTYgen herunterladen: Lade PuTTYgen von der offiziellen PuTTY-Download-Seite herunter und starte das Programm.
  2. Schlüssel generieren:
    • Wähle ed25519 als Typ für den zu generierenden Schlüssel.
    • Klicke auf Generate und bewege die Maus im Fenster, um Zufälligkeit zu erzeugen.
  3. Schlüssel speichern:
    • Gib eine Passphrase ein und speichere den privaten Schlüssel über Save private key.
    • Speichere den öffentlichen Schlüssel über Save public key.

SSH-Schlüssel mit OpenSSH erstellen

In Windows 10 und Windows 11 kannst du auch den integrierten OpenSSH-Client nutzen:

  1. PowerShell öffnen und folgenden Befehl eingeben: ssh-keygen -t ed25519
  2. Speicherort und Passphrase wählen, wenn dazu aufgefordert.

Mac und Linux

Das Erstellen eines SSH-Schlüsselpaares unter Mac und Linux ist ähnlich und kann einfach über das Terminal erfolgen:

  1. Terminal öffnen und folgenden Befehl eingeben: ssh-keygen -t ed25519
  2. Bei der Aufforderung, den Speicherort für den Schlüssel anzugeben, kannst du Enter drücken, um die Standardoption zu wählen. Gib eine Passphrase ein, um deinen Schlüssel zu sichern.

Öffentlichen Schlüssel auf dem Server hinterlegen

Nachdem du dein SSH-Schlüsselpaar erstellt hast, musst du den öffentlichen Schlüssel auf deinem Server hinterlegen:

  1. Öffentlichen Schlüssel kopieren:
    • Unter Windows findest du den öffentlichen Schlüssel im PuTTYgen-Fenster oder im angegebenen Speicherort, wenn du OpenSSH verwendet hast.
    • Unter Mac und Linux kannst du den Inhalt deines öffentlichen Schlüssels mit cat ~/.ssh/id_rsa.pub anzeigen.
  2. SSH-Verbindung zum Server herstellen und den öffentlichen Schlüssel in ~/.ssh/authorized_keys des Zielbenutzers einfügen:
    • Du kannst den öffentlichen Schlüssel manuell einfügen, indem du dich über SSH auf dem Server anmeldest und den Schlüssel mit einem Texteditor in die authorized_keys-Datei einfügst.
    • Alternativ kannst du unter Mac und Linux den Befehl ssh-copy-id benutzername@serveradresse verwenden, der automatisch deinen öffentlichen Schlüssel im entsprechenden Verzeichnis des Servers hinterlegt.

Passwort-Login auf dem SSH-Server abschalten

Um die Sicherheit deines Servers zu erhöhen, solltest du den Passwort-Login für SSH abschalten. So geht’s:

  1. Verbinde dich mit deinem Server: Nutze SSH, um dich mit deinem Server zu verbinden.
  2. SSH-Konfigurationsdatei bearbeiten: Öffne die SSH-Konfigurationsdatei in einem Texteditor. Du benötigst root-Zugriff, um diese Datei zu bearbeiten. sudo nano /etc/ssh/sshd_config
  3. Passwort-Authentication deaktivieren: Suche in der Datei nach der Zeile #PasswordAuthentication yes und ändere sie zu PasswordAuthentication no . Wenn diese Zeile nicht existiert, füge PasswordAuthentication no am Ende der Datei hinzu.
  4. Konfiguration speichern und SSH-Dienst neu starten: Speichere die Änderungen und schließe den Editor. Starte den SSH-Dienst neu, um die Änderungen zu übernehmen. sudo systemctl restart sshd
  5. Testen: Nachdem der SSH-Dienst neu gestartet wurde, versuche, dich erneut zu verbinden, um sicherzustellen, dass alles korrekt funktioniert. Du solltest nicht mehr in der Lage sein, dich mit einem Passwort anzumelden.

Fazit

Durch das Erstellen eines SSH-Schlüsselpaares und die Deaktivierung des Passwort-Logins erhöhst du die Sicherheit deines Servers erheblich. Dieser Ansatz schützt vor einer Vielzahl von Angriffen und macht den Zugriff für autorisierte Benutzer effizient und sicher. Denke daran, dass du vor dem Deaktivieren des Passwort-Logins sicherstellen solltest, dass dein SSH-Schlüsselpaar korrekt funktioniert, um einen Ausschluss vom System zu vermeiden.

Schreibe einen Kommentar

Diese Seite ist durch reCAPTCHA und Google geschützt Datenschutz-Bestimmungen und Nutzungsbedingungen anwenden.

Der Zeitraum für die reCAPTCHA-Überprüfung ist abgelaufen. Bitte laden Sie die Seite neu.