

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Créer une paire de clés pour votre instance Amazon EC2
<a name="create-key-pairs"></a>

Vous pouvez utiliser Amazon EC2 pour créer vos paires de clés ou utiliser un outil tiers pour créer vos paires de clés, puis les importer dans Amazon EC2.

Amazon EC2 prend en charge les clés SSH-2 RSA de 2048 octets pour les instances Linux et Windows. Amazon EC2 prend également en charge les ED25519 clés pour les instances Linux.

Pour connaître la procédure de connexion à votre instance après avoir créé une clé de paire, consultez [Se connecter à votre instance Linux à l’aide de SSH](connect-to-linux-instance.md) et [Se connecter à votre instance Windows à l’aide de RDP](connecting_to_windows_instance.md).

**Topics**
+ [Créer une paire de clés à l’aide d’Amazon EC2](#having-ec2-create-your-key-pair)
+ [Créez une paire de clés en utilisant AWS CloudFormation](#create-key-pair-cloudformation)
+ [Créer une paire de clés à l’aide d’un outil tiers et importer la clé publique dans Amazon EC2](#how-to-generate-your-own-key-and-import-it-to-aws)

## Créer une paire de clés à l’aide d’Amazon EC2
<a name="having-ec2-create-your-key-pair"></a>

Lorsque vous créez une paire de clés à l’aide d’Amazon EC2, la clé publique est stockée dans Amazon EC2 et c’est vous qui stockez la clé privée.

Vous pouvez créer jusqu'à 5 000 paires de clés par région. Pour demander une augmentation, créez un dossier d'assistance. Pour obtenir plus d’informations, consultez la section [Creating a support case](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html#creating-a-support-case) (Création d’un cas de support) dans le *Guide de l’utilisateur Support *.

------
#### [ Console ]

**Pour créer une paire de clés à l’aide d’Amazon EC2**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le volet de navigation, sous **Network & Security**, choisissez **Key Pairs**.

1. Choisissez **Créer une paire de clés**.

1. Pour **Name (Nom)**, entrez un nom descriptif pour la paire de clés. Amazon EC2 associe la clé publique au nom de clé que vous spécifiez. Le nom peut inclure jusqu’à 255 caractères ASCII. Il ne peut pas inclure d’espaces de début ou de fin.

1. Sélectionnez un type de paire de clés adapté à votre système d’exploitation :

   (Instances Linux) Pour le **type de paire de clés**, sélectionnez **RSA** ou **ED25519**.

   (Instances Windows) Pour le **type de paire de clés**, choisissez **RSA**. **ED25519**les clés ne sont pas prises en charge pour les instances Windows.

1. Pour le **Private Key File format** (Format de fichier de clé privée), sélectionnez le format dans lequel vous souhaitez enregistrer la clé privée. Pour enregistrer la clé privée dans un format qui peut être utilisé avec OpenSSH, choisissez **pem**. Pour enregistrer la clé privée dans un format qui peut être utilisé avec PuTTY, choisissez **ppk**.

1. Pour ajouter une balise à la clé publique, sélectionnez **Add tag** (Ajouter une balise), puis entrez la clé et la valeur de la balise. Répétez l’opération pour chaque étiquette. 

1. Choisissez **Créer une paire de clés**.

1. Le fichier de clé privée est automatiquement téléchargé dans votre navigateur. Le nom de fichier de base est celui que vous avez spécifié pour votre paire de clés, et l’extension de nom de fichier est déterminée par le format de fichier que vous avez choisi. 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.

1. Si vous prévoyez d’utiliser un client SSH sur un ordinateur macOS 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 key-pair-name.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é](TroubleshootingInstancesConnecting.md#troubleshoot-unprotected-key).

------
#### [ AWS CLI ]

**Pour créer une paire de clés à l’aide d’Amazon EC2**

1. Pour générer la paire de clés et enregistrer la clé privée vers un fichier `.pem`, utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/ec2/create-key-pair.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-key-pair.html) comme suit. L’option `--query` imprime l’élément de clé privée dans la sortie. L’option `--output` enregistre l’élément de clé privée dans le fichier spécifié. L’extension doit être `.pem` ou `.ppk`, selon le format de la clé. Le nom de la clé privée peut être différent du nom de la clé publique, mais pour faciliter l’utilisation, utilisez le même nom.

   ```
   aws ec2 create-key-pair \
       --key-name my-key-pair \
       --key-type rsa \
       --key-format pem \
       --query "KeyMaterial" \
       --output text > my-key-pair.pem
   ```

1. Si vous prévoyez d’utiliser un client SSH sur un ordinateur macOS 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 key-pair-name.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é](TroubleshootingInstancesConnecting.md#troubleshoot-unprotected-key).

------
#### [ PowerShell ]

**Pour créer une paire de clés à l’aide d’Amazon EC2**  
Utilisez la commande [https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2KeyPair.html) comme suit pour générer la clé et l’enregistrer dans un fichier `.pem` ou `.ppk`. L’applet de commande **Out-File** enregistre l’élément de clé privée dans un fichier avec l’extension spécifiée. L’extension doit être `.pem` ou `.ppk`, selon le format de la clé. Le nom de la clé privée peut être différent du nom de la clé publique, mais pour faciliter l’utilisation, utilisez le même nom.

```
(New-EC2KeyPair `
    -KeyName "my-key-pair" `
    -KeyType "rsa" `
    -KeyFormat "pem").KeyMaterial | Out-File -Encoding ascii -FilePath C:\path\my-key-pair.pem
```

------

## Créez une paire de clés en utilisant AWS CloudFormation
<a name="create-key-pair-cloudformation"></a>

Lorsque vous créez une nouvelle paire de clés à l'aide de CloudFormation, la clé privée est enregistrée dans AWS Systems Manager Parameter Store. Le nom du paramètre a le format suivant :

```
/ec2/keypair/key_pair_id
```

Pour plus d’informations, veuillez consulter la rubrique [AWS Systems Manager Parameter Store](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html) dans le *Guide de l’utilisateur AWS Systems Manager *.

**Pour créer une paire de clés en utilisant CloudFormation**

1. Spécifiez la [AWS::EC2::KeyPair](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)ressource dans votre modèle.

   ```
   Resources:
     NewKeyPair:
       Type: 'AWS::EC2::KeyPair'
       Properties: 
         KeyName: new-key-pair
   ```

1. Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html) comme suit pour obtenir l’ID de la paire de clés.

   ```
   aws ec2 describe-key-pairs --filters Name=key-name,Values=new-key-pair --query KeyPairs[*].KeyPairId --output text
   ```

   Voici un exemple de sortie.

   ```
   key-05abb699beEXAMPLE
   ```

1. Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameter.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameter.html) comme suit pour obtenir le paramètre de votre clé et enregistrer le contenu de la clé dans un fichier `.pem`.

   ```
   aws ssm get-parameter --name /ec2/keypair/key-05abb699beEXAMPLE --with-decryption --query Parameter.Value --output text > new-key-pair.pem
   ```

**Autorisations IAM requises**

 CloudFormation Pour permettre de gérer les paramètres du magasin de paramètres en votre nom, le rôle IAM assumé par CloudFormation ou votre utilisateur doit disposer des autorisations suivantes :
+ `ssm:PutParameter` : accorde l’autorisation de créer un paramètre pour le matériel de clé privée.
+ `ssm:DeleteParameter` : autorise la suppression du paramètre utilisé pour stocker les éléments de clé privée. Cette autorisation est nécessaire, que la paire de clés ait été importée ou créée par CloudFormation.

Lorsqu'il CloudFormation supprime une paire de clés créée ou importée par une pile, il effectue une vérification des autorisations pour déterminer si vous êtes autorisé à supprimer des paramètres, même s'il CloudFormation crée un paramètre uniquement lorsqu'il crée une paire de clés, et non lorsqu'il importe une paire de clés. CloudFormation teste l'autorisation requise à l'aide d'un nom de paramètre fabriqué qui ne correspond à aucun paramètre de votre compte. Par conséquent, vous pouvez voir un nom de paramètre fabriqué dans le message d’erreur `AccessDeniedException`.

## Créer une paire de clés à l’aide d’un outil tiers et importer la clé publique dans Amazon EC2
<a name="how-to-generate-your-own-key-and-import-it-to-aws"></a>

Au lieu d'utiliser Amazon EC2 pour créer une paire de clés, vous pouvez créer une paire de clés RSA ou ED25519 à l'aide d'un outil tiers, puis importer la clé publique dans Amazon EC2.

**Exigences relatives aux paires de clés**
+ Types pris en charge :
  + (Linux et Windows) RSA
  + (Linux uniquement) ED25519
**Note**  
ED25519 les clés ne sont pas prises en charge pour les instances Windows.
  + Amazon EC2 n’accepte pas les clés DSA.
+ Formats pris en charge :
  + Format de la clé publique OpenSSH (pour Linux, le format dans `~/.ssh/authorized_keys`)
  + (Linux uniquement) Si vous vous connectez via SSH tout en utilisant l'API EC2 Instance Connect, le SSH2 format est également pris en charge.
  + Le fichier de clé privée SSH doit être au format PEM ou PPK
  + Le format DER codé en base64 (RSA uniquement)
  + Le format de fichier de clé publique SSH tel que spécifié dans [RFC 4716](https://www.ietf.org/rfc/rfc4716.txt) (RSA uniquement)
+ Longueurs prises en charge :
  + 1024, 2048 et 4096.
  + (Linux uniquement) Si vous vous connectez à l'aide de SSH en utilisant 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. Par exemple, vous pouvez utiliser **ssh-keygen** (outil fourni avec l’installation OpenSSH standard). 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.
**Important**  
La clé privée doit être au format PEM ou PPK. Par exemple, utilisez `ssh-keygen -m PEM` pour générer la clé OpenSSH au format PEM.

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

1. Enregistrez la clé privée dans un fichier local dont l’extension est `.pem` ou `.ppk`. Par exemple, `~/.ssh/my-key-pair.pem` ou `~/.ssh/my-key-pair.ppk` (Linux, macOS) ou `C:\keys\my-key-pair.pem` ou `C:\keys\my-key-pair.ppk` (Windows). L’extension de fichier est importante car, selon l’outil que vous utilisez pour vous connecter à votre instance, vous aurez besoin d’un format de fichier spécifique. OpenSSH a besoin d'un fichier `.pem` tandis que PuTTY a besoin d'un fichier `.ppk`.
**Important**  
Enregistrez le fichier de clé privée en lieu sûr. Vous devez fournir le nom de votre clé publique lorsque vous lancez une instance, ainsi que la clé privée correspondante chaque fois que vous vous connectez à l’instance.

Après avoir créé la paire de clés, utilisez l’une des méthodes suivantes pour importer votre clé publique vers Amazon EC2.

------
#### [ Console ]

**Pour importer la clé publique dans Amazon EC2**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le volet de navigation, cliquez sur **Key Pairs**.

1. Choisissez **Import key pair (Importer une paire de clés)**.

1. Pour **Name (Nom)**, saisissez un nom descriptif pour la clé publique. Le nom peut inclure jusqu’à 255 caractères ASCII. Il ne peut pas inclure d’espaces de début ou de fin.
**Note**  
Lorsque vous vous connectez à votre instance à partir de la console EC2, la console suggère ce nom pour le nom de votre fichier de clé privée.

1. Choisissez **Browse (Parcourir)** pour accéder à votre clé publique et la sélectionner, ou collez le contenu de votre clé publique dans le champ **Public key contents (Contenu de la clé publique)**.

1. Choisissez **Import key pair (Importer une paire de clés)**.

1. Vérifiez que la clé publique que vous avez importée apparaît dans la liste des paires de clés.

------
#### [ AWS CLI ]

**Pour importer la clé publique dans Amazon EC2**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/ec2/import-key-pair.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/import-key-pair.html).

```
aws ec2 import-key-pair \
    --key-name my-key-pair \
    --public-key-material fileb://path/my-key-pair.pub
```

**Pour vérifier que la paire de clés a été importée correctement**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html).

```
aws ec2 describe-key-pairs --key-names my-key-pair
```

------
#### [ PowerShell ]

**Pour importer la clé publique dans Amazon EC2**  
Utilisez l’applet de commande [https://docs.aws.amazon.com/powershell/latest/reference/items/Import-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Import-EC2KeyPair.html).

```
$publickey=[Io.File]::ReadAllText("C:\Users\TestUser\.ssh\id_rsa.pub")
Import-EC2KeyPair `
    -KeyName my-key-pair `
    -PublicKey $publickey
```

**Pour vérifier que la paire de clés a été importée correctement**  
Utilisez l’applet de commande [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2KeyPair.html).

```
Get-EC2KeyPair -KeyName my-key-pair
```

------