Re,
Après quelques tests sur mon ESXi, j’ai réussi à faire en sorte que la liaison avec Jeedom refonctionne.
Comme évoqué par @AnOnYmEnEt, VMWare a bien enlevé le SHA1 de la config SSH sur les esxi à partir de la version 7.0U2. En comparant deux config ESXi (l’une en version 7.0u2 et l’autre en 7.0u1) il apparait ces différentes (entre autre) dans la configuration du démon SSH :
# Key algorithms used in SSHv2 handshake
# (ed25519 not allowed by current FIPS module)
KexAlgorithms ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256
HostKeyAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-256,rsa-sha2-512
MACs hmac-sha2-256,hmac-sha2-512
Alors que dans la version 7.0u1, les clés « KexAlgorithms » et « HostKeyAlgorithms » ne sont pas spécifiées et dans la partie « MACs » ils ont enlevé le « hmac-sha1 » présent dans les anciennes versions.
Si vous voulez tester, voici la procédure pour réactiver le SHA1 sur un ESXi en 7.0u2 :
PS : Ce n’est qu’à des fins de tests, la bonne méthode serait sans doute de modifier la fonction ssh2_connect du plugin, pour faire en sorte de se connecter avec une autre méthode que le SHA1.
Se connecter en SSH sur l’hôte ESXi en version 7.0u2 et taper la commande :
vi /etc/ssh/sshd_config
Dans le fichier qui apparait, on passe en mode édition (en tapant sur la touche « i » dans vi) et on supprime les lignes :
KexAlgorithms ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256
HostKeyAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-256,rsa-sha2-512
Et dans la ligne (un peu plus bas) qui commence par « MACs », on ajoute à la fin « ,hmac-sha1 » pour que la ligne donne au final :
MACs hmac-sha2-256,hmac-sha2-512,hmac-sha1
Ensuite, on sauvegarde (et tapant sur les touches : « ESC / Echap » puis « :wq » et enfin via l’interface graphique de l’ESXi, on redémarre le service SSH (via le menu : « Host / Manage / Services » et chercher « SSH »)
La liaison redevient alors opérationnelle côté Jeedom !
ATTENTION : j’ai fait ces manipulations pour montrer ensuite que cela refonctionne côté Jeedom, mais il n’est pas conseillé de les faire sur un système en production ! Si VMWare a désactivé le SHA1, ce n’est pas pour rien, c’est pour des raisons de sécurité !
@++