Comment utiliser une seule paire de clés SSH pour toutes mes régions AWS ?

Lecture de 2 minute(s)
0

Je souhaite utiliser la même paire de clés SSH pour accéder à mes instances Amazon Elastic Compute Cloud (Amazon EC2) dans toutes mes régions AWS.

Résolution

**Remarque :](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-troubleshooting.html) Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section **Résoudre les erreurs AWS CLI[. Vérifiez également que vous utilisez la version la plus récente de l'AWS CLI.

Si vous ne possédez pas encore de paire de clés SSH EC2, créez-en une.

Pour utiliser la paire de clés SSH afin d'accéder à vos instances dans toutes vos régions, procédez comme suit pour votre système d'exploitation.

Linux

Procédez comme suit :

  1. Pour générer un fichier de clé SSH publique (.pub) à partir du fichier de clé SSH privée (.pem), exécutez la commande suivante :

    $ ssh-keygen -y -f MyKeyPair.pem > $HOME/.ssh/id_rsa_MyKeyPair.pub

    Remarque : Remplacez MyKeyPair.pem par le nom de votre fichier .pem privé. Assurez-vous que vous travaillez sur un shell Bash et que vous configurez l'AWS CLI avec un utilisateur disposant d'un accès valide.

  2. Pour définir les régions, exécutez la commande describe-regions :

    $ AWS_REGIONS="$(aws ec2 describe-regions --query 'Regions[].RegionName' --output text)"

    Remarque : Si vous utilisez un shell ZSH, exécutez la commande suivante pour activer le fractionnement des mots afin que la commande for loop itère correctement chaque nom de région :

    $ setopt shwordsplit
  3. Pour importer la paire de clés SSH publiques dans les régions, exécutez la commande import-key-pair :

    $ for each_region in ${AWS_REGIONS} ; do aws ec2 import-key-pair --key-name MyKeyPair --public-key-material fileb://$HOME/.ssh/id_rsa_MyKeyPair.pub --region $each_region ; done

Windows

Procédez comme suit :

  1. Pour générer un fichier de clé SSH publique (.pub) à partir du fichier de clé SSH privée (.pem), procédez comme suit :
    Ouvrez PuTTYgen.
    Choisissez Load pour charger votre fichier de clé privée.
    Choisissez Save public key pour enregistrer la clé publique.

  2. Pour importer la paire de clés SSH publiques dans les régions, exécutez la commande suivante :

    $PubFile = Get-Content .\MyKeyPair.pub -raw$Key = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($PubFile))foreach ($Region in (Get-AWSRegion).Region) {Import-EC2KeyPair -KeyName MyKeyPair -PublicKeyMaterial $Key -Region $Region}

    Remarque : Remplacez MyKeyPair.pub par le nom de votre fichier SSH public.

Informations connexes

Points de terminaison des services AWS

Import-EC2KeyPair Cmdlet

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 10 mois