Ich versuche, die ssh-Server-Hostschlüssel neu zu erstellen.
Ich habe mindestens zwei Möglichkeiten, dies zu tun:
Mit dpkg-neu konfigurieren
dpkg-reconfigure openssh-server
Das funktioniert gut, aber ich kann die Schlüssellänge dann nicht angeben. Ich möchte zum Beispiel 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 wird die folgende Fehlermeldung angezeigt :
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 an allen meinen Schlüsseln überprüft
-rw------- 1 root root 3326 Mär 24 08:57 ssh_host_rsa_key
Wenn ich alle Schlüssel entferne und 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
mit keylengh 4096 für RSA verwenden?
sshd
Debug-Modus über die Befehlszeile (sudo sshd -d
) aus, um weitere Informationen zu diesem Problem zu erhalten, und veröffentlichen Sie die Ausgabe.livewire@za20:/etc/ssh$ sudo sshd -d
Ausgabesshd re-exec requires execution with an absolute path
Sonst würde ich ein Beispiel in meiner Antwort enthalten haben :(sudo /usr/sbin/sshd -d
. Der Fehler, den Sie erhalten haben, ist wörtlich gemeint (wenn auch nicht ganz klar).dpkg-reconfigure
mit der Schlüssellänge 4096 verwenden? Gibt es irgendwo eine Konfigurationsdatei, die diese Informationen enthält? Ich habe mich in den Debconf-Datenbanken (in/var/cache/debconf/
) umgesehen, aber nichts gefunden, was der Schlüssellänge ähnelte.Antworten:
Sie erstellen einen Hostschlüssel mit einem Passwort. Gibt es Anpassungen, um diesen Hostschlüssel freizuschalten? Wenn nicht, ist dies meiner Meinung nach zu erwarten: Das Skript, das den Dienst verwaltet, wird gestartet, versucht, den Hostschlüssel zu laden, und schlägt fehl. Soweit ich weiß, sollten Sie keine mit Passwörtern geschützten Hostschlüssel erstellen.
Wenn Sie daran interessiert sind, Ihren SSH-Server zu härten, empfehlen wir Ihnen, https://stribika.github.io/2015/01/04/secure-secure-shell.html zu lesen. Der Befehl zum Erstellen des Hostschlüssels in diesem Dokument lautet:
Sie sollten jedoch das gesamte Dokument lesen, bevor Sie Änderungen vornehmen.
quelle
Keine der obigen Antworten hat bei mir funktioniert. Ich habe mein Ubuntu-System folgendermaßen repariert:
quelle
Einfach ausführen:
ssh-keygen
generiert einen SSH-Schlüssel.-t
Gibt den Typ des zu erstellenden Schlüssels an-b
Gibt die Anzahl der Bits im Schlüssel an.Weitere Informationen finden Sie auf dieser Seite .
quelle