Modifier la keypair d’une VM
Vous pouvez remplacer la keypair attribuée à une machine virtuelle (VM).
Lorsque vous modifiez une keypair avec Cockpit ou avec les API, les metadata de la VM sont modifiées pour refléter la nouvelle clé publique, mais le remplacement n’est pas encore pris en compte par le système d’exploitation de la VM. Pour finaliser le changement et appliquer concrètement la nouvelle keypair, vous devez effectuer d’autres actions à l’intérieur de la VM.
Modifier les metadata de la VM
Pour modifier la keypair indiquée par les metadata de la VM, utilisez la méthode API UpdateVm.
Pour en savoir plus, voir Modifier un attribut d’une VM.
Appliquer la nouvelle keypair
Appliquer la nouvelle keypair avec scripts-per-boot
Cette méthode repose sur le mécanisme scripts-per-boot de cloud-init, afin d’exécuter un script à chaque redémarrage de la VM.
-
Accédez à la VM. Pour en savoir plus, voir Accéder à vos VM.
-
Créez un fichier dans /var/lib/cloud/scripts/per-boot/, nommé par exemple update-keypair.sh, avec le contenu suivant :
update-keypair.sh#!/bin/bash curl http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key/ > /home/outscale/.ssh/authorized_keys
-
Rendez le fichier exécutable :
$ sudo chmod +x /var/lib/cloud/scripts/per-boot/update-keypair.sh
-
Redémarrez la VM. Pour en savoir plus, voir Redémarrer des VM.
La nouvelle keypair est appliquée.
Appliquer la nouvelle keypair avec cloud_init_modules
Cette méthode repose sur le mécanisme cloud_init_modules de cloud-init, afin de reconfigurer SSH à chaque redémarrage de la VM.
Cette méthode régénère la signature SSH de la VM, ce qui modifie son empreinte. Cela entraîne un avertissement lorsque vous réaccédez plus tard à la VM. |
-
Accédez à la VM. Pour en savoir plus, voir Accéder à vos VM.
-
Dans le fichier /etc/cloud/cloud.cfg, remplacez l’entrée
- ssh
souscloud_init_modules:
par :- [ssh, always]
-
Redémarrez la VM. Pour en savoir plus, voir Redémarrer des VM.
La nouvelle keypair est appliquée.
Pages connexes
Méthodes API correspondantes