2 votes

Problème SSH Ubuntu Multipass Cloud-init : Retenir la clé SSH de l'utilisateur 'ubuntu' tout en injectant la mienne

J'essaie de créer un fichier de configuration cloud-init pour injecter mes propres clés SSH dans l'utilisateur "ubuntu" pour une instance Multipass. J'ai réussi à injecter ma clé SSH lorsque je crée un nouvel utilisateur pour moi-même et que je définis la clé SSH pour cet utilisateur. Cependant, la clé SSH de l'utilisateur "ubuntu" disparaît dans le processus. Comment dois-je structurer le fichier YAML pour que l'utilisateur "ubuntu" reste inchangé et que je puisse toujours accéder à la machine à l'aide de SSH ?

Voici mon exemple de fichier YAML cloud-init :

#cloud-config

users:
  - default
  - name: vmuser
    sudo: ALL=(ALL) NOPASSWD:ALL
    ssh_authorized_keys:
    - ssh-rsa AAAAB3Nza....

output:
  all: ">> /var/log/cloud-init-output.log"

De plus, j'ai essayé d'utiliser les commandes runcmd et echo pour définir directement la clé SSH dans le fichier authorized_keys, comme suit :

runcmd:
  - sudo echo "ssh-rsa AAAAB3Nza..." >> ~/home/ubuntu/.ssh/authorized_keys

Cependant, cela ne fonctionne pas.

Toute aide ou conseil sur la manière d'y parvenir serait grandement appréciée. Je vous remercie de votre attention.

0voto

falcojr Points 191

En ssh_authorized_keys devrait faire l'affaire. L'exemple suivant définit la clé de votre utilisateur ainsi que la clé par défaut ubuntu l'utilisateur :

#cloud-config

users:
  - default
  - name: vmuser
    sudo: ALL=(ALL) NOPASSWD:ALL
    ssh_authorized_keys:
    - ssh-rsa AAAAB3Nza....

output:
  all: ">> /var/log/cloud-init-output.log"

ssh_authorized_keys:
  - ssh-rsa AAAAB3Nza....

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X