Richten Sie den SSH-Server für die Schlüsselauthentifizierung unter Ubuntu 17.04 | ein 17.10

  • George Richardson
  • 0
  • 3757
  • 324

Dieses kurze Tutorial zeigt Schülern und neuen Benutzern, wie Sie den OpenSSH-Server für die Schlüsselauthentifizierung oder die kennwortlose Authentifizierung einrichten. Mit diesem Setup können sich Benutzer des Ubuntu-Servers über SSH anmelden, ohne Kennwörter eingeben zu müssen.

Dies ist eine viel sicherere Alternative zur SSH-Kennwortauthentifizierung. Bei der Kennwortauthentifizierung muss ein Benutzer jedes Mal, wenn er sich anmelden möchte, ein Kennwort eingeben. Eine weitere Schwäche ist, dass das Passwort von jedem erraten werden kann.

Bei der Schlüsselauthentifizierung wird niemals ein Kennwort eingegeben. Es sind nur Clientcomputer mit dem richtigen Schlüsselpaar zum Server zulässig.

Führen Sie die folgenden Schritte aus, um SSH mit Schlüsselauthentifizierung zu konfigurieren:

Schritt 1: Generieren Sie einen SSH-Schlüssel für jeden Benutzer

Um sich über die SSH-Schlüsselauthentifizierung anzumelden, müssen Sie zuerst ein Schlüsselpaar generieren. Es werden zwei Schlüssel erstellt: einer öffentlich und der andere privat. Der private Schlüssel muss auf dem Server bleiben und der öffentliche Schlüssel muss sicher mit den Clients geteilt werden.

Melden Sie sich über SSH als den Benutzer an, den Sie konfigurieren möchten, und führen Sie dann die folgenden Befehle aus, um ein SSH-Schlüsselpaar zu generieren.

ssh-keygen -t rsa

Wenn Sie dazu aufgefordert werden, drücken Sie die Eingabetaste, um den Standardspeicherort für die Schlüssel zu übernehmen. Standardmäßig wird dieser im Basisverzeichnis des Benutzers im versteckten .ssh-Ordner gespeichert.

richard @ ubuntu1704: ~ $ ssh-keygen -t rsa Generiert ein öffentliches / privates rsa-Schlüsselpaar. Geben Sie die Datei ein, in der der Schlüssel gespeichert werden soll (/home/richard/.ssh/id_rsa): Geben Sie das erstellte Verzeichnis '/home/richard/.ssh' ein. Passphrase eingeben (leer für keine Passphrase): Enter Gleiche Passphrase erneut eingeben: Enter Ihre Identifikation wurde in /home/richard/.ssh/id_rsa gespeichert. Ihr öffentlicher Schlüssel wurde in /home/richard/.ssh/id_rsa.pub gespeichert. 

Schritt 2: Geben Sie den öffentlichen Schlüssel für den Client-PC frei

Nach dem Erstellen des obigen Schlüsselpaars wird ein öffentlicher Schlüssel aufgerufen id_rsa.pub wird in der gespeichert ~ / .ssh /. Ein Ordner, der auch aufgerufen wird autorisierte_Tasten wird auch in diesem Verzeichnis erstellt. Der SSH-Server schaut in die ~ / .ssh / autorisierte_Tasten für alle autorisierten Schlüssel, die sich am Server anmelden können.

Führen Sie also die folgenden Befehle aus, um den oben erstellten öffentlichen Schlüssel in den zu verschieben ~ / .ssh / autorisierte_Tasten-Datei.

mv ~ / .ssh / id_rsa.pub ~ / .ssh / autorisierte_Tasten

Melden Sie sich nach dem Ausführen der obigen Befehle am Client-Computer an… hoffentlich auf einem anderen Linux-Computer, und führen Sie die folgenden Befehle aus, um den öffentlichen Schlüssel auf den Client-Computer zu kopieren.

mkdir ~ / .ssh scp richard @ Servername: /home/richard/.ssh/id_rsa ~ / .ssh / 

Der Schlüssel sollte auf den Client-Computer kopiert werden.

Schritt 3: Melden Sie sich ohne Passwort bei SSH an

Nachdem Sie den Schlüssel für den Clientcomputer erhalten haben, melden Sie sich beim Server an und öffnen Sie die SSH-Standardkonfigurationsdatei, indem Sie die folgenden Befehle ausführen

sudo nano / etc / ssh / sshd_config

Nehmen Sie dann die unten hervorgehobenen Änderungen vor und speichern Sie die Datei.

# Um getunnelte Klartext-Passwörter zu deaktivieren, ändern Sie hier auf Nein! PasswordAuthentication nein ChallengeResponseAuthentication nein UsePAM ja #PermitEmptyPasswords nein 

Speichern Sie die Datei und starten Sie SSH neu

sudo systemctl ssh neu starten

Schützen Sie Ihre Schlüssel.

Führen Sie auf dem Server die folgenden Befehle aus, um die SSH-Schlüssel zu schützen.

chmod 600 ~ / .ssh / autorisierte_Tasten

Jetzt werden nur Clients mit dem passenden Schlüsselpaar auf den Server zugelassen. Führen Sie zum Herstellen einer Verbindung die folgenden Befehle aus, indem Sie den Servernamen durch die ursprünglichen Server ersetzen.

ssh richard @ server_name

Wird sich anmelden, ohne ein Passwort einzugeben.

Wenn Sie den Schlüssel für einen Windows-Computer erhalten, können Sie sich auch mit PuTTY automatisch anmelden.

Viel Spaß ~




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

Eine Sammlung nützlicher Informationen zum Linux-Betriebssystem und zu neuen Technologien
Frische Artikel, praktische Tipps, ausführliche Rezensionen und Anleitungen. Fühlen Sie sich in der Welt des Linux-Betriebssystems zu Hause