GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So richten Sie passwortloses SSH unter Linux ein

SSH, auch bekannt als „Secure Shell“, ist ein Open-Source-Protokoll, das verwendet wird, um sich bei einem Remote-Linux-Server anzumelden. Es wird von System- und Netzwerkadministratoren verwendet, um Linux-Server von einem entfernten Standort aus zu verwalten. Es wird auch verwendet, um Dateien zwischen mehreren Linux-Systemen zu übertragen. Es gibt zwei Möglichkeiten, sich bei einem Remote-Linux-System anzumelden:mit Kennwortauthentifizierung und schlüsselbasierter Authentifizierung. Die schlüsselbasierte Authentifizierung ist sicherer als Kennwörter, da sich nur ein Benutzer mit gültigen Schlüsseln bei Linux anmelden kann.

In diesem Beitrag zeigen wir Ihnen, wie Sie passwortloses SSH unter Linux einrichten.

Voraussetzungen

  • Ein Linux-Server auf der Atlantic.Net Cloud-Plattform
  • Ein auf Ihrem Server konfiguriertes Root-Passwort

Schritt 1 – Atlantic.Net Cloud-Server erstellen

Melden Sie sich zunächst bei Ihrem Atlantic.Net Cloud Server an. Erstellen Sie einen neuen Server und wählen Sie Ubuntu, CentOS oder Rocky Linux als Betriebssystem mit mindestens 2 GB RAM. Stellen Sie über SSH eine Verbindung zu Ihrem Cloud-Server her und melden Sie sich mit den oben auf der Seite hervorgehobenen Anmeldeinformationen an.

Sobald Sie sich bei Ihrem Server angemeldet haben, führen Sie den folgenden Befehl aus, um Ihr Basissystem mit den neuesten verfügbaren Paketen zu aktualisieren.

apt-get update -y

Oder

dnf update -y

Schritt 2 – Generieren Sie einen SSH-Schlüssel

Zunächst müssen Sie auf dem Computer, auf dem Sie arbeiten, ein SSH-Schlüsselpaar generieren.

Sie können es mit dem folgenden Befehl generieren:

ssh-keygen -t rsa

Sie werden aufgefordert, den Ort anzugeben, an dem der Schlüssel gespeichert werden soll, wie unten gezeigt:

Enter file in which to save the key (/home/vyom/.ssh/id_rsa): 

Drücken Sie einfach die Eingabetaste und akzeptieren Sie den Standardpfad. Sie werden aufgefordert, eine Passphrase festzulegen, wie unten gezeigt:

Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 

Drücken Sie einfach die Eingabetaste, ohne eine Passphrase anzugeben. Sie sollten die folgende Ausgabe sehen:

Your identification has been saved in /home/vyom/.ssh/id_rsa.
Your public key has been saved in /home/vyom/.ssh/id_rsa.pub.
The key fingerprint is:
ec:50:43:d9:39:64:f8:19:63:18:ab:1c:e4:ea:f5:e7 [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
|      . oBo.     |
|     o .+oB      |
|      o +o =     |
|     o = .o      |
|    . = S        |
|   . . +         |
|    .   o .      |
|         o       |
|          E      |
+-----------------+

Überprüfen Sie nun Ihren SSH-Schlüssel mit dem folgenden Befehl:

ls -la ~/.ssh/id_*.pub

Sie sollten die folgende Ausgabe sehen:

-rw-r--r-- 1 vyom vyom 392 Sep  8 14:34 /home/vyom/.ssh/id_rsa.pub

Schritt 3 – Kopieren Sie den öffentlichen SSH-Schlüssel auf den Remote-Server

Jetzt müssen Sie Ihren öffentlichen Schlüssel auf den Remote-Server kopieren. Sie können dies mit dem Befehl ssh-copy-id tun:

ssh-copy-id [email protected]

Sie werden aufgefordert, ein Root-Passwort eines Remote-Servers anzugeben, um einen öffentlichen Schlüssel zu kopieren:

[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

Schritt 4 – Remote-Server ohne Passwort verbinden

An diesem Punkt wird der SSH-Schlüssel generiert und auf den Remote-Server kopiert. Sie können sich jetzt mit dem Remote-Server verbinden, ohne ein Passwort anzugeben:

ssh [email protected]

Sobald Sie verbunden sind, sollten Sie die folgende Ausgabe sehen:

Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-29-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

Last login: Wed Sep  8 07:50:27 2021 from 106.222.86.57
[email protected]:~# 

Schritt 5 – Passwortbasierte Authentifizierung entfernen

An diesem Punkt ist die schlüsselbasierte SSH-Authentifizierung erfolgreich konfiguriert. Jetzt wird empfohlen, die Verwendung der Passwortauthentifizierung zu deaktivieren, damit jeder nur Schlüssel für den Zugriff auf den Server verwendet.

Bearbeiten Sie auf dem Remote-Linux-Server die SSH-Hauptkonfigurationsdatei:

nano /etc/ssh/sshd_config

Entkommentieren und ändern Sie die folgende Zeile:

PasswordAuthentication no

Speichern und schließen Sie die Datei und starten Sie dann den SSH-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart ssh

Schlussfolgerung

In der obigen Anleitung haben Sie gelernt, wie Sie die passwortlose SSH-Authentifizierung unter Linux einrichten. Sie können jetzt die schlüsselbasierte SSH-Authentifizierung für jeden Server implementieren, den Sie remote verwalten möchten. Probieren Sie es noch heute auf dem VPS-Hosting von Atlantic.Net aus.


Linux
  1. Wie man SSH unter Linux von Android aus macht

  2. So aktivieren Sie den SSH-Server unter Ubuntu 22.04 Jammy Linux

  3. So installieren und richten Sie cPanel auf einem Linux-Server ein

  4. So richten Sie einen Reverse-SSH-Tunnel unter Linux ein

  5. So richten Sie eine passwortlose SSH-Anmeldung unter Linux ein

So richten Sie einen Sicherungsserver mit Rsnapshot unter Linux ein

So richten Sie einen Streaming Media Server mit Jellyfin unter Linux ein

So richten Sie die Multi-Faktor-Authentifizierung für SSH unter Linux ein

So verwalten Sie einen Linux-Server mit SSH aus der Ferne

Wie Sie von Windows aus SSH in Ihren Linux-Server einbinden

So führen Sie SSH zum Server über Linux