Einrichten der Public-Key-Authentifizierung für SSH: Eine Schritt-für-Schritt-Anleitung

Die Public-Key-Authentifizierung ist eine sichere Methode, um sich ohne Verwendung von Passwörtern auf einem Remote-System anzumelden. Anstelle der Eingabe eines Passworts für jede Authentifizierung verwenden Sie ein Paar kryptografischer Schlüssel: einen öffentlichen Schlüssel, der sich auf dem Remote-System befindet, und einen privaten Schlüssel, der auf Ihrem lokalen Gerät bleibt. Dieser Blog-Beitrag führt Sie durch den einfachen Prozess des Einrichtens der Public-Key-Authentifizierung für SSH auf Ihrem Linux-System.

Warum die Public-Key-Authentifizierung verwenden?

  • Erhöhte Sicherheit: Im Gegensatz zu Passwörtern, die erraten oder abgefangen werden können, ist die Public-Key-Kryptografie erheblich sicherer.
  • Bequemlichkeit: Nach der Einrichtung wird das Anmelden an Ihren Remote-Systemen schneller und erfordert weniger Aufwand.

Schritt-für-Schritt-Anleitung

Schritt 1: Generieren Sie Ihre Schlüssel

Um zu beginnen, müssen Sie Ihr Private-Public-Schlüsselpaar erstellen. Öffnen Sie Ihr Terminal und führen Sie den folgenden Befehl aus:

ssh-keygen

Dieser Befehl führt Sie durch den Schlüsselgenerierungsprozess. Standardmäßig erstellt er zwei Dateien:

  • id_rsa: Ihr privater Schlüssel (halten Sie diesen sicher!)
  • id_rsa.pub: Ihr öffentlicher Schlüssel (dies ist der, den Sie teilen werden)

Schritt 2: Kopieren Sie den öffentlichen Schlüssel auf das Remote-System

Als Nächstes ist es an der Zeit, Ihren öffentlichen Schlüssel auf das Remote-System zu übertragen. Dies erfordert Zugriff auf den Remote-Server, auf den Sie sich anmelden möchten. Sie müssen den Inhalt Ihrer Datei id_rsa.pub an die Datei ~/.ssh/authorized_keys auf dem Remote-Server anhängen. Dies können Sie effizient mit dem folgenden Befehl durchführen (nachdem Sie sich auf dem Remote-System angemeldet haben):

echo "Ihr-öffentlicher-Schlüssel" >> ~/.ssh/authorized_keys

Hinweis: Stellen Sie sicher, dass Sie “Ihr-öffentlicher-Schlüssel” durch den tatsächlichen Inhalt Ihrer Datei id_rsa.pub ersetzen.

Schritt 3: Berechtigungen für die Sicherheit setzen

Um sicherzustellen, dass Ihre privaten Schlüssel sicher gespeichert werden, müssen Sie die richtigen Berechtigungen festlegen. Führen Sie lokal aus:

chmod 600 ~/.ssh/id_rsa*

Und auf dem Remote-System setzen Sie die Berechtigungen für die Datei mit den autorisierten Schlüsseln wie folgt:

chmod 600 ~/.ssh/authorized_keys

Diese Befehle beschränken den Zugriff auf Ihre Schlüssel, sodass sie von anderen Benutzern nicht gelesen werden können.

Schritt 4: Testen Sie Ihre Einrichtung

Jetzt sind Sie bereit, Ihre Einrichtung zu testen! Verwenden Sie den SSH-Befehl, um sich mit dem Remote-System zu verbinden:

ssh benutzername@remote.system

Wenn alles korrekt konfiguriert ist, werden Sie nach dem Passwort für Ihren privaten Schlüssel gefragt, anstelle des Passworts des Remote-Benutzers.

Schritt 5: Verwendung von SSH-Agent zur Bequemlichkeit

Es kann mühsam werden, jedes Mal das Passwort Ihres Schlüssels einzugeben, wenn Sie sich verbinden. Um den Prozess zu vereinfachen, können Sie ssh-agent verwenden, der Ihre entschlüsselten Schlüssel im Speicher hält. So richten Sie es ein:

  1. Starten Sie ssh-agent mit dem Befehl:

    eval $(ssh-agent)
    

    Prüfen Sie, ob es bereits läuft, indem Sie:

    echo $SSH_AUTH_SOCK
    
  2. Fügen Sie Ihren privaten Schlüssel zum Agenten hinzu mit:

    ssh-add ~/.ssh/id_rsa
    

    Nachdem Sie Ihr Passwort einmal eingegeben haben, müssen Sie es nicht erneut eingeben, bis Sie es aus dem Agenten entfernen.

  3. Wenn Sie Ihre Schlüssel aus dem Agenten entfernen müssen, führen Sie einfach aus:

    ssh-add -D
    

Fazit

Die Einrichtung der Public-Key-Authentifizierung für SSH ist eine leistungsstarke Möglichkeit, sowohl Ihre Sicherheit als auch Ihre Effizienz beim Zugriff auf Remote-Systeme zu erhöhen. Indem Sie diesen Schritten folgen, schaffen Sie eine sichere, passwortlose Umgebung, die Ihnen Zeit spart und die Risiken im Zusammenhang mit traditionellen Passwortauthentifizierungen reduziert.

Jetzt können Sie sich sicher und einfach in Ihre Remote-Systeme einloggen! Zögern Sie nicht, auf diesen Leitfaden zurückzugreifen, während Sie die Public-Key-Authentifizierung auf Ihren Systemen einrichten.