536 votes

Changer la paire de clés pour l'instance ec2

Comment modifier la paire de clés de mon instance ec2 dans la console de gestion AWS? Je peux arrêter l'instance, je peux créer une nouvelle paire de clés, mais je ne vois aucun lien pour modifier la paire de clés de l'instance.

Merci Michael

618voto

yegor256 Points 21737

Voici ce que j'ai fait, merci à Eric de Hammond post de blog:

  1. Arrêter l'exécution d'instance EC2
  2. Détacher de ses /dev/sda1 du volume (volume Un)
  3. Commencer à nouveau t1.micro instance EC2, à l'aide de ma nouvelle paire de clés
  4. Fixez le volume de la nouvelle instance micro, /dev/xvdf (ou /dev/sdf)
  5. SSH à la nouvelle instance micro et montez le volume d' /mnt/tmp
  6. Copiez ~/.ssh/authorized_keys de /mnt/tmp/home/ubuntu/.ssh/authorized_keys
  7. Déconnexion
  8. Mettre fin à micro instance
  9. Détacher Un volume d'elle
  10. Fixez le volume d'Un retour à la principale instance en tant que /dev/sda1
  11. Démarrer la principale instance
  12. Connexion comme avant, à l'aide de votre nouveau - .pem le fichier

C'est tout.

214voto

Eric Hammond Points 10699

Une fois qu'une instance a été commencé, il n'y a aucun moyen de changer la paire de clés associé à l'instance à un méta-niveau de données, mais vous pouvez changer ce que la clé ssh que vous utilisez pour vous connecter à l'instance.

Il y a un processus de démarrage sur la plupart des AMIs que des téléchargements de la clé ssh publique et l'installe dans un .ssh/authorized_keys de sorte que vous pouvez ssh en tant que cet utilisateur à l'aide de l'privée correspondante de clés ssh.

Si vous souhaitez modifier ce que la clé ssh que vous utilisez pour accéder à une instance, vous voulez modifier le fichier authorized_keys sur l'instance elle-même et convertir pour votre nouvelle clé publique ssh.

Le fichier authorized_keys est dans le cadre du .ssh sous-répertoire dans le répertoire home de l'utilisateur que vous êtes connecté en tant. Selon l'AMI, vous êtes en cours d'exécution, il peut être dans l'un de:

/home/ec2-user/.ssh/authorized_keys
/home/ubuntu/.ssh/authorized_keys
/root/.ssh/authorized_keys

Après l'édition d'un fichier authorized_keys, toujours utiliser un différent terminal pour confirmer que vous êtes en mesure de ssh à l'instance avant de vous déconnecter de la session que vous utilisez pour modifier le fichier. Vous ne voulez pas faire une erreur et de s'enfermer à clé de l'instance entièrement.

Pendant que vous êtes en train de penser à propos de paires de clés ssh sur EC2, je vous recommandons de télécharger votre propre clé publique ssh à l'EC2 au lieu d'avoir Amazon générer la paire de clés pour vous.

Voici un article que j'ai écrit à ce sujet:

Le téléchargement de Personnels Clés ssh pour Amazon EC2
http://alestic.com/2010/10/ec2-ssh-keys

Cela ne s'applique que pour les nouvelles instances à vous exécutez.

101voto

Pat Mcb Points 61

Exécutez cette commande après avoir téléchargé votre pem AWS.

 ssh-keygen -f YOURKEY.pem -y
 

Puis vider la sortie dans authorized_keys .

49voto

Mark Berry Points 3154

J'ai remarqué que lorsqu'ils sont gérés par Elastic Beanstalk, vous pouvez changer votre actif EC2 paire de clés. En vertu de l'Elastic Beanstalk > Configuration > Cas, choisissez la clé nouvelle de l' EC2 paire de clés déroulante. Vous verrez ce message pour vous demander si vous êtes sûr:

EC2KeyName: Modifications apportées à l'option EC2KeyName paramètres ne prendra pas effet immédiatement. Chacun de vos instances EC2 sera remplacé et vos nouveaux paramètres prennent effet.

Mon exemple était déjà terminé quand j'ai fait cela. Elle a commencé alors, résilié, et a commencé à nouveau. Apparemment, "remplaçant" signifie la destruction et de la création d'une nouvelle instance. Si vous avez modifié votre volume de démarrage, créez un AMI d'abord, puis de spécifier que l'AMI dans le même Elastic Beanstalk > Configuration > Instances formulaire comme AMI Personnalisée ID. Cela met également en garde sur le remplacement de la instances EC2.

Après que vous avez modifié votre EC2 paire de clés et Personnalisé ID d'AMI, et après avoir vu les avertissements concernant à la fois, cliquez sur Enregistrer pour continuer.

Rappelez-vous que l'adresse IP change lorsque l'instance est créée à nouveau de sorte que vous aurez besoin de récupérer une nouvelle adresse IP à partir de la console EC2 à utiliser lors de la connexion via SSH.

37voto

user37338 Points 126

Je suis passé par cette approche, et après un certain temps, a été en mesure de le faire fonctionner. Le manque de réelles commandes rendu dur, mais j'ai tout compris. TOUTEFOIS - approche beaucoup plus facile a trouvé et testé peu de temps après:

  1. Enregistrer votre instance en tant qu'AMI (reboot ou pas, je vous suggère de redémarrer). Cela ne fonctionne que si l'EBS soutenu.
  2. Ensuite, il suffit de démarrer une instance de cet AMI et affecter votre nouveau Fichier de clés.
  3. Se déplacer au-dessus de votre adresse IP élastique (le cas échéant) à votre nouvelle instance, et vous avez terminé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X