So Erstellen und Installieren Sie SSH-Schlüssel Aus der Linux-Shell

0
388
Fatmawati Achmad Zaenuri/Shutterstock.com

Nehmen Sie Internetsicherheit ernst und verwenden Sie SSH-Schlüssel für den Zugriff auf remote-logins. Sie sind ein sicherer Weg, um eine Verbindung als Passwörter. Wir zeigen Ihnen, wie Sie zu erzeugen, es zu installieren, und die Verwendung von SSH-keys unter Linux.

Was ist Falsch Mit Passwörtern?

Secure shell (SSH) ist das verschlüsselte Protokoll verwendet, um log-in für Benutzer-accounts auf einem Linux-oder Unix-Computer. Typischerweise sind solche Benutzerkonten gesichert werden mithilfe von Passwörtern. Wenn Sie sich bei einem remote-computer, geben Sie den Benutzernamen und das Kennwort für das Konto Sie angemeldet sind in.

Passwörter sind die am meisten gebräuchliche Mittel der Sicherung des Zugangs zu Ressourcen. Trotz dieser, Passwort-basierte Sicherheit hat seine Fehler. Menschen wählen schwache Passwörter, teilen Sie die Passwörter, verwenden Sie das gleiche Kennwort auf mehreren Systemen, und so weiter.

SSH-Schlüssel sind viel sicherer, und wenn Sie erst einmal eingerichtet, sind Sie genauso einfach zu bedienen wie Passwörter.

Was Macht SSH-Keys Sichern?

SSH-Schlüssel werden erzeugt und in Paaren eingesetzt. Die beiden Schlüssel miteinander verknüpft sind und kryptographisch sicher sind. Der eine ist der öffentliche Schlüssel und der andere ist Ihr privater Schlüssel. Sie sind gebunden an Ihren Benutzer-account. Wenn Sie mehrere Benutzer auf einem einzelnen computer verwenden Sie SSH-Schlüssel, die Sie erhalten jeweils Ihr eigenes Schlüsselpaar.

Ihr privater Schlüssel ist installiert in Ihrem home-Ordner (in der Regel), und der öffentliche Schlüssel installiert ist auf dem remote—computer-oder Computer—, die Sie benötigen, um Zugang.

Ihr privater Schlüssel muss sicher aufbewahrt werden. Wenn es für andere zugänglich sind, sind Sie in der gleichen position wie wenn Sie entdeckt hatte, Ihr Passwort. Eine sinnvolle und sehr zu empfehlen—vorsorge ist für Ihre privaten Schlüssel werden verschlüsselt auf Ihrem computer mit einem robusten Passwort.

Der öffentliche Schlüssel kann freigegeben werden, ohne Kompromisse an die Sicherheit. Es ist nicht möglich zu bestimmen, welche der private Schlüssel ist von einer Prüfung des öffentlichen Schlüssels. Der private Schlüssel zur Verschlüsselung von Nachrichten, nur auf den privaten Schlüssel entschlüsseln kann.

Wenn Sie eine Verbindungsanforderung, die remote-computer das kopieren Ihres öffentlichen Schlüssels eine verschlüsselte Nachricht. Die Nachricht enthält eine session-ID und weitere Metadaten. Nur der computer im Besitz des privaten Schlüssels—Ihr computer entschlüsseln kann diese Botschaft.

Ihr computer greift auf Ihre privaten Schlüssel und entschlüsselt die Nachricht. Dann sendet seinen eigenen verschlüsselten Nachricht zurück an den remote-computer. Unter anderem diese verschlüsselte Nachricht enthält die Sitzungs-ID empfangen wurde vom remote-computer.

Der remote-computer weiß nun, dass müssen Sie sein, wer Sie sagen, Sie sind, weil nur Sie Ihren privaten Schlüssel extrahieren konnte die session-Id aus der Nachricht, die er an Ihren computer gesendet.

Stellen Sie Sicher, Dass Sie Zugriff Auf Die Remote-Computer

Stellen Sie sicher, Sie können von einem Remotestandort aus eine Verbindung herstellen, und melden Sie sich bei der remote-computer. Dies beweist, dass Sie Ihren Benutzernamen und Ihr Passwort ein gültiges Konto auf dem remote-computer, und dass Ihre Anmeldeinformationen korrekt sind.

Versuchen Sie nicht, etwas zu tun mit SSH-Schlüssel, bis Sie überprüft haben, können Sie SSH mit Passwort für die Verbindung zum Ziel-computer.

In diesem Beispiel, eine person mit einem Benutzerkonto namens dave angemeldet ist ein computer, der als howtogeek . Sie gehen, um eine Verbindung zu einem anderen computer namens Sulaco.

Sie den folgenden Befehl eingeben:

ssh dave@sulaco

Sie fragte nach dem Passwort, geben Sie es, und Sie sind verbunden mit Sulaco. Mit den Kommandozeilen-Eingabeaufforderung ändert sich, um dies zu bestätigen.

Das ist die Bestätigung, die wir brauchen. Also user dave trennen können von Sulaco mit dem exit-Befehl:

beenden

Sie erhalten das trennen von Nachricht und Ihre Kommandozeile zurück zu dave@howtogeek.

VERWANDTE: Wie man eine Verbindung zu einem SSH-Server unter Windows, macOS oder Linux

Erstellen von ein Paar von SSH-Schlüsseln

Diese Anleitung wurde getestet unter Ubuntu, Fedora und Manjaro Linux-Distributionen. In allen Fällen ist der Prozess war identisch, und es gab keine Notwendigkeit zu installieren, keine neue software auf jedem der test-Maschinen.

Für die Generierung der SSH keys, geben Sie den folgenden Befehl ein:

ssh-keygen

Die Generierung beginnt. Sie werden gefragt, wo Sie möchten, dass Ihre SSH-Schlüssel gespeichert werden. Drücken Sie die Enter-Taste, um den Standardspeicherort zu übernehmen. Die Berechtigungen auf die Ordner sichern, die es nur für Ihren Gebrauch.

Jetzt werden Sie nach einer passphrase gefragt. Wir raten Ihnen dringend, geben Sie eine passphrase hier. Und denken Sie daran, was es ist! Sie können drücken Sie die EINGABETASTE, um keine passphrase eingeben, aber dies ist nicht eine gute Idee. Eine passphrase, die aus drei oder vier nicht verbundene Wörter, aneinander gereiht wird eine sehr robuste passphrase.

Sie werden aufgefordert, geben Sie die gleiche passphrase einmal mehr, um zu überprüfen, dass Sie eingegeben haben, was Sie dachten, Sie hätten getippt.

Die SSH-Schlüssel generiert werden und für Sie gespeichert.

Können Sie ignorieren die “randomart” wird angezeigt. Einige remote-Computer können Ihnen zeigen, Ihre zufällige art jedes mal, wenn Sie eine Verbindung herstellen. Die Idee ist, dass Sie erkennen, wenn die random-Kunst verändert, und werden verdächtige von der Verbindung, weil es bedeutet, dass der SSH-Schlüssel für diesen server verändert wurden.

Installieren Sie den Öffentlichen Schlüssel

Wir installieren, müssen Sie Ihren öffentlichen Schlüssel auf der Sulaco , der remote-computer, so dass es weiß, dass der öffentliche Schlüssel gehört zu dir.

Wir tun dies mit Hilfe der ssh-copy-id Befehl. Dieser Befehl stellt eine Verbindung zu dem remote-computer wie der normale ssh-Befehl, aber anstatt Sie zu melden, es überträgt die öffentlichen SSH-Schlüssel.

ssh-copy-id-dave@sulaco

Sie sind zwar nicht die Anmeldung bei der remote-computer müssen Sie noch die Authentifizierung mit einem Passwort. Der remote-computer muss erkennen, welche Benutzer, der den neuen SSH-Schlüssel gehört.

Beachten Sie, dass das Kennwort müssen Sie hier das Kennwort für das Benutzerkonto Sie angemeldet sind in. Dies ist nicht die passphrase, die Sie gerade erstellt haben.

Wenn das Passwort verifiziert wurde, ssh-copy-id überträgt Ihren öffentlichen Schlüssel auf den entfernten computer.

Sie zurück zu der Eingabeaufforderung Ihres Computers. Sie werden nicht nach Links verbunden, um den remote-computer.

Die Verbindung Mit SSH-Keys

Lasst uns den Vorschlag Folgen und versuchen, eine Verbindung zu dem remote-computer.

ssh dave@sulaco

Da der Prozess der Verbindung benötigen Zugriff auf Ihren privaten Schlüssel haben, und weil Sie geschützt Ihre SSH-Schlüssel hinter einer passphrase, müssen Sie Ihre passphrase eingeben, so dass die Verbindung fortgesetzt werden kann.

Geben Sie Ihre passphrase ein und klicken Sie auf die Schaltfläche Entsperren.

Nachdem Sie Ihre passphrase eingegeben haben, in einer terminal-Sitzung, werden Sie nicht haben, um erneut eingeben, solange Sie das terminal-Fenster zu öffnen. Sie können verbinden und trennen, wie viele remote-Sitzungen wie Sie möchten, ohne die Eingabe Ihrer passphrase wieder.

Sie könnten aktivieren Sie das Kontrollkästchen für die “Automatische unlock this key immer, wenn ich angemeldet bin” – option, aber wird es zu reduzieren Ihre Sicherheit. Wenn Sie Ihren computer unbeaufsichtigt lassen, kann jeder machen, verbindungen zu remote-Computern, auf Ihren öffentlichen Schlüssel haben.

Sobald Sie geben Sie Ihre passphrase ein, mit der Sie verbunden sind, um den remote-computer.

Um zu überprüfen, den Prozess einmal mehr von Ende zu Ende, trennen Sie die Verbindung mit dem Befehl exit und wieder eine Verbindung zu dem remote-computer aus dem gleichen terminal-Fenster.

ssh dave@sulaco

Sie werden an den remote-computer ohne die Notwendigkeit für ein Kennwort oder eine passphrase.

Keine Passwörter, Aber Erhöhte Sicherheit

Cybersecurity-Experten sprechen von einem Ding namens security Reibung. Das ist der kleine Schmerz, den Sie brauchen, um mit zu bekommen, den Gewinn für zusätzliche Sicherheit. Es gibt in der Regel einige zusätzlichen Schritt oder zwei erforderlich um sicherzustellen, eine sichere Methode zu arbeiten. Und die meisten Leute mögen es nicht. Sie bevorzugen niedrigere Sicherheit und das fehlen von Reibung. Das ist die menschliche Natur.

Mit SSH-Schlüssel, erhalten Sie höhere Sicherheit und ein mehr an Komfort. Das ist eine definitive win-win.

LESEN SIE WEITER

  • › Sie Rückgängig machen Können, Senden Sie In Outlook wie Gmail
  • › Going Viral Ist Oft der Einzige Weg, um Gute Kunden-Service
  • › Wie Sehen die 2019 US-Open-Online (Ohne Kabel)
  • › Windows 10 ist der Linux-Kernel Ist Jetzt Verfügbar
  • › Wie Drahtlos Übertragen, Android Dateien auf einen Linux-Desktop