So kopieren Sie die SSH-Schlüssel

Um unser Thema besser zu verstehen, müssen wir zunächst besprechen, was SSH-Schlüssel sind. Ein SSH-Schlüssel, auch Secure Shell-Schlüssel genannt, ist ein Netzwerkprotokoll-Zugriffsnachweis für SSH. Es ist authentisch und verschlüsselt, was ein äußerst sicheres Protokoll bietet. Es wird verwendet, um die verschiedenen Maschinen in einem ungesicherten offenen Netzwerk miteinander kommunizieren zu lassen. Aufgrund seiner Authentifizierung macht es die Kommunikation verschlüsselt und sicher. Dieses Protokoll wird für die Fernübertragung von Dateien und den Fernzugriff auf Betriebssysteme verwendet.

Um den SSH-Schlüssel zu finden, müssen wir das Terminal auf unserem Gerät öffnen und den Befehl „ls -al ~/.ssh“ eingeben. Dieser Befehl sagt uns, ob die vorhandenen SSH-Schlüssel dort vorhanden sind oder nicht. Auf die gleiche Weise können wir einen Befehl verwenden, während wir mit den SSH-Schlüsseln arbeiten. Der Befehl heißt ssh-copy-id-Befehl. Dieser Befehl hilft uns bei der Installation der SSH-Schlüssel auf einem Remote-Computer oder der autorisierten Schlüssel des Servers. Es hilft uns bei der SSH-Schlüsselanmeldung, sodass wir nicht jedes Mal die Anmelde-ID und das Passwort eingeben müssen. Der SSH-Befehl ist ein Teilbereich des OpenSSH-Tools, mit dem mithilfe verschlüsselter Verbindungen die Verwaltungsdienste auf Remote-Geräten ausgeführt werden.

Kopieren des SSH-Schlüssels

Denken Sie unbedingt daran, dass die SSH-Schlüssel aus einem öffentlichen und einem privaten Schlüssel bestehen, bevor Sie beginnen. Der öffentliche Schlüssel wird mit dem Remote-Server geteilt und zum Verschlüsseln der Verbindung verwendet, während der private Schlüssel auf Ihrem lokalen Computer gespeichert wird und zum Entschlüsseln der Verbindung verwendet wird.

Um einen SSH-Schlüssel in Ubuntu zu kopieren, benötigen Sie ein vorhandenes SSH-Schlüsselpaar. Wenn Sie noch keins haben, können Sie eines mit dem Befehl ssh-keygen generieren. Jetzt erstellen wir mit dem SSH-Befehl keygen ein Schlüsselpaar und verwenden dabei die Option -t, um den Typ des zu generierenden Schlüssels anzugeben (z. B. rsa, dsa usw.).

kalsoom@linux-VirtualBox:~$ ssh-keygen -t rsa

Drücken Sie „Enter“, um den Befehl auszuführen. Nachdem Sie den Speicherort und den Namen der Datei angegeben haben, erhält es von Ihnen eine Passphrase. Um Ihren privaten Schlüssel zu schützen, können Sie als zusätzlichen Sicherheitsschritt eine Passphrase verwenden. Wenn Sie eine Passphrase eingeben, werden Sie jedes Mal zur Eingabe dieser aufgefordert, wenn Sie den Schlüssel verwenden, um eine Verbindung zu einem Remote-Server herzustellen. Es ist wichtig, eine sichere Passphrase zu verwenden, die schwer zu erraten ist. Sie können eine beliebige Phrase nach Ihren Wünschen eingeben. In unserem Fall lassen wir es leer. Dazu tragen wir „leer“ ein. Nach Eingabe dieser Details erhalten wir die folgende angezeigte Ausgabe:

Generieren eines öffentlichen/privaten RSA-Schlüsselpaars.
Geben Sie die Datei ein, in der der Schlüssel gespeichert werden soll (/home/linux/.ssh/id_rsa): /home/linux/key.txt
/home/linux/key.txt existiert bereits.
Überschreiben (j/n)? j
Geben Sie die Passphrase ein (leer für keine Passphrase):
Geben Sie dieselbe Passphrase erneut ein:
Passphrasen stimmen nicht überein. Versuchen Sie es erneut.
Geben Sie die Passphrase ein (leer für keine Passphrase):
Geben Sie dieselbe Passphrase erneut ein:
Ihre Identifikation wurde in /home/linux/key.txt gespeichert
Ihr öffentlicher Schlüssel wurde in /home/linux/key.txt.pub gespeichert
Der Schlüsselfingerabdruck ist:
SHA256:zCpQ+8kEraxbmY90qq9m3JNNt+CEw905MfvSuJbyrps linux@linux-VirtualBox
Das Randomart-Bild des Schlüssels ist:
+—[RSA 3072]—-+
| |
| . |
| Ö . |
| o + oo |
| ..+o..S= |
| o+*=o* |
| …*B*o B |
| +++++.* o |
| o+++.EB+o |
+—-[SHA256]—–+

Der Befehl ssh-keygen generiert zwei Dateien: eine private Schlüsseldatei (mit der Erweiterung .pem oder .ppk) und eine öffentliche Schlüsseldatei (mit der Erweiterung .pub). Es ist in den folgenden Snippet-Dateien mit dem Namen „key“ zusammen mit seiner Erweiterung zu sehen, die im Home-Verzeichnis gespeichert ist.

Sobald das Schlüsselpaar erstellt ist, können Sie mit dem Befehl cat sehen, was der öffentliche Schlüssel enthält. Der Home-Ordner enthält den öffentlichen Schlüssel mit dem Dateinamen „key.pub“. Um den Inhalt des öffentlichen Schlüssels anzuzeigen, geben Sie den folgenden Befehl ein:

kalsoom@linux-VirtualBox:~$ cat ~/key.pub

Der Inhalt der öffentlichen Schlüsseldatei sollte in Ihre Zwischenablage kopiert werden. Sie können dies tun, indem Sie den Inhalt der Datei markieren und die Tasten Strg+C drücken oder indem Sie mit der rechten Maustaste auf das Terminalfenster klicken und die Option „Kopieren“ auswählen.

Stellen Sie mit dem SSH-Befehl eine Verbindung zu dem Remote-Server her, auf den Sie Ihren Schlüssel kopieren möchten, indem Sie den Benutzernamen und den Hostnamen des Servers angeben. Zum Beispiel:

kalsoom@linux-VirtualBox:~$ ssh user@hostname

Sie können sich auch manuell beim Remote-Server anmelden. Es sollte darauf geachtet werden, dass Sie denselben Benutzer verwenden. Öffnen Sie die Datei mit den autorisierten Schlüsseln auf dem Remote-Server, nachdem Sie eine Verbindung hergestellt haben. Diese Datei befindet sich im Verzeichnis ~/.ssh auf dem Server.

kalsoom@linux-VirtualBox:~$ nano ~/.ssh/authorized_keys

Fügen Sie den Inhalt Ihrer Zwischenablage in die Datei „authorized_keys“ ein, indem Sie die Tasten Strg+V drücken. Stellen Sie sicher, dass sich der Schlüssel in einer einzelnen Zeile befindet und keine zusätzlichen Leerzeichen oder Zeilenumbrüche vorhanden sind.

Wie wir im vorherigen Snippet sehen können, haben wir die zusätzlichen Leerzeichen nicht in die Datei eingefügt, da es bei der Autorisierung zu einer Fehlermeldung kommt. Speichern Sie die Datei „authorized_keys“ durch Drücken der Tastenkombination Strg+X. Drücken Sie dann die Y-Taste und dann die Eingabetaste.

Für das Verzeichnis /.ssh und die Datei /.ssh/authorized_keys müssen nach dem Kopieren des öffentlichen Schlüssels auf den Server die richtigen Berechtigungen festgelegt werden, um sicherzustellen, dass nur autorisierte Benutzer darauf zugreifen können. Dieser Befehl legt die Berechtigungen für die Datei ~/.ssh/authorized_keys fest, sodass nur der Besitzer (Benutzer) die Berechtigungen gelesen und geschrieben hat.

Es ist unbedingt zu beachten, dass die Berechtigungen für das Verzeichnis ~/.ssh auf 700 und die Berechtigungen für die Datei ~/.ssh/authorized_keys auf 600 festgelegt werden sollten, um sicherzustellen, dass der private Schlüssel sicher bleibt. Dazu führen wir den Befehl aus, der im Folgenden angezeigt wird:

kalsoom@linux-VirtualBox:~$ chmod 700 ~/.ssh

kalsoom@linux-VirtualBox:~$ chmod 600 ~/.ssh/authorized_keys

Der Befehl chmod wird verwendet, um die Berechtigungen für eine Datei oder ein Verzeichnis unter Linux zu ändern. Diese Befehle ändern die Berechtigungen der Dateien und Ordner im jeweiligen Verzeichnis bzw. der „authorized_keys“ und stellen sicher, dass nur der Eigentümer Zugriff auf die Dateien hat.

Versuchen Sie erneut, über SSH eine Verbindung zum Server herzustellen, indem Sie den Benutzernamen und den Hostnamen des Servers angeben:

kalsoom@linux-VirtualBox:~$ ssh user@hostname

Wenn Sie beim Erstellen des SSH-Schlüssels eine Passphrase festlegen, wird zur Eingabe dieser aufgefordert. Wenn alles richtig konfiguriert ist, sollten Sie in der Lage sein, eine Verbindung zum Server herzustellen.

Abschluss

Wir haben gelernt, wie man einen SSH-Schlüssel in Ubuntu kopiert. Dieser Vorgang ist nützlich, wenn Sie die passwortlose Anmeldung an einem Remote-Server einrichten oder Ihren SSH-Schlüssel mit einem Freund oder Kollegen teilen möchten. Denken Sie daran, dass es je nach den Anforderungen Ihres Szenarios zahlreiche Variationen dieses Verfahrens gibt.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen