Petite blagounette de Ganeti, à cause de la version d'OpenSSH de Debian Stretch.
Adonc, la situation : j'ai récemment voulu ajouter un nouveau serveur au cluster Ganeti de Framasoft. Et pas moyen pour ganeti de contacter le nouveau nœud une fois qu'il y a ajouté sa clé SSH (les communications entre les nœuds passent par SSH).
Tous les serveurs du cluster avaient été récemment mis à jour vers Debian Stretch, vu que je n'aime pas me traîner de vieilles versions des systèmes que je gère, et qu'on profite généralement de nouvelles règles de sécurité.
Et en effet, la version d'OpenSSH de Stretch, la version 7, désactive par défaut l'utilisation de clés DSA.
Pour notre malheur, Ganeti utilise des clés DSA pour la communication entre les nœuds du cluster. Impossible du coup pour Ganeti de se connecter au nouveau nœud avec sa clé DSA.
En attendant la sortie de Ganeti 2.16 qui devrait permettre de choisir le type de clés à employer, on va, pour contourner le souci, modifier les fichiers /etc/ssh/ssh_config
et /etc/ssh/sshd_config
pour y ajouter :
PubkeyAcceptedKeyTypes=+ssh-dss
Ne me jugez pas, je sais que c'est très sale, mais c'est le seul moyen que j'ai trouvé pour pouvoir continuer à opérer mon cluster Ganeti.
EDIT (10 décembre 2017) : La version de Ganeti de Debian 9.3 permet de changer le type des clés SSH de Ganeti ! Vous pouvez, après avoir passé tous les nœuds de votre cluster en Debian 9.3, modifier le type de clé utilisé avec la commande
gnt-cluster renew-crypto --new-ssh-keys --ssh-key-type=rsa --ssh-key-bits=2048
Allez voir la page de manuel de gnt-cluster
, à la section INIT
pour voir les options. Vous pouvez utiliser des clés DSA, RSA et ECDSA.
Crédit : Photo de Santosh Maharjan sur Unsplash
Ca a été corrigé en 2.16 il me semble, e seul sousci c’est que la version debian est toujours en 2.15.2
https://github.com/ganeti/ganeti/issues/1209
(ah on me fait signe dans l’assistance que c’est précisé dans l’article =))
Sans oublier que la 2.16 n’est toujours pas officiellement sortie ¯\_(ツ)_/¯