Suite à la mise à jour d'un serveur Debian 8 vers Debian 9, l'authentification par clé ne fonctionne plus. Le message d'erreur est le suivant (fichier /var/log/auth.log) : userauth_pubkey: key type ssh-dss not in PubkeyAcceptedKeyTypes [preauth]
Depuis la version 7 de OpenSSH, par défaut, les clés de type ssh-dss ont été désactivées. Si vous souhaitez utiliser une clé de ce type pour vous authentifier sur votre serveur, voici la marche à suivre.
Résolution
Il est nécessaire d'autoriser le type de clé ssh-dss pour votre serveur SSH
1) Se connecter sur le serveur SSH qui refuse l'authentification par clé
2) Editer le fichier de configuration /etc/ssh/sshd_config
# nano /etc/ssh/sshd_config
ou
# vi /etc/ssh/sshd_config
3) Ajouter à votre configuration le paramètre suivant
PubkeyAcceptedKeyTypes=+ssh-dss
4) Enregistrer votre configuration puis redémarrer le service SSH
# /etc/init.d/ssh restart
5) L'authentification par clé devrait maintenant fonctionner correctement