Ich versuche, die Hostschlüssel des SSH-Servers neu zu erstellen.
Ich habe mindestens zwei Möglichkeiten, dies zu tun:
Mit dpkg-reconfigure
dpkg-reconfigure openssh-server
Das funktioniert einwandfrei, allerdings kann ich dann keine Schlüssellänge angeben. Ich möchte beispielsweise 4096 für den RSA-Schlüssel.
Manuell mit ssh-keygen
sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N 'myverylongpasswordhere' -b 4096 -t rsa
Dadurch werden mir die Schlüssel neu erstellt, aber nach dem Neustart des Servers erhalte ich FolgendesFehlermeldung:
could not load host key: /etc/ssh/ssh_host_rsa_key
also habe ich die Datei sshd_config überprüft, was dort drin ist:
HostKey /etc/ssh/ssh_host_rsa_key
passt perfekt. Also habe ich den Besitzer und die Rechte aller meiner Schlüssel überprüft
-rw------- 1 root root 3326 Mär 24 08:57 ssh_host_rsa_key
Wenn ich alle Schlüssel entferne und sie mit neu erstelle
dpkg-reconfigure openssh-server
, sind die Schlüssel kleiner und haben die gleichen Dateirechte wie oben.
Frage:Wie kann ich dpkg-reconfigure
die Schlüssellänge 4096 für RSA verwenden?
Antwort1
Keine der obigen Antworten hat bei mir funktioniert. Ich habe mein Ubuntu-System wie folgt repariert:
/usr/bin/ssh-keygen -A
Antwort2
sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N 'myverylongpasswordhere' -b 4096 -t rsa
erstellt mir die Schlüssel neu. aber nach dem Neustart des Servers erhalte ich
could not load host key: /etc/ssh/ssh_host_rsa_key
Sie erstellen einen Hostschlüssel mit einem Passwort. Gibt es eine Möglichkeit, diesen Hostschlüssel zu entsperren? Wenn nicht, dann ist das wohl zu erwarten: Das Skript, das den Dienst verwaltet, startet, versucht, den Hostschlüssel zu laden und schlägt fehl. Soweit ich weiß, sollten Sie keine Hostschlüssel erstellen, die mit Passwörtern geschützt sind.
Wenn Sie daran interessiert sind, Ihren SSH-Server abzusichern, empfehle ich Ihnen die Lektürehttps://stribika.github.io/2015/01/04/secure-secure-shell.htmlDer zum Erstellen des Hostschlüssels in diesem Dokument verwendete Befehl lautet:
ssh-keygen -t rsa -b 4096 -f ssh_host_rsa_key
Sie sollten jedoch das gesamte Dokument lesen, bevor Sie Änderungen vornehmen.
Antwort3
Führen Sie einfach Folgendes aus:
ssh-keygen -t rsa -b 4096
ssh-keygen
generiert einen SSH-Schlüssel.
-t
gibt den zu erstellenden Schlüsseltyp an-b
Gibt die Anzahl der Bits im Schlüssel an.
Sehendiese Seitefür mehr Informationen.