Zum Hauptinhalt springen Skip to page footer

Schlüsselbasierte Authentifizierung auf Linux: Ein umfassendes Tutorial zur Einrichtung und Absicherung

| Tutorial | SSH Linux

Entdecken Sie in unserem Tutorial die Vorteile der schlüsselbasierten Authentifizierung und lernen Sie, wie Sie sie Schritt für Schritt auf Ihrem Linux-System einrichten. Keine Passwörter mehr nötig - erhöhen Sie die Sicherheit Ihrer Zugangsdaten und erfahren Sie, wie Sie Ihren privaten Schlüssel optimal schützen.

Schlüsselbasierte Authentifizierung

Die schlüsselbasierte Authentifizierung ist eine sicherere Alternative zur herkömmlichen Passwortauthentifizierung und ist auf verschiedenen Linux-Distributionen verfügbar. Dieses Tutorial bietet Schritt-für-Schritt-Anleitungen zum Einrichten der schlüsselbasierten Authentifizierung auf Ihrem Linux-System. 

Schritt 1: Generieren Sie ein Schlüsselpaar

  • Öffnen Sie ein Terminal auf Ihrem lokalen Computer.
     
  • Geben Sie den folgenden Befehl ein, um ein neues Schlüsselpaar zu generieren
ssh-keygen -t rsa
  • Sie werden nach dem Speicherort des Schlüssels gefragt. Drücken Sie die Eingabetaste, um den Standardpfad (/home/benutzername/.ssh/id_rsa) beizubehalten.
     
  • Sie werden aufgefordert, ein optionales Passwort einzugeben. Das Passwort dient als zusätzliche Sicherheitsebene für Ihren privaten Schlüssel. Sie können ein Passwort eingeben oder die Eingabetaste drücken, um kein Passwort festzulegen. Beachten Sie jedoch, dass das Hinzufügen eines Passworts die Sicherheit erhöht.

Hinweis:

Wenn Sie die schlüsselbasierte Authentifizierung in einem Skript ohne die Angabe eines Passworts verwenden möchten, geben Sie hier kein Passwort ein.

  • Das Schlüsselpaar wurde erfolgreich generiert. Sie finden die Dateien id_rsa (privater Schlüssel) und id_rsa.pub (öffentlicher Schlüssel) im .ssh-Verzeichnis Ihres Benutzerverzeichnisses.

Schritt 2: Übertragen Sie den öffentlichen Schlüssel auf den Zielserver

  • Wechseln Sie zum Terminalfenster und verwenden Sie den folgenden Befehl, um den öffentlichen Schlüssel auf den Zielserver zu übertragen. Ersetzen Sie benutzername durch Ihren Benutzernamen und zielserver durch die IP-Adresse oder den Hostnamen des Zielservers:
ssh-copy-id benutzername@zielserver
  • Geben Sie das Passwort für Ihren Benutzer auf dem Zielserver ein, wenn Sie dazu aufgefordert werden.
  • Der öffentliche Schlüssel wird automatisch in das .ssh/authorized_keys-Verzeichnis auf dem Zielserver kopiert.

Schritt 3: Konfigurieren Sie den Zielserver für die schlüsselbasierte Authentifizierung

  • Öffnen Sie eine SSH-Verbindung zum Zielserver:
ssh benutzername@zielserver
  • Sobald Sie angemeldet sind, öffnen Sie die SSH-Konfigurationsdatei mit einem Texteditor:
Für Ubuntu oder Debian:
sudo nano /etc/ssh/sshd_config
Für Fedora oder CentOS:
sudo nano /etc/ssh/sshd_config
  • Suchen Sie die Zeile mit der Option "PasswordAuthentication" und ändern Sie den Wert von "yes" in "no". Dadurch wird die Passwort-Authentifizierung deaktiviert.

Hinweis

Sollen sich Benutzer weiterhin mit Passwort anmelden können, verändern Sie den Wert für die Option “PasswordAuthentication” nicht.

  • Suchen Sie die Zeile mit der Option "PubkeyAuthentication" und stellen Sie sicher, dass der Wert auf "yes" gesetzt ist. Dies ermöglicht die schlüsselbasierte Authentifizierung.
  • Speichern Sie die Datei und beenden Sie den Editor.

Schritt 4: Starten Sie den SSH-Dienst neu

  • Starten Sie den SSH-Dienst neu, um die Konfigurationsänderungen zu übernehmen. Verwenden Sie den Befehl, der Ihrem Linux-Derivat entspricht:
Für Ubuntu oder Debian:
sudo service ssh restart
Für Fedora:
sudo systemctl restart sshd
Für CentOS:
sudo systemctl restart sshd

Schritt 5: Testen der schlüsselbasierten Authentifizierung

  • Schließen Sie das aktuelle SSH-Terminalfenster zum Zielserver.
  • Öffnen Sie ein neues Terminalfenster auf Ihrem lokalen Computer.
  • Geben Sie den folgenden Befehl ein, um eine SSH-Verbindung mit dem Zielserver herzustellen. Stellen Sie sicher, dass Sie Ihren Benutzernamen und die IP-Adresse oder den Hostnamen des Zielservers angeben:
  • Wenn alles richtig eingerichtet ist, sollten Sie automatisch ohne Passworteingabe auf den Zielserver zugreifen können.

Sie haben die schlüsselbasierte Authentifizierung erfolgreich auf Ihrem Linux-System eingerichtet. Ab sofort können Sie sich sicher und bequem mit Ihrem Schlüssel auf den Zielservern authentifizieren.

Hinweis

Bewahren Sie Ihren privaten Schlüssel sicher auf und geben Sie ihn nicht an Unbefugte weiter. Der private Schlüssel gewährt Zugriff auf das System, in dem der öffentliche Schlüssel gespeichert ist. 

Achtung

Wenn Sie jemals Ihren privaten Schlüssel verlieren oder der Schlüssel kompromittiert wird, generieren Sie unbedingt ein neues Schlüsselpaar und aktualisieren Sie sofort den öffentlichen Schlüssel auf den Zielservern, auf die Sie Zugriff benötigen.