In diesem Artikel werden Ihnen ein Schritt-für-Schritt-SSH-Schlüsselgenerierungshandbuch für das Ubuntu-System bereitgestellt. Wir werden diskutieren, wie Sie einen SSH-Schlüssel generieren und SSH-Basis-Authentifizierung auf Ubuntu 20 einrichten.04 System. Lassen Sie uns auf die Details eintauchen!
Voraussetzungen
Root -Benutzerberechtigte sind erforderlich, um den Verwaltungsbefehl auf Ubuntu 20 auszuführen.04 System.
Generieren Sie SSH -Schlüssel zu Ubuntu 20.04 System
Wenn Sie dem nachstehenden Verfahren folgen, können Sie den SSH-Schlüssel auf Ubuntu 20 problemlos generieren.04 System:
Schritt 1: Erstellen Sie das SSH -Schlüsselpaar
Generieren Sie zunächst den SSH -Schlüssel auf dem Ubuntu -Client -Computer. Dieser Computer stellt eine Verbindung zum Server her.
Überprüfen Sie das SSH -Schlüsselpaar, wenn existiert
Stellen Sie vor dem Erstellen des SSH -Schlüssels sicher, dass Sie noch nicht über den SSH -Schlüssel in Ihrem Kundensystem verfügen. Manchmal haben Sie bereits ein SSH -Schlüsselpaar auf Ihrem Ubuntu -System. Wenn Sie also ein neues Schlüsselpaar erstellen, wird es auf dem alten überschrieben. Um zu überprüfen, ob entweder die SSH -Schlüsseldatei auf Ihrem Client -Computer vorhanden ist oder nicht, geben Sie den folgenden Befehl ein:
$ ls -l ~/.ssh/id_*.Pub
Generieren Sie ein neues SSH -Schlüsselpaar
Wenn Sie einen Fehler erhalten, der mit der Aufschrift „Keine solche Datei oder Verzeichnis“ wird, bedeutet dies, dass Sie keinen SSH -Schlüssel auf Ihrem Computer haben. Gehen Sie also zum nächsten Schritt auf. Generieren Sie das SSH -Schlüsselpaar auf der Ubuntu -Client -Maschine. Führen Sie den folgenden Befehl aus:
$ ssh -keygen -t rsa -b 4096 -c "[email protected] "
Oder
$ ssh-keygen
Wenn Sie den obigen Befehl "SSH-Keygen" ausführen, generiert er ein Standard-RSA-Taste-Paar von 3072-Bit-RSA-Tasten. Um die SSH -Taste für den Standardstandort in der 'zu speichern.SSH/ 'Unterabzeichnung, klicken Sie auf "Eingabetaste".
Jetzt wird es gebeten, die Passphrase einzugeben. Die Passphrase enthält eine zusätzliche Sicherheitsschicht. Sie müssen jedoch jedes Mal eingeben, wenn Sie sich auf einem Remote -Computer anmelden. Lassen Sie es also als leer, indem Sie "Eingabetaste" drücken. Danach wird der folgende gesamte Ausgangsbildschirm auf dem Terminal angezeigt:
Überprüfen Sie das generierte SSH -Schlüsselpaar
Um das SSH-Schlüsselpaar zu überprüfen, wird auf der Client-Maschine erfolgreich generiert. Verwenden Sie den folgenden Befehl:
$ ls ~/.ssh/id_*
Das folgende Ergebnis wird am Terminal angezeigt:
Das bedeutet, dass Sie das SSH -Schlüsselpaar erfolgreich im Ubuntu -Client -System generiert haben.
Schritt 2: Kopieren Sie den öffentlichen Schlüssel auf Ubuntu Remote Server
In diesem Schritt kopiert der generierte SSH -öffentliche Schlüssel in den Remote Ubuntu -Server, den Sie verwalten möchten. Verwenden Sie das Tool „SSH-Copy-ID“, das die empfohlene Möglichkeit ist, die öffentliche ID auf den Remote-Server zu kopieren. Geben Sie den folgenden Befehl auf dem Client-Computer aus, um den öffentlichen Schlüssel auf Ihrem Remote-Ubuntu-Server problemlos zu kopieren:
$ ssh-copy-id user_name@server_ipaddress
Ersetzen Sie die server_ipaddress durch Ihr System IP_ADDRESS.
Wenn Sie das erste Mal an Ihr System anschließen, kann die folgende Nachricht in Ihrem Terminal angezeigt werden:
Geben Sie 'Ja' ein und drücken Sie dann "Eingabetaste", um den Prozess fortzusetzen. Der Server überprüft und überprüft den zuvor generierten SSH -Schlüssel auf dem Client -Computer. Im nächsten Schritt werden Sie aufgefordert, das Benutzerkennwort für das Serverkonto einzugeben und dann die Taste 'Eingabetaste' von der Tastatur zu klicken. Die folgende Ausgabe erhält im Terminalfenster:
Manchmal erhalten Sie einen Fehler mit der SSH-Copy-ID-Methode. In diesem Fall ist eine alternativ manuelle Kopie -SSH -Schlüsselmethode verfügbar. Verwenden Sie den unten erwähnten Befehl, um den öffentlichen SSH-Schlüssel auf einem Server manuell zu kopieren:
$ cat ~/.ssh/id_rsa.Pub | ssh user_name@server_ipaddress "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~//.ssh/autorized_keys && chmod 600 ~/.ssh/autorized_keys "
Ersetzen Sie user_name und server_ipaddress durch Details Ihres Computers.
Schritt 3: Melden Sie sich mit dem SSH -Schlüssel auf einem Remote -Server an
In diesem Schritt melden Sie sich über SSH auf Ihrem Remote -Server an, indem Sie den folgenden Befehl ausführen:
$ ssh user_name@server_ipaddress
Wenn Sie die sichere Passphrase für den privaten Schlüssel nicht verwendet haben, werden Sie sofort auf einem Remote -Server angemeldet. In einem anderen Szenario werden Sie gebeten, diese sichere Passphrase einzugeben, die Sie zuvor festgelegt haben.
Schritt 4: Deaktivieren Sie die SSH -Kennwortauthentifizierung
In diesem Schritt deaktivieren Sie die SSH -Kennwortauthentifizierung, um eine zusätzliche Sicherheitsebene hinzuzufügen. Stellen Sie vor dem Deaktivieren sicher, dass der Benutzer, der sich anmeldet. Melden Sie sich zunächst mit einem Stammkonto oder Sudo -Berechtigungen in Ihren Remote -Server an. Öffnen Sie nun die SSH-Konfigurationsdatei von '/etc/ssh/sshd_config, indem du den folgenden Befehl auslegst:
$ sudo nano/etc/ssh/sshd_config
Suchen Sie die folgende Konfigurationslinie und stellen Sie sie mit einem "Nein" -Argument ein.
PasswortAuthentication -Nr
Speichern Sie die obige Konfiguration und beenden Sie die Datei aus.
Es ist an der Zeit, den Dienst von SSH auf Ihrem Server neu zu starten, indem Sie den folgenden Befehl ausführen:
$ sudo systemctl neu starten ssh neu starten
Es ist am besten zu überprüfen. Wenn normalerweise alles funktioniert, ist die SSH-Kennwortauthentifizierung auf Ihrem Server deaktiviert.
Abschluss
Wenn Sie den Schritt-für-Schritt-Richtlinien dieses Artikels folgen, können Sie den SSH-Schlüssel Ubuntu 20 generieren.04 System leicht. Darüber hinaus haben wir besprochen, wie Sie den SSH-Schlüssel auf Ihren Remote-Server kopieren und die kennwortbasierte Authentifizierung deaktivieren können. Ich hoffe, dieser Leitfaden wird einfach und beschreibend sein, um Ihr SSH -Schlüsselproblem zu lösen.