Bei einem neu eingespielten Raspberry Pi Betriebssystem Image sollten die Hostkeys und die Moduli Datei des SSH Dienstes sshd ausgetauscht werden.
Die Hostkeys dienen der Authentifizierung des Servers und, zusammen mit der Moduli Datei, der Initialisierung der Verschlüsselung. Um die Verschlüsselung nicht angreifbarer zu halten als unbedingt notwendig sollten die Moduli und Keys für jeden Computer unterschiedlich sein.
1.) löschen der alten Hostkeys und der Moduli Datei von sshd
sudo rm /etc/ssh/ssh_host_key sudo rm /etc/ssh/ssh_host_key.pub sudo rm /etc/ssh/ssh_host_rsa_key sudo rm /etc/ssh/ssh_host_rsa_key.pub sudo rm /etc/ssh/ssh_host_dsa_key sudo rm /etc/ssh/ssh_host_dsa_key.pub sudo rm /etc/ssh/moduli
2.) Hostkey für sshd neu generieren
sudo /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N "" sudo /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N "" sudo /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N "" sudo /usr/bin/ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -C "" -N "" sudo /usr/bin/ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -C "" -N ""
3.) Moduli Kandidaten für sshd generieren und wählen
# moduli kandidaten generieren
ssh-keygen -G moduli-2048.candidates -b 2048
# sichere kandidaten wählen
ssh-keygen -T moduli-2048 -f moduli-2048.candidates cat moduli-2048 > /etc/ssh/moduli
Wenn jetzt, nach diesem Hostkey und Moduli Update eine Verbindung zu disem SSH-Server hergestellt werden soll wird die Fehlermedung „WARNING: POSSIBLE DNS SPOOFING DETECTED!“ und die Fehlermeldung „WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!“ angezeigt. Mit ssh-keygen kann der alte Hostkey aus der known_hosts Datei entfernt werden.:
ssh-keygen -R servername