Inter-Data > Blog > Sicherer Zugriff auf deinen Linux-Server ohne Passwort: SSH-Schlüsselpaar erstellen und einrichten

Sicherer Zugriff auf deinen Linux-Server ohne Passwort: SSH-Schlüsselpaar erstellen und einrichten

SSH ohne Passwort

Der Zugriff auf deinen Linux-Server ohne die Notwendigkeit eines Passworts kann nicht nur die Sicherheit erhöhen, sondern auch den Verbindungsprozess beschleunigen. In diesem Blogbeitrag zeige ich dir, wie du ein SSH-Schlüsselpaar erstellen und einrichten kannst, um dich ohne Passwort auf deinem Server anzumelden.

Warum SSH-Schlüssel verwenden?

SSH-Schlüssel bieten mehrere Vorteile:

  • Sicherheit: Sie sind sicherer als Passwörter, da sie eine starke Verschlüsselung nutzen.
  • Komfort: Du musst dir kein Passwort merken oder eingeben.
  • Automatisierung: Ideal für Skripte und automatisierte Prozesse, die sichere Verbindungen benötigen.

Schritt 1: SSH-Schlüssel generieren

Zuerst musst du ein SSH-Schlüsselpaar auf deinem lokalen Rechner generieren. Öffne dazu deine Konsole und führe den folgenden Befehl aus:

ssh-keygen -t rsa -b 4096 -C "deine_email@beispiel.com"

Dieser Befehl erstellt ein neues RSA-Schlüsselpaar mit einer Schlüssellänge von 4096 Bit und einer optionalen E-Mail-Adresse als Kommentar. Du wirst nach einem Dateinamen gefragt. Drücke einfach die Eingabetaste, um die Standardspeicherorte zu verwenden. Du kannst auch eine Passphrase hinzufügen, um den Schlüssel zusätzlich zu sichern.

Warum eine Passphrase sinnvoll ist

Das Hinzufügen einer Passphrase zu deinem privaten Schlüssel erhöht die Sicherheit erheblich. Hier sind einige Gründe, warum du eine Passphrase verwenden solltest:

  • Schutz bei Schlüsselverlust: Wenn jemand deinen privaten Schlüssel stiehlt, kann er diesen ohne die Passphrase nicht verwenden.
  • Erhöhte Sicherheit: Selbst wenn dein Computer kompromittiert wird, bietet die Passphrase eine zusätzliche Schutzschicht.
  • Verhinderung unbefugter Nutzung: Sollte jemand physischen Zugriff auf dein Gerät erhalten, kann er ohne die Passphrase den privaten Schlüssel nicht nutzen.

Schritt 2: Öffentlichen Schlüssel auf den Server kopieren

Nachdem du das Schlüsselpaar erstellt hast, musst du den öffentlichen Schlüssel auf deinen Server kopieren. Dies kann mit dem ssh-copy-id Befehl erfolgen. Ersetze benutzername durch deinen Benutzernamen und deine_server_ip durch die IP-Adresse deines Servers:

ssh-copy-id benutzername@deine_server_ip

Falls, wie z.B. bei Hetzner, in der Konsole H der Port mit angeben werden muss sie der Befehl wie folgt aus. Wobei 222 natürlich die Nummer des Ports ist.

ssh-copy-id -p 222 benutzername@deine_server_ip

Du wirst nach dem Passwort des Benutzers auf dem Server gefragt. Nach erfolgreicher Authentifizierung wird der öffentliche Schlüssel in die Datei ~/.ssh/authorized_keys des Benutzers eingefügt.

Schritt 3: Verbindung ohne Passwort herstellen

Jetzt kannst du dich ohne Passwort auf deinem Server anmelden. Verwende einfach den ssh Befehl:

ssh benutzername@deine_server_ip

Wenn alles korrekt eingerichtet ist, solltest du direkt auf den Server zugreifen können, ohne nach einem Passwort gefragt zu werden. Hinweis: Wenn dein Benutzername auf dem lokalen Rechner derselbe ist wie der Benutzername auf dem Server, kannst du den Benutzernamen in dem Befehl weglassen:

ssh deine_server_ip

In diesem Fall wird automatisch der aktuelle Benutzername des lokalen Rechners verwendet.

Fehlerbehebung

Sollten Probleme auftreten, überprüfe folgende Punkte:

  • Dateiberechtigungen: Stelle sicher, dass die Datei- und Verzeichnisberechtigungen korrekt sind. Der .ssh Ordner und die authorized_keys Datei sollten nur für den Benutzer lesbar sein:
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    
  • SSH-Server-Konfiguration: Überprüfe die SSH-Server-Konfigurationsdatei (/etc/ssh/sshd_config) und stelle sicher, dass die folgenden Einstellungen aktiviert sind:
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
    
    Starte den SSH-Dienst neu, um die Änderungen zu übernehmen:
    sudo systemctl restart sshd
    

Fazit

Das Einrichten eines SSH-Schlüsselpaares zur passwortlosen Anmeldung ist ein wichtiger Schritt, um die Sicherheit und Effizienz deines Serverzugriffs zu verbessern. Mit den oben beschriebenen Schritten kannst du sicherstellen, dass deine Verbindungen sicher und bequem sind.

Bei Fragen oder Anregungen, schreibe uns eine Email. Wir freuen uns über dein Feedback!