Ssicher Schell oder SSH ist ein bekanntes Open-Source-Netzwerkprotokoll. Das Protokoll wird verwendet, um sich aus der Ferne bei anderen Computern anzumelden. Daher wäre es einfach, eine Reihe von Befehlen auszuführen und jede Anwendung auf dem Remote-Gerät reibungslos zu starten, ohne sich in der Nähe des Remote-Computers befinden zu müssen. Darüber hinaus ist das SSH-Protokoll sehr vertrauenswürdig und sicher. Benutzer sind immer auf das SSH-Protokoll angewiesen, um Dateien zwischen zwei verschiedenen Geräten zu kopieren.
Um eine SSH-Verbindung mit dem Remote-Rechner herzustellen, müssen Sie im Allgemeinen den Benutzernamen und das Passwort für den Remote-Rechner eingeben. Aber was ist, wenn Sie eine sicherere Methode benötigen, als den Benutzernamen und das Passwort bei jeder Anmeldung zu verwenden?? Dies könnte mit einem SSH-Schlüssel erfolgen, der vom Client-Rechner generiert und dann auf den Remote-Rechner kopiert wird. Mit zusätzlichen kleinen Konfigurationen können Sie sich sicher beim Remote-Computer anmelden, ohne jedes Mal einen Benutzernamen und ein Passwort zu verwenden. Die Verwendung eines SSH-Schlüssels anstelle des Benutzernamens und des Kennworts bei jeder Anmeldung ist viel sicherer. Nur die Maschine mit dem richtigen SSH-Schlüssel kann sich schnell einloggen.
Heute zeigen wir Ihnen, wie Sie eine SSH-Verbindung herstellen, ohne das Kennwort für den Remote-Computer eingeben zu müssen. Typischerweise kann die Verwendung einer passwortlosen Anmeldung verwendet werden, um Dateien schnell zwischen verschiedenen Computern zu übertragen. Aber bevor wir mit unserem Tutorial beginnen, werfen wir einen Blick auf unsere Umgebung.
Umgebungsvorbereitung
Es wäre am besten, wenn Sie zwei Maschinen hätten, den Client und die Remote-Maschinen. Fast die gesamte Arbeit wird vom Client-Rechner erledigt, der für die Verbindung mit dem Remote-Gerät verwendet wird. Beide Geräte sind Ubuntu mit den folgenden IPs
- Das Klient Maschine hat eine IP 192.168.1.20 mit Benutzername tuts.
- Das Fernbedienung Maschine hat eine IP 192.168.1.30 mit einem Benutzernamen hendadel.
Eine weitere Sache, bevor Sie beginnen, stellen Sie mit den folgenden Befehlen sicher, dass beide Maschinen auf dem neuesten Stand sind:
sudo apt aktualisieren sudo apt aktualisieren
Jetzt starten wir mit unserem Guide.
Passwortlose SSH-Anmeldung einrichten
Schritt 1. Stellen Sie auf dem Client-Computer sicher, dass ein SSH-Schlüssel generiert wurde, bevor Sie den nächsten Befehl verwenden.
ls -al ~/.ssh/id_*.Kneipe
Wie Sie feststellen können, erhalten Sie, wenn Sie zuvor keinen SSH-Schlüssel generiert haben, die Meldung „No such file or directory“ directory. Andernfalls erhalten Sie schnell die verfügbaren Schlüssel, wenn sie vorhanden sind.
Schritt 2. Da Sie zuvor keine generierten SSH-Schlüssel haben, ist es an der Zeit, mit dem folgenden Befehl einen neuen SSH-Schlüssel zu generieren:
ssh-keygen -t rsa -b 4096
Normalerweise generiert der vorherige Befehl zwei neue SSH-Schlüssel in zwei verschiedenen Dateien. Beide Dateien werden in einem versteckten Verzeichnis namens „.ssh“ im Home-Verzeichnis des aktuellen Benutzers. Sie können einen privaten Schlüssel finden, der in einer Datei namens . gespeichert ist id_dsa und ein weiterer öffentlicher Schlüssel in einer Datei namens id_dsa.Kneipe. Darüber hinaus werden Sie aufgefordert, eine Passphrase hinzuzufügen, die zum Schutz der generierten Schlüssel verwendet wird, und Sie können sie verwenden, während Sie sich über SSH . verbinden. Aber Sie können die „Eingeben”-Taste, um eine nicht zu verwenden.
Schritt 3. Jetzt können Sie den Inhalt der .ssh-Verzeichnis, um sicherzustellen, dass beide Schlüssel erstellt werden.
ls -l /home/tuts/.ssh/
Schritt 4. Sie können auch sicherstellen, dass die Datei einen Schlüssel enthält, indem Sie den folgenden Befehl verwenden:
ssh-keygen -lv
Schritt 5. So zeigen Sie eine Vorschau des Inhalts der öffentlichen Schlüsseldatei an.
Katze .ssh/id_rsa.Kneipe
Schritt 6. Stellen Sie nun auf dem Remote-Computer sicher, dass SSH installiert ist. Wenn es nicht installiert ist, können Sie den folgenden Befehl verwenden.
sudo apt installieren ssh
Schritt 7. Zurück zum Client-Computer, stellen Sie eine Verbindung zum Remote-Computer her und erstellen Sie ein neues Verzeichnis mit dem Namen .ssh.
sudo ssh remote_machine_username@remote_machine_IP mkdir -p .ssh
Stellen Sie sicher, dass Sie remote_machine_username durch den echten Benutzernamen und remote_machine_IP durch die Remote-IP ersetzen.
Schritt 8. Als nächstes kopieren wir vom Client-Rechner den zuvor generierten öffentlichen SSH-Schlüssel auf den Remote-Rechner. Es wäre hilfreich, wenn Sie den öffentlichen Schlüssel in eine Datei namens . einfügen „autorisierte_Schlüssel“. Es wird dringend empfohlen, den Dateinamen nicht zu ändern, da beim Herstellen einer SSH-Verbindung die erste Datei, die das Betriebssystem überprüft, die Datei ist "authorized_keys" Datei. Wenn das System die Datei nicht gefunden hat, werden Sie aufgefordert, einen Benutzernamen und ein Passwort einzugeben, um sich am Remote-Rechner anmelden zu können.
sudo katze .ssh/id_rsa.Kneipe | ssh remote_machine_username@remote_machine_IP 'cat >> .ssh/authorized_keys'
Schritt 9. Stellen Sie vom Remote-Computer sicher, dass der öffentliche Schlüssel mit dem Namen authorisierte_Schlüssel erfolgreich kopiert wurde.
ls .ssh/ cat .ssh/authorized_keys
Schritt 10. Versuchen wir nun vom Client-Rechner aus eine SSH-Verbindung ohne Benutzernamen und Passwort herzustellen.
ssh remote_machine_username@remote_machine_IP
Wie Sie sehen, werden Sie nicht aufgefordert, einen Benutzernamen oder ein Passwort einzugeben.
Passwort-Authentifizierung deaktivieren
Um die Kennwortauthentifizierung mit dem öffentlichen Schlüssel zu deaktivieren, müssen Sie zuerst die SSH-Konfigurationsdatei auf dem Remote-Computer bearbeiten und die Option zur Kennwortauthentifizierung deaktivieren. Unten sind die Schritte dazu.
Schritt 1. Öffnen Sie auf dem Remote-Computer die ssh-Konfigurationsdatei mit Ihrem bevorzugten Editor.
vi /etc/ssh/sshd_config
Schritt 2. Scrollen Sie zum Ende der SSH-Konfigurationsdatei und fügen Sie die nächsten Zeilen hinzu, um die Kennwortauthentifizierung zu deaktivieren:
RSAAuthentication ja PubkeyAuthentication ja PasswordAuthentication nein UsePAM nein ChallengeResponseAuthentication nein
Schritt 3. Speichern und beenden Sie Ihre Datei.
Schritt 4. Starten Sie abschließend den SSH-Dienst neu und versuchen Sie erneut, eine neue Verbindung vom Client-Rechner zum Remote-Rechner aufzubauen.
Das ist es! Sie haben gerade gelernt, wie Sie eine SSH-Verbindung ohne Passwort herstellen. Ich hoffe es hat euch gefallen.