web-dev-qa-db-fra.com

créer une instance ec2 avec plusieurs paires de clés

Lors de la création d'une instance ec2, nous fournissons un nom de paire de clés. 

Mais généralement, j’associe plusieurs clés publiques/privées ssh à n’importe quel serveur distant. Je sais qu'il n'est pas possible d'attacher une paire de clés une fois le serveur ec2 créé. J'aimerais donc savoir s'il est possible ou non d'utiliser plusieurs paires de clés lors de la création d'une instance.

16
Pattu

Malheureusement, il est également impossible d'importer une clé à deux entrées. Seule la première entrée est importée dans la nouvelle paire de clés.

Ce que vous pouvez faire est:

N'utilisez pas les paires de clés EC2, mais utilisez plutôt le champ user_data pour insérer plusieurs clés publiques SSH dans le fichier /home/<user>/.ssh/authorized_keys, où est l'utilisateur standard de votre AMI (ubuntu, ec2_user, etc.).

Vous pouvez ajouter user_data à chaque instance EC2 de lancement. Prenons l'exemple suivant:

#!/bin/bash
echo "ssh-rsa AAAA…" > /home/ubuntu/.ssh/authorized_keys
echo "ssh-rsa AAAA…" >> /home/ubuntu/.ssh/authorized_keys
chown ubuntu: /home/ubuntu/.ssh/authorized_keys
chmod 0600 /home/ubuntu/.ssh/authorized_keys

Les scripts de données utilisateur s'exécutent sous la forme root. Vous n'avez donc pas besoin de spécifier Sudo.

Ainsi, vous pouvez créer des clés d'accès SSH personnalisées via des outils tels que Terraform avant de gérer les instances avec Ansible ou similaire.

Remarque que vous ne savez pas quelles touches sont utilisées par un simple coup d'œil. Vous devez avoir accès à la machine pour la vérifier.

21
Roger Lehmann

Vous ne pouvez pas ... uniquement modifier manuellement ~/.ssh/registered_keys et ajouter les clés publiques des utilisateurs supplémentaires auxquels vous souhaitez donner l'accès. L'inconvénient de cette approche est que vous devrez recommencer l'opération une fois l'opération terminée. Pas vraiment pratique dans un environnement développeur/test ... :(

5
Boeboe

Vous ne pouvez pas associer plusieurs paires de clés à une instance EC2.

Cela dit, vous pouvez créer plusieurs utilisateurs et leur fournir un accès à l'instance via SSH avec authentification par clé plutôt que par mot de passe.

Le processus se déroule de cette façon

  • Créer un nouvel utilisateur
  • attribuer/fournir les autorisations et privilèges appropriés
  • générer une clé - certificat
  • associer le certificat à l'utilisateur

Plus d'informations - SSH avec clé d'authentification au lieu du mot de passe

0
Naveen Vijay