CH-J Server Managergestion de serveur sur SSH
Menu
Tous les guides et articles →

La clé d’hôte SSH a changé : comprendre l’avertissement et savoir quoi faire

Découvrez pourquoi un serveur présente une nouvelle clé d’hôte, vérifiez-la par un autre canal et remplacez l’entrée enregistrée en toute sécurité.

Ce que signifie l’avertissement

Un serveur prouve son identité à l’aide d’une clé d’hôte. Si elle diffère de celle que votre client avait enregistrée, OpenSSH affiche REMOTE HOST IDENTIFICATION HAS CHANGED et refuse la connexion. Le client ne peut pas distinguer un changement anodin d’une attaque : considérez donc l’avertissement comme non résolu tant que vous n’avez pas vérifié la situation.

Causes courantes

Les causes habituelles sont un serveur réinstallé, une VM restaurée ou clonée depuis une image, une adresse désormais attribuée à une autre machine et un répartiteur de charge qui vous dirige vers différents nœuds. Un attaquant qui intercepte la connexion provoque le même avertissement. Si vous n’attendiez aucun changement, arrêtez-vous et ne saisissez pas de mot de passe.

Comparer les empreintes

Consultez l’empreinte réelle sur le serveur par un canal indépendant de cette connexion SSH, par exemple la console du fournisseur ou celle de l’hyperviseur. La commande ssh-keyscan montre seulement ce que le réseau vous présente : elle ne prouve donc rien à elle seule. Elle sert uniquement à comparer ce résultat avec la valeur obtenue depuis la console.

sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

ssh-keyscan -t ed25519 server.example | ssh-keygen -lf -

Remplacer l’ancienne entrée

Supprimez l’ancienne entrée et reconnectez-vous uniquement après avoir constaté que les empreintes correspondent. Un port non standard possède sa propre entrée, écrite avec des crochets. ssh-keygen conserve le fichier précédent sous le nom known_hosts.old. Ne désactivez pas StrictHostKeyChecking et ne supprimez pas tout le fichier known_hosts, car cela retire la protection de tous vos serveurs.

ssh-keygen -R server.example
ssh-keygen -R '[server.example]:2222'
ssh user@server.example

Éviter l’avertissement après une réinstallation

Si vous prévoyez de réinstaller un serveur en conservant son identité, sauvegardez de manière sécurisée les clés d’hôte dans /etc/ssh et restaurez-les avec le même propriétaire et les mêmes permissions. Faites l’inverse pour les clones : chaque machine issue d’une même image doit avoir ses propres clés d’hôte, sinon plusieurs serveurs partagent une seule identité.

Clés d’hôte dans CH-J Server Manager

L’application stocke les empreintes SHA-256 des clés d’hôte dans son coffre chiffré, séparément du fichier known_hosts d’OpenSSH. En cas de changement, elle bloque la connexion et affiche l’empreinte connue et la nouvelle. L’entrée n’est remplacée qu’après votre confirmation, et l’annulation ne change rien. Dans Alpha 0.1.1, la vérification porte aussi sur chaque hôte de rebond, et un transfert en cours s’arrête lorsque la clé change. L’application ne peut pas vérifier la nouvelle empreinte à votre place : la vérification par un autre canal reste donc de votre ressort.

Documentation détaillée

OpenSSH: ssh →

OpenSSH: ssh-keygen →

Déverrouillage biométrique et sécurité →