Folgen Sie dieser Schritt-für-Schritt-Anleitung, um die SSH-Schlüsselauthentifizierung auf Ihrem Ubuntu-Server zu konfigurieren. Melden Sie sich sicher ohne Passwort an und deaktivieren Sie optional die Passwortauthentifizierung vollständig.
Befolgen Sie jeden Schritt sorgfältig, um die SSH-Schlüsselbasierte Authentifizierung auf Ihrem Ubuntu 16.04-Server einzurichten.
Führen Sie den folgenden Befehl auf Ihrem lokalen Rechner aus, um ein 2048-Bit-RSA-Schlüsselpaar zu generieren (verwenden Sie -b 4096 für einen stärkeren 4096-Bit-Schlüssel):
$ ssh-keygen Wenn Sie nach einem Dateipfad gefragt werden, drücken Sie die Eingabetaste , um den Standardpfad ( ~/.ssh/id_rsa ) zu übernehmen. Optional können Sie eine Passphrase für zusätzliche Sicherheit festlegen.
Es werden zwei Dateien erstellt: ~/.ssh/id_rsa (privater Schlüssel – diesen geheim halten) und ~/.ssh/id_rsa.pub (öffentlicher Schlüssel – dieser kommt auf den Server).
Methode 1 — ssh-copy-id (empfohlen):
$ ssh-copy-id username@remote_host Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden. Der öffentliche Schlüssel wird auf dem Server an die Datei ~/.ssh/authorized_keys angehängt.
Methode 2 – über SSH-Pipe:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" Methode 3 — manuell: Zeigen Sie Ihren öffentlichen Schlüssel mit cat ~/.ssh/id_rsa.pub an und hängen Sie die Ausgabe dann an ~/.ssh/authorized_keys auf dem Remote-Server an.
Testen Sie die Funktionsfähigkeit der schlüsselbasierten Authentifizierung, indem Sie eine Verbindung zu Ihrem Server herstellen:
$ ssh username@remote_hostWenn Sie in Schritt 1 eine Passphrase festgelegt haben, werden Sie zur Eingabe aufgefordert. Andernfalls werden Sie ohne Passwortabfrage sofort angemeldet.
Sobald Sie die Funktionsfähigkeit der schlüsselbasierten Anmeldung bestätigt haben, können Sie die Passwortauthentifizierung deaktivieren, um den Server besser gegen Brute-Force-Angriffe zu schützen. Öffnen Sie die SSH-Daemon-Konfiguration:
sudo nano /etc/ssh/sshd_config Suchen Sie nach PasswordAuthentication , entfernen Sie gegebenenfalls die Kommentarzeichen in der Zeile und setzen Sie den Wert auf no :
PasswordAuthentication noSpeichern Sie die Datei ( Strg+X , dann Y , dann Eingabetaste ) und starten Sie SSH neu:
$ sudo systemctl restart sshÖffnen Sie ein neues Terminal und vergewissern Sie sich, dass Sie noch eine Verbindung herstellen können, bevor Sie Ihre aktuelle Sitzung schließen.
Häufig gestellte Fragen zur Einrichtung der SSH-Schlüsselauthentifizierung unter Ubuntu.