Amazon Elastic Compute Cloud
Guide de l'utilisateur pour les instances Linux

Amazon EC2 Paires de clés

Amazon EC2 utilise le chiffrement de clé publique pour chiffrer et déchiffrer les informations de connexion. Publique – Le chiffrement de clé publique utilise une clé publique pour chiffrer les données, puis le destinataire utilise la clé privée pour déchiffrer les données. La clé publique et la clé privée constituent une paire de clés. Le chiffrement de la clé publique vous permet d'accéder en toute sécurité à vos instances à l'aide d’une clé privée au lieu du mot de passe.

Lorsque vous lancez une instance, vous spécifiez la paire de clés. Vous pouvez spécifier une paire de clés existante ou une nouvelle paire de clés que vous créez au lancement. Au démarrage, le contenu de la clé publique est placé sur l’instance dans une entrée du fichier ~/.ssh/authorized_keys. Pour vous connecter à votre instance, vous devez spécifier la clé privée lors de la connexion. Pour plus d’informations, consultez Lancer votre instance et Connectez-vous à votre instance Linux

Création d'une paire de clés

Vous pouvez utiliser Amazon EC2 pour créer votre paire de clés. Pour plus d'informations, consultez Création d'une paire de clés à l'aide d'Amazon EC2.

Vous pouvez également utiliser un outil tiers, puis importer la clé publique vers Amazon EC2. Pour plus d'informations, consultez Importation de votre propre clé publique dans Amazon EC2.

Chaque paire de clés doit avoir un nom. Assurez-vous de choisir un nom facile à mémoriser. Amazon EC2 associe la clé publique au nom de clé que vous spécifiez.

Amazon EC2 stocke seulement la clé publique. Vous stockez la clé privée. Si une personne obtient votre clé privée, elle peut déchiffrer vos informations de connexion. Il est donc important de stocker vos clés privées dans un emplacement sécurisé.

Les clés utilisées par Amazon EC2 sont des clés RSA SSH-2 2048 bits. Vous pouvez posséder jusqu'à cinq milles paires de clés par région.

Lancement de votre instance et connexion

Lorsque vous lancez votre instance, vous devez spécifier le nom de la paire de clés que vous avez l'intention d'utiliser pour vous connecter à l'instance. Si vous ne spécifiez pas le nom d'une paire de clés existante lorsque vous lancez votre instance, vous ne pourrez pas vous connecter à l'instance. Lorsque vous vous connectez à l'instance, vous devez indiquer la clé privée correspondant à la paire de clés que vous avez spécifiée au lancement de l'instance.

Note

Amazon EC2 ne conserve pas de copie de votre clé privée. Par conséquent, si vous perdez votre clé privée, il n'est pas possible de la récupérer. Si vous perdez votre clé privée pour une instance basée sur le stockage d'instance, vous ne pouvez pas accéder à l'instance ; vous devez alors mettre fin à l'instance et en lancer une nouvelle à l'aide d'une nouvelle paire de clés. Si vous perdez la clé privée pour une instance Linux basée sur des volumes EBS, vous pouvez à nouveau accéder à votre instance. Pour plus d'informations, consultez Connexion à votre instance Linux en cas de perte de votre clé privée.

Paires de clés pour plusieurs utilisateurs

Si plusieurs utilisateurs doivent accéder à une même instance, vous pouvez ajouter des comptes d'utilisateur à votre instance. Pour plus d'informations, consultez Gestion des comptes d'utilisateur sur votre instance Linux. Vous pouvez créer une paire de clés pour chaque utilisateur et ajouter les informations relatives à la clé publique à partir de chaque paire de clés au fichier .ssh/authorized_keys pour chaque utilisateur de votre instance. Vous pouvez ensuite distribuer les fichiers de clé privée à vos utilisateurs. Cela vous évite de devoir distribuer à plusieurs utilisateurs le même fichier de clé privée utilisé pour le compte racine.

Création d'une paire de clés à l'aide d'Amazon EC2

Vous pouvez créer une paire de clés à l'aide de la console Amazon EC2 ou de la ligne de commande. Après avoir créé votre paire de clés, vous pouvez la spécifier lorsque vous lancez votre instance. Vous pouvez également l'ajouter à une instance en cours d'exécution pour permettre à un autre utilisateur de se connecter à l'instance. Pour plus d'informations, consultez Ajout ou remplacement d'une paire de clés pour votre instance.

Pour créer votre paire de clés à l'aide de la console Amazon EC2

  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sous NETWORK & SECURITY, choisissez Key Pairs.

    Note

    Le panneau de navigation se trouve sur la gauche de la console Amazon EC2. Si le volet n'est pas visible, il se peut qu'il soit réduit ; cliquez sur la flèche pour le développer.

  3. Choisissez Create Key Pair.

  4. Pour Nom de la paire de clés, entrez un nom pour la nouvelle paire de clés, puis choisissez Créer.

  5. Le fichier de clé privée est automatiquement téléchargé dans votre navigateur. Le nom de fichier de base est le nom que vous avez spécifié comme nom de votre paire de clés et l'extension du nom de fichier est .pem. Enregistrez le fichier de clé privée en lieu sûr.

    Important

    C'est votre seule occasion d'enregistrer le fichier de clé privée. Vous devez fournir le nom de votre paire de clés quand vous lancez une instance, ainsi que la clé privée correspondante chaque fois que vous vous connectez à l'instance.

  6. Si vous envisagez d'utiliser un client SSH sur un ordinateur Mac ou Linux pour vous connecter à votre instance Linux, utilisez la commande suivante pour définir les autorisations de votre fichier de clé privée afin d'être la seule personne autorisée à le lire.

    chmod 400 my-key-pair.pem

    Si vous ne définissez pas ces autorisations, vous ne pouvez pas vous connecter à votre instance à l'aide de cette paire de clés. Pour plus d'informations, consultez Erreur : fichier de clé privée non protégé.

Pour créer votre paire de clés à l'aide de la ligne de commande

Vous pouvez utiliser l'une des commandes suivantes. Pour obtenir plus d'informations sur les CLI (interface ligne de commande), consultez le didacticiel Accès à Amazon EC2.

Importation de votre propre clé publique dans Amazon EC2

Au lieu d'utiliser Amazon EC2 pour créer votre paire de clés, vous pouvez créer une paire de clés RSA à l'aide d'un outil tiers, puis importer la clé publique dans Amazon EC2. Par exemple, vous pouvez utiliser ssh-keygen (outil fourni avec l'installation OpenSSH standard) pour créer une paire de clés. Java, Ruby, Python, ainsi qu'un grand nombre d'autres langages de programmation fournissent également des bibliothèques standard pouvant être utilisées pour créer une paire de clés RSA.

Prérequis

  • Les formats suivants sont pris en charge :

    • Format de clé publique OpenSSH (le format dans ~/.ssh/authorized_keys). Si vous vous connectez avec SSH lorsque vous utilisez l’API EC2 Instance Connect, le format SSH2 est également pris en charge.

    • Le format DER codé en base64

    • Le format de fichier de clé publique SSH tel que spécifié dans RFC4716

    • Le format de fichier de clé privée SSH doit être PEM (par exemple, utilisez ssh-keygen -m PEM pour convertir la clé OpenSSH au format PEM)

  • Créez une clé RSA. Amazon EC2 n'accepte pas les clés DSA.

  • Les longueurs prises en charge sont 1024, 2048 et 4096. Si vous vous connectez avec SSH lorsque vous utilisez l’API EC2 Instance Connect, les longueurs prises en charge sont 2 048 et 4 096.

Pour créer une paire de clés à l'aide d'un outil tiers

  1. Générez une paire de clés avec un outil tiers de votre choix.

  2. Enregistrez la clé publique dans un fichier local. Par exemple, ~/.ssh/my-key-pair.pub (Linux) ou C:\keys\my-key-pair.pub (Windows). L'extension du nom de fichier de ce fichier n'est pas importante.

  3. Enregistrez la clé privée dans un autre fichier local ayant l'extension .pem. Par exemple, ~/.ssh/my-key-pair.pem (Linux) ou C:\keys\my-key-pair.pem (Windows). Enregistrez le fichier de clé privée en lieu sûr. Vous devez fournir le nom de votre paire de clés quand vous lancez une instance, ainsi que la clé privée correspondante chaque fois que vous vous connectez à l'instance.

Procédez de la manière suivante pour importer votre paire de clés à l'aide de la console Amazon EC2.

Pour importer la clé publique

  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sous NETWORK & SECURITY, choisissez Key Pairs.

  3. Choisissez Importer une paire de clés.

  4. Dans la boîte de dialogue Importer une paire de clés, choisissez Parcourir, puis sélectionnez le fichier de clé publique préalablement enregistré. Attribuez un nom à la paire de clés dans le champ Nom de la paire de clés, puis choisissez Importer.

Pour importer la clé publique à l'aide de la ligne de commande

Vous pouvez utiliser l'une des commandes suivantes. Pour obtenir plus d'informations sur les CLI (interface ligne de commande), consultez le didacticiel Accès à Amazon EC2.

Après l'importation du fichier de clé publique, vous pouvez vérifier que la paire de clés a été correctement importée à l'aide de la console Amazon EC2 de la façon suivante.

Pour vérifier l'importation de votre paire de clés

  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans la barre de navigation, sélectionnez la région dans laquelle vous avez créé la paire de clés.

  3. Dans le panneau de navigation, sous NETWORK & SECURITY, choisissez Key Pairs.

  4. Vérifiez que la paire de clés que vous avez importée fait partie de la liste des paires de clés affichée.

Pour afficher la paire de clés à l'aide de la ligne de commande

Vous pouvez utiliser l'une des commandes suivantes. Pour obtenir plus d'informations sur les CLI (interface ligne de commande), consultez le didacticiel Accès à Amazon EC2.

Récupération de la clé publique pour votre paire de clés sous Linux

Sur votre ordinateur local Linux ou Mac, vous pouvez utiliser la commande ssh-keygen pour extraire la clé publique de votre paire de clés. Spécifiez le chemin où vous avez téléchargé votre clé privée (fichier .pem).

ssh-keygen -y -f /path_to_key_pair/my-key-pair.pem

La commande renvoie la clé publique. Par exemple :

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

Si la commande échoue, assurez-vous d'avoir modifié les autorisations sur votre fichier de paire de clés afin d'être le seul à pouvoir l'afficher en exécutant la commande suivante :

chmod 400 my-key-pair.pem

Récupération de la clé publique pour votre paire de clés sous Windows

Sur votre ordinateur Windows local, vous pouvez utiliser PuTTYgen pour obtenir la clé publique de votre paire de clés.

Lancez PuTTYgen et choisissez Load (Charger). Sélectionnez le fichier .ppk ou .pem. PuTTYgen affiche la clé publique sous Public key for pasting into OpenSSH authorized_keys file (Clé publique à coller dans le fichier authorized_keys OpenSSH). Vous pouvez également visualiser la clé publique en choisissant Save public key (Enregistrer la clé publique), en spécifiant un nom pour le fichier, en enregistrant le fichier et en ouvrant le fichier.

Récupération de la clé publique pour votre paire de clés depuis votre instance

La clé publique spécifiée lorsque vous avez lancé une instance est également accessible via les métadonnées de l'instance. Pour afficher la clé publique que vous avez spécifiée lors du lancement de l'instance, utilisez la commande suivante à partir de votre instance :

[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE my-key-pair

Si vous modifiez la paire de clés que vous utilisez pour vous connecter à l'instance, les métadonnées de l'instance ne sont pas mises à jour pour afficher la nouvelle clé publique. La clé publique qui s'affiche est celle de la paire de clés que vous avez spécifiée lors du lancement de l'instance dans les métadonnées de l'instance.

Pour plus d'informations, consultez Récupérer des métadonnées d'instance.

Sur une instance Linux, le contenu de la clé publique est placé dans une entrée du fichier ~/.ssh/authorized_keys. Ouvrez le fichier dans un éditeur de texte. Voici un exemple d'entrée pour la paire de clés nommée my-key-pair. La clé publique est suivie du nom de la paire de clés. Par exemple :

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE my-key-pair

Vérification de l'empreinte de votre paire de clés

Dans la page Paires de clés de la console Amazon EC2, la colonne Empreinte digitale affiche les empreintes digitales générées à partir de vos paires de clés. AWS calcule l'empreinte digitale différemment selon que la paire de clés a été générée par AWS ou un outil tiers. Si vous avez créé la paire de clés à l'aide d'AWS, l'empreinte est calculée à l'aide d'une fonction de hachage SHA-1. Si vous avez créé la paire de clés à l'aide d'un outil tiers et téléchargé la clé publique dans AWS, ou si vous avez généré une nouvelle clé publique à partir d'une clé privée créée avec AWS puis que vous l'avez téléchargée dans AWS, l'empreinte est calculée à partir d'une fonction de hachage MD5.

Vous pouvez utiliser l'empreinte SSH2 affichée sur la page Paires de clés pour vérifier que la clé privée présente sur votre ordinateur local correspond à la clé publique stockée dans AWS. À partir de l'ordinateur où vous avez téléchargé le fichier de clé privée, générez une empreinte SSH2 à partir du fichier de clé privée. La sortie doit correspondre à l'empreinte affichée dans la console.

Si vous avez créé la paire de clés avec AWS, vous pouvez utiliser les outils OpenSSL pour générer une empreinte comme suit :

$ openssl pkcs8 -in path_to_private_key -inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c

Si vous avez créé une paire de clés à l'aide d'un outil tiers puis téléchargé la clé publique dans AWS, vous pouvez utiliser les outils OpenSSL pour générer l'empreinte, comme suit :

$ openssl rsa -in path_to_private_key -pubout -outform DER | openssl md5 -c

Si vous avez créé une paire de clés OpenSSH à l'aide d'OpenSSH 7.8 ou version ultérieure et téléchargé la clé publique dans AWS, vous pouvez utiliser ssh-keygen pour générer l'empreinte, comme suit :

$ ssh-keygen -ef path_to_private_key -m PEM | openssl rsa -RSAPublicKey_in -outform DER | openssl md5 -c

Suppression de votre paire de clés

Lorsque vous supprimez votre paire de clés, vous supprimez seulement la copie d'Amazon EC2 de la clé publique. La suppression d'une paire de clés n'affecte pas la clé privée présente sur votre ordinateur ni la clé publique sur les instances déjà lancées à l'aide de cette paire de clés. Vous ne pouvez pas lancer de nouvelle instance à l'aide d'une paire de clés supprimée, mais vous pouvez continuer à vous connecter à toutes les instances lancées à l'aide d'une paire de clés supprimée ultérieurement, tant que vous disposez du fichier de clé privée (.pem).

Note

Si vous utilisez un groupe Auto Scaling (par exemple, dans un environnement Elastic Beanstalk), assurez-vous que la paire de clés que vous supprimez n'est pas spécifiée dans votre configuration de lancement. Amazon EC2 Auto Scaling lance une instance de remplacement en cas de détection d'une instance défectueuse. Cependant, le lancement de l'instance échoue si la paire de clés est introuvable.

Vous pouvez supprimer une paire de clés à l'aide de la console Amazon EC2 ou de la ligne de commande.

Pour supprimer votre paire de clés à l'aide de la console

  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sous NETWORK & SECURITY, choisissez Key Pairs.

  3. Sélectionnez la paire de clés, puis choisissez Supprimer.

  4. À l'invite, choisissez Oui.

Pour supprimer votre paire de clés à l'aide de la ligne de commande

Vous pouvez utiliser l'une des commandes suivantes. Pour obtenir plus d'informations sur les CLI (interface ligne de commande), consultez le didacticiel Accès à Amazon EC2.

Note

Si vous créez une AMI Linux à partir d'une instance, puis utilisez l'AMI pour lancer une nouvelle instance dans une autre région ou dans un compte différent, la nouvelle instance comprend la clé publique de l'instance d'origine. Vous pouvez ainsi vous connecter à la nouvelle instance à l'aide du même fichier de clé privée que celui utilisé pour l'instance d'origine. Vous pouvez supprimer cette clé publique de votre instance en supprimant son entrée du fichier .ssh/authorized_keys à l'aide de l'éditeur de texte de votre choix. Pour plus d'informations sur la gestion des utilisateurs sur votre instance et sur la fourniture d'un accès distant à l'aide d'une paire de clés spécifique, consultez Gestion des comptes d'utilisateur sur votre instance Linux.

Ajout ou remplacement d'une paire de clés pour votre instance

Vous pouvez modifier la paire de clés qui permet d'accéder au compte système par défaut de votre instance. Par exemple, si un utilisateur de votre organisation requiert l'accès au compte utilisateur système à l'aide d'une paire de clés distincte, vous pouvez ajouter la paire de clés à votre instance. Ou, si quelqu'un possède une copie du fichier .pem et que vous voulez l'empêcher de se connecter à votre instance (par exemple, si la personne a quitté votre organisation), vous pouvez remplacer la paire de clés par la nouvelle.

Note

Ces procédures permettent de modifier la paire de clés pour le compte utilisateur par défaut, tel que ec2-user. Pour plus d'informations sur l'ajout de comptes d'utilisateur à votre instance, consultez Gestion des comptes d'utilisateur sur votre instance Linux.

Avant de commencer, créez une paire de clés à l'aide de la console Amazon EC2 ou d'un outil tiers.

Pour ajouter ou remplacer une paire de clés

  1. Extrayez la clé publique depuis votre nouvelle paire de clés. Pour plus d'informations, consultez Récupération de la clé publique pour votre paire de clés sous Linux ou Récupération de la clé publique pour votre paire de clés sous Windows.

  2. Connectez-vous à votre instance à l'aide de votre fichier de clé privée existant.

  3. À l'aide d'un éditeur de texte de votre choix, ouvrez le fichier .ssh/authorized_keys sur l'instance. Collez les informations de clé publique depuis votre nouvelle paire de clés sous les informations existantes de clé publique. Sauvegardez le fichier.

  4. Déconnectez-vous de votre instance et testez que vous pouvez vous connecter à votre instance à l'aide du nouveau fichier de clé privé.

  5. (Facultatif) Si vous remplacez une paire de clés existante, connectez-vous à votre instance et supprimez les informations de clé publique de la paire de clés originale du fichier .ssh/authorized_keys.

Note

Si vous utilisez un groupe Auto Scaling (par exemple, dans un environnement Elastic Beanstalk), assurez-vous que la paire de clés que vous remplacez n'est pas spécifiée dans votre configuration de lancement. Amazon EC2 Auto Scaling lance une instance de remplacement en cas de détection d'une instance défectueuse. Cependant, le lancement de l'instance échoue si la paire de clés est introuvable.

Connexion à votre instance Linux en cas de perte de votre clé privée

Si vous perdez la clé privée pour une instance basée sur des volumes EBS, vous pouvez à nouveau accéder à votre instance. Vous devez arrêter l'instance, détacher son volume racine et l'attacher à une autre instance en tant que volume de données, modifier le fichier authorized_keys, replacer le volume dans l'instance d'origine et redémarrer l'instance. Pour plus d'informations sur le lancement et l'arrêt des instances, ainsi que sur la connexion aux instances, consultez Cycle de vie d'une instance.

Cette procédure n'est pas prise en charge pour les instances basées sur le stockage d'instance. Pour déterminer le type d'appareil racine pour votre instance, ouvrez la console Amazon EC2, choisissez Instances, sélectionnez l'instance et vérifiez la valeur de Type de périphérique racine dans le volet des détails. La valeur est ebs ou instance store. Si l'appareil racine est un volume de stockage d'instance, vous devez posséder la clé privée pour vous connecter à l'instance.

Prérequis

Créer une nouvelle paire de clés à l'aide de la console Amazon EC2 ou d'un outil tiers. Si vous souhaitez nommer votre nouvelle paire de clés exactement comme la clé privée perdue, vous devez commencer par supprimer la paire de clés existante.

Pour vous connecter à une instance basée sur des volumes EBS avec une paire de clés différente

  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Choisissez Instances dans le panneau de navigation, puis sélectionnez l'instance à laquelle vous souhaitez vous connecter. (Cette instance est qualifiée d'instance d'origine.)

  3. Dans l'onglet Description, enregistrez les informations suivantes qui vous seront nécessaires pour terminer cette procédure.

    • Notez l'ID de l'instance, l'ID d'AMI et la zone de disponibilité de l'instance d'origine.

    • Dans le champ Périphérique racine, notez le nom du périphérique du volume racine (par exemple, /dev/sda1 ou /dev/xvda). Cliquez sur le lien et notez l'ID de volume dans le champ ID d'EBS (vol-xxxxxxxxxxxxxxxxx).

  4. Sélectionnez Actions, État de l'instance, puis Arrêter. Si Arrêter est désactivé, l'instance est déjà arrêtée ou son périphérique racine est un volume de stockage d'instance.

    Avertissement

    Lorsque vous arrêtez une instance, les données contenues sur les volumes de stockage d'instance sont effacées. Pour conserver les données des volumes de stockage d'instance, veillez à les sauvegarder sur un stockage permanent.

  5. Choisissez Lancer une instance, puis utilisez l'assistant de lancement pour lancer une instance temporaire avec les options suivantes :

    • Dans la page Choisir une AMI, sélectionnez la même AMI que celle utilisée pour lancer l'instance d'origine. Si l'AMI n'est pas disponible, vous pouvez créer une AMI à utiliser depuis l'instance arrêtée. Pour plus d'informations, consultez Création d'une AMI Linux basée sur Amazon EBS .

    • Sur la page Choisir un type d'instance, conservez le type d'instance par défaut sélectionné par l'assistant.

    • Sur la page Configurer les détails de l'instance, spécifiez la même zone de disponibilité que celle de l'instance à laquelle vous souhaitez vous connecter. Si vous lancez une instance dans un VPC, sélectionnez un sous-réseau dans cette zone de disponibilité.

    • Sur la page Ajouter des balises, ajoutez la balise Name=Temporary à l'instance pour indiquer qu'il s'agit d'une instance temporaire.

    • Sur la page Vérification, choisissez Lancer. Créez une paire de clés, téléchargez-la dans un emplacement sûr de votre ordinateur, puis choisissez Lancer des instances.

  6. Dans le panneau de navigation, choisissez Volumes et sélectionnez le volume du périphérique racine pour l'instance d'origine (vous avez noté l'ID de volume au cours d'une étape précédente). Choisissez Actions, Detach Volume, puis sélectionnez Yes, Detach. Attendez que l'état du volume devienne available. (Vous devrez peut-être sélectionner l'icône Actualiser.)

  7. Tandis que le volume est toujours sélectionné, choisissez Actions, puis sélectionnez Attacher un volume. Sélectionnez l'ID d'instance de l'instance temporaire, notez le nom de périphérique spécifié dans Device (par exemple, //dev/sdf), puis choisissez Attach.

    Note

    Si vous avez lancé votre instance initiale à partir d'une AMI AWS Marketplace et que votre volume contient des codes AWS Marketplace, vous devez arrêter l'instance temporaire avant de pouvoir attacher le volume.

  8. Connectez-vous à l'instance temporaire.

  9. À partir de l'instance temporaire, montez le volume que vous avez attaché à l'instance afin de pouvoir accéder au système de fichiers. Par exemple, si le nom du périphérique est /dev/sdf, utilisez les commandes suivantes pour monter le volume en tant que /mnt/tempvol.

    Note

    Le nom du périphérique peut apparaître différemment sur votre instance. Par exemple, les périphériques montés en tant que /dev/sdf peuvent également s'afficher en tant que /dev/xvdf sur l'instance. Certaines versions de Red Hat (ou ses variantes, comme CentOS) peuvent même incrémenter la lettre finale de quatre caractères, et /dev/sdf devient /dev/xvdk.

    1. Utilisez la commande lsblk pour déterminer si le volume est divisé.

      [ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdf 202:80 0 101G 0 disk └─xvdf1 202:81 0 101G 0 part xvdg 202:96 0 30G 0 disk

      Dans l'exemple ci-dessus, /dev/xvda et /dev/xvdf sont des volumes partitionnés, mais /dev/xvdg ne l'est pas. Si votre volume est partitionné, vous montez la partition (/dev/xvdf1)) au lieu du périphérique brut (/dev/xvdf) au cours des étapes suivantes.

    2. Créez un répertoire temporaire pour monter le volume.

      [ec2-user ~]$ sudo mkdir /mnt/tempvol
    3. Montez le volume (ou la partition) sur le point de montage temporaire, en utilisant le nom du volume ou du périphérique que vous avez identifié plus tôt. La commande requise dépend du système de fichiers de votre système d'exploitation.

      • Amazon Linux, Ubuntu et Debian

        [ec2-user ~]$ sudo mount /dev/xvdf1 /mnt/tempvol
      • Amazon Linux 2, CentOS, SLES 12, and RHEL 7.x

        [ec2-user ~]$ sudo mount -o nouuid /dev/xvdf1 /mnt/tempvol

    Note

    Si vous obtenez une erreur indiquant que le système de fichiers est endommagé, exécutez la commande suivante pour utiliser l'utilitaire fsck afin de rechercher les erreurs dans votre système de fichiers et de les résoudre.

    [ec2-user ~]$ sudo fsck /dev/xvdf1
  10. À partir de l'instance temporaire, utilisez la commande suivante pour mettre à jour authorized_keys sur le volume monté avec la nouvelle clé publique de authorized_keys pour l'instance temporaire.

    Important

    Les exemples suivants utilisent le nom d'utilisateur Amazon Linux ec2-user. Vous devrez peut-être modifier le nom d'utilisateur, par exemple, ubuntu pour les instances Ubuntu.

    [ec2-user ~]$ cp .ssh/authorized_keys /mnt/tempvol/home/ec2-user/.ssh/authorized_keys

    Une fois que cette étape est correctement effectuée, vous pouvez passer à l'étape suivante.

    (Facultatif) Sinon, si vous n'êtes pas autorisé à modifier des fichiers dans /mnt/tempvol, vous devrez mettre à jour le fichier à l'aide de la commande sudo, puis vérifier les autorisations sur le fichier afin de vous assurer que vous serez en mesure de vous connecter à l'instance d'origine. Pour vérifier les autorisations sur le fichier, utilisez la commande suivante :

    [ec2-user ~]$ sudo ls -l /mnt/tempvol/home/ec2-user/.ssh total 4 -rw------- 1 222 500 398 Sep 13 22:54 authorized_keys

    Dans cet exemple, 222 est l'ID d'utilisateur et 500 est l'ID de groupe. Utilisez ensuite la commande sudo pour ré-exécuter la commande copy ayant échoué :

    [ec2-user ~]$ sudo cp .ssh/authorized_keys /mnt/tempvol/home/ec2-user/.ssh/authorized_keys

    Exécutez à nouveau la commande suivante pour déterminer si les autorisations ont été modifiées :

    [ec2-user ~]$ sudo ls -l /mnt/tempvol/home/ec2-user/.ssh

    Si l'ID d'utilisateur et l'ID de groupe ont été modifiés, utilisez la commande suivante pour les restaurer :

    [ec2-user ~]$ sudo chown 222:500 /mnt/tempvol/home/ec2-user/.ssh/authorized_keys
  11. À partir de l'instance temporaire, démontez le volume que vous avez attaché afin de pouvoir l'attacher à nouveau à l'instance d'origine. Par exemple, utilisez la commande suivante pour démonter le volume situé dans /mnt/tempvol :

    [ec2-user ~]$ sudo umount /mnt/tempvol
  12. Dans la console Amazon EC2, sélectionnez le volume portant l'ID de que vous avez notée, choisissez Actions, Détacher un volume, puis sélectionnez Oui, détacher. Attendez que l'état du volume devienne available. (Vous devrez peut-être sélectionner l'icône Actualiser.)

  13. Tandis que le volume est toujours sélectionné, choisissez Actions, Attacher un volume. Sélectionnez l'ID d'instance de l'instance d'origine, précisez le nom du périphérique que vous avez noté précédemment pour l'attachement du périphérique racine d'origine (/dev/sda1 ou /dev/xvda), puis choisissez Attacher.

    Important

    Si vous ne spécifiez pas le même nom de périphérique que pour l'attachement original, vous ne pourrez pas démarrer l'instance d'origine. Amazon EC2 s'attend à ce que le volume du périphérique racine soit à l'adresse sda1 ou /dev/xvda.

  14. Sélectionnez l'instance d'origine, choisissez Actions, sélectionnez État de l'instance, puis Début. Lorsque l'état de l'instance est running, vous pouvez vous y connecter à l'aide du fichier de clé privée de votre nouvelle paire de clés.

    Note

    Si le nom de votre paire de clés et du fichier de clé privée correspondant est différent du nom de la paire de clés initiale, veillez à spécifier le nom du nouveau fichier de clé privée lorsque vous vous connectez à votre instance.

  15. (Facultatif) Vous pouvez mettre fin à l'instance temporaire si vous n'en avez plus besoin. Sélectionnez l'instance temporaire, choisissez Actions, sélectionnez État de l'instance, puis Résilier.