

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.

# NitroTPM pour les instances Amazon EC2
<a name="nitrotpm"></a>

Nitro Trusted Platform Module (NitroTPM) est un périphérique virtuel fourni par l’[AWS  Nitro System](https://aws.amazon.com//ec2/nitro/) et est conforme aux [spécifications TPM 2.0](https://trustedcomputinggroup.org/resource/trusted-platform-module-2-0-a-brief-introduction/). Il stocke en toute sécurité les artefacts (tels que les mots de passe, les certificats ou les clés de chiffrement) utilisés pour authentifier l’instance. NitroTPM peut générer des clés et les utiliser pour des fonctions cryptographiques (telles que le hachage, la signature, le chiffrement et le déchiffrement).

NitroTPM fournit un *démarrage mesuré*, un processus par lequel le chargeur de démarrage et le système d'exploitation créent des hachages cryptographiques de chaque binaire de démarrage et les combinent avec les valeurs précédentes dans les registres de configuration de plate-forme internes de NitroTPM (). PCRs Avec le démarrage mesuré, vous pouvez obtenir des valeurs PCR signées de NitroTPM et les utiliser pour prouver aux entités distantes l’intégrité du logiciel de démarrage de l’instance. Cela porte le nom d’*attestation* distante.

Avec NitroTPM, les clés et les secrets peuvent être étiquetés avec une valeur PCR spécifique ; ce faisant, leur accès est interdit en cas de modification de la valeur de la PCR, et donc de l’intégrité de l’instance. Cette forme spéciale d’accès conditionnel est appelée *scellement et descellement*. Les technologies des systèmes d'exploitation [BitLocker](https://learn.microsoft.com/en-us/windows/security/operating-system-security/data-protection/bitlocker/), telles que NitroTPM, peuvent utiliser NitroTPM pour sceller une clé de déchiffrement du lecteur afin que le lecteur ne puisse être déchiffré que lorsque le système d'exploitation a démarré correctement et est dans un état connu comme bon.

Pour utiliser NitroTPM, vous devez sélectionner une [Amazon Machine Image](AMIs.md) (AMI) qui a été configurée pour être prise en charge par NitroTPM. Vous devez ensuite utiliser l’AMI pour lancer une [instance basée sur Nitro](instance-types.md#instance-hypervisor-type). Vous pouvez sélectionner l'un des modèles prédéfinis d'Amazon AMIs ou en créer un vous-même.

**Tarification**  
L’utilisation de NitroTPM n’entraîne aucun coût supplémentaire. Vous payez uniquement les ressources sous-jacentes que vous utilisez.

**Topics**
+ [Exigences](enable-nitrotpm-prerequisites.md)
+ [Activation d'une AMI Linux pour NitroTPM](enable-nitrotpm-support-on-ami.md)
+ [Vérifier qu'une AMI est activée pour NitroTPM](verify-nitrotpm-support-on-ami.md)
+ [Activer ou arrêter l'utilisation de NitroTPM](nitrotpm-instance.md)
+ [Vérifier qu'une instance est activée pour NitroTPM](verify-nitrotpm-support-on-instance.md)
+ [Extraire la clé d'approbation publique](retrieve-ekpub.md)

# Conditions d'utilisation de NitroTPM avec des instances Amazon EC2
<a name="enable-nitrotpm-prerequisites"></a>

Pour lancer une instance avec NitroTPM activé, vous devez remplir les conditions requises suivantes.

**Topics**
+ [AMIs](#nitrotpm-ami)
+ [Types d’instances](#nitrotpm-instancetypes)
+ [Considérations](#nitrotpm-considerations)

## AMIs
<a name="nitrotpm-ami"></a>

NitroTPM doit être activé sur l'AMI.

**Linux AMIs**  
Il n'y a aucun préconfiguré AMIs. Vous devez configurer votre propre AMI. Pour de plus amples informations, veuillez consulter [Activation d'une AMI Linux pour NitroTPM](enable-nitrotpm-support-on-ami.md).

**Fenêtres AMIs**  
*Pour trouver une AMI AWS Windows préconfigurée pour NitroTPM et UEFI Secure Boot avec des clés Microsoft, voir [Rechercher un serveur Windows AMIs configuré avec NitroTPM et UEFI Secure Boot dans le manuel](https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ami-windows-tpm.html#ami-windows-tpm-find) Windows Reference.AWS AMIs *

**Note**  
**Système d'exploitation** — L'IAM doit inclure un système d'exploitation doté d'un pilote TPM 2.0 Command Response Buffer (CRB). La plupart des systèmes d'exploitation actuels incluent un pilote CRB TPM 2.0.  
**Mode de démarrage UEFI** : l'AMI doit être configurée pour le mode de démarrage UEFI. Pour de plus amples informations, veuillez consulter [Démarrage sécurisé de l’UEFI pour les instances Amazon EC2](uefi-secure-boot.md).

## Types d’instances
<a name="nitrotpm-instancetypes"></a>

Vous devez utiliser l'un des types d'instances virtualisées suivants :
+ **Usage général** : M5, M5a, M5ad, M5d, M5dn, M5n, M5zn, M6a, M6g, M6gd, M6i, M6id, M6idn, M6in, M7a, M7g, M7GD, M7i, M8aZN, M8aZN, M8g, M8g, M88G, M8Go, M8GD, M8GN, M8i, M8iD, M8i-Flex, T3, T3a, T4g
+ **Optimisé pour le calcul** : C5, C5a, C5d, C5n, C6a, C6g, C6gd, C6gn, C6i, C6id, C6in, C7a, C7g, C7gd, C7gn, C7i, C7i-Flex, C8a, C8g, C8gb, C8gD, C8gn, C8i, C8iB, C8iD, C8in, C8i-Flex
+ **Mémoire optimisée** : R5, R5a, R5ad, R5b, R5d, R5dn, R5n, R6a, R6g, R6gd, R6i, R6id, R6idn, R6in, R7a, R7g, R7gd, R7i, R8a, R8g, R8Gb, R8Gd, R8GN, R8i, R8id, R8i-Flex, U7i-6TB, U7i-8TB, U7i-12TB, U7in-16TB, U7in-24TB, U7in-32TB, X2IDn, X2iEDN, X2ieZN, X8aedz, X8i, z1d
+ **Optimisées pour le stockage :** D3, D3en, I3en, I4i, I7i, I7ie, I8g, I8ge, Im4gn
+ **Calcul accéléré** : F2, G4dn, G5, G6, G6e, G6f, Gr6, Gr6f, G7e, Inf1, Inf2, P5, P5e, P5en, P6-B200, P6-B300, Trn2, Trn2u
+ **Calcul à hautes performances** : HPC6a, HPC6id, HPC8a

## Considérations
<a name="nitrotpm-considerations"></a>

Les considérations suivantes s’appliquent lorsque vous utilisez NitroTPM :
+ Après avoir lancé une instance à l'aide d'une AMI avec NitroTPM activé, si vous souhaitez modifier le type d'instance, le nouveau type d'instance que vous choisissez doit également prendre en charge NitroTPM.
+ BitLocker les volumes chiffrés avec des clés basées sur NitroTPM ne peuvent être utilisés que sur l'instance d'origine.
+ L'état NitroTPM n'est pas affiché sur la console Amazon EC2.
+ L’état NitroTPM n’est pas inclus dans les [instantanés Amazon EBS](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-snapshots.html).
+ L’état NitroTPM n’est pas inclus dans les images [VM Import/Export](https://docs.aws.amazon.com/vm-import/latest/userguide/).
+ NitroTPM n'est pas pris en charge sur AWS Outposts., Local Zones ou Wavelength Zones.

# Activation d'une AMI Linux pour NitroTPM
<a name="enable-nitrotpm-support-on-ami"></a>

Pour activer NitroTPM pour une instance, vous devez lancer l'instance à l'aide d'une AMI avec NitroTPM activé. Vous devez configurer votre AMI Linux avec la prise en charge de NitroTPM lorsque vous l'enregistrez. Vous ne pouvez pas configurer la prise en charge de NitroTPM ultérieurement.

Pour obtenir la liste des Windows AMIs préconfigurés pour la prise en charge de NitroTPM, consultez. [Conditions d'utilisation de NitroTPM avec des instances Amazon EC2](enable-nitrotpm-prerequisites.md)

Vous devez créer une AMI avec NitroTPM configuré à l'aide de l'[RegisterImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RegisterImage.html)API. Vous ne pouvez pas utiliser la console Amazon EC2 ou VM Import/Export.

**Activation d'une AMI Linux pour NitroTPM**

1. Lancez une instance temporaire avec l'AMI Linux requise. Notez l'ID de son volume racine, que vous pouvez trouver dans la console sous l'onglet **Stockage** de l'instance.

1. Une fois que l'instance atteint `running` cet état, créez un instantané du volume racine de l'instance. Pour plus d’informations, consultez la section [Création d’un instantané d’un volume EBS](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-create-snapshot.html).

1. Enregistrez le snapshot que vous avez créé en tant qu'AMI. Dans le mappage des périphériques en mode bloc, spécifiez le cliché que vous avez créé pour le volume racine.

   Voici un exemple de commande [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html). Pour `--tpm-support`, spécifiez `v2.0`. Pour `--boot-mode`, spécifiez `uefi`. 

   ```
   aws ec2 register-image \
       --name my-image \
       --boot-mode uefi \
       --architecture x86_64 \
       --root-device-name /dev/xvda \
       --block-device-mappings DeviceName=/dev/xvda,Ebs={SnapshotId=snap-0abcdef1234567890} \
       --tpm-support v2.0
   ```

   Voici un exemple d'[Register-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html)applet de commande.

   ```
   $block = @{SnapshotId=snap-0abcdef1234567890}
   Register-EC2Image `
       -Name my-image `
       -Architecture "x86_64" `
       -RootDeviceName /dev/xvda `
       -BlockDeviceMapping @{DeviceName="/dev/xvda";Ebs=$block} `
       -BootMode Uefi `
       -TpmSupport V20
   ```

1. Arrêter l'instance temporaire que vous avez lancée à l'étape 1.

# Vérifier qu'une AMI est activée pour NitroTPM
<a name="verify-nitrotpm-support-on-ami"></a>

Pour activer NitroTPM pour une instance, vous devez lancer l'instance à l'aide d'une AMI avec NitroTPM activé. Vous pouvez décrire une image pour vérifier qu’elle est activée pour NitroTPM. Si vous êtes le propriétaire de l’AMI, vous pouvez décrire l’attribut d’image `tpmSupport`.

La console Amazon EC2 n’affiche pas `TpmSupport`.

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

**Pour vérifier que NitroTPM est activé**  
Utilisez la commande [describe-images](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html).

```
aws ec2 describe-images \
    --image-ids ami-0abcdef1234567890 \
    --query Images[*].TpmSupport
```

Si NitroTPM est activé pour l'AMI, la sortie se présente comme suit. Si le TPM n'est pas activé, la sortie est vide.

```
[
    "v2.0"
]
```

Si vous êtes le propriétaire de l'AMI, vous pouvez également utiliser la [describe-image-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-image-attribute.html)commande avec l'`tpmSupport`attribut.

```
aws ec2 describe-image-attribute \
    --image-id ami-0abcdef1234567890 \
    --attribute tpmSupport
```

 Voici un exemple de sortie.

```
{
    "ImageId": "ami-0abcdef1234567890",
    "TpmSupport": {
        "Value": "v2.0"
    }
}
```

**Pour effectuer une recherche AMIs avec NitroTPM activé**  
L'exemple suivant répertorie ceux IDs AMIs que vous possédez avec NitroTPM activé.

```
aws ec2 describe-images \
    --owners self \
    --filters Name=tpm-support,Values=v2.0 \
    --query Images[].ImageId
```

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

**Pour vérifier que NitroTPM est activé**  
Utilisez l’applet de commande [Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html).

```
Get-EC2Image `
    -ImageId ami-0abcdef1234567890 | Select TpmSupport
```

Si NitroTPM est activé pour l'AMI, la sortie se présente comme suit. Si le TPM n'est pas activé, la sortie est vide.

```
TpmSupport
----------
v2.0
```

Si vous êtes le propriétaire de l'AMI, vous pouvez également utiliser l'[Get-EC2ImageAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2ImageAttribute.html)applet de commande avec l'`tpmSupport`attribut.

```
Get-EC2ImageAttribute `
    -ImageId ami-0abcdef1234567890 `
    -Attribute tpmSupport
```

**Pour effectuer une recherche AMIs avec NitroTPM activé**  
L'exemple suivant répertorie ceux IDs AMIs que vous possédez avec NitroTPM activé.

```
Get-EC2Image `
    -Owner self `
    -Filter @{Name="tpm-support; Values="v2.0"} | Select ImageId
```

------

# Activer ou arrêter l'utilisation de NitroTPM sur une instance Amazon EC2
<a name="nitrotpm-instance"></a>

Vous ne pouvez activer une instance Amazon EC2 pour NitroTPM qu'au moment du lancement. Une fois qu'une instance est activée pour NitroTPM, vous ne pouvez pas la désactiver. Si vous n'avez plus besoin d'utiliser NitroTPM, vous devez configurer le système d'exploitation pour qu'il cesse de l'utiliser.

**Topics**
+ [Lancer une instance pour laquelle NitroTPM est activé](#launch-instance-with-nitrotpm)
+ [Arrêter l’utilisation de NitroTPM sur une instance](#disable-nitrotpm-support-on-instance)

## Lancer une instance pour laquelle NitroTPM est activé
<a name="launch-instance-with-nitrotpm"></a>

Lorsque vous lancez une instance selon les [prérequis](enable-nitrotpm-prerequisites.md), NitroTPM est automatiquement activé sur l’instance. Vous ne pouvez activer NitroTPM sur une instance qu'au moment du lancement. Pour plus d’informations sur le lancement d’une instance, consultez [Lancement d’une instance Amazon EC2](LaunchingAndUsingInstances.md).

## Arrêter l’utilisation de NitroTPM sur une instance
<a name="disable-nitrotpm-support-on-instance"></a>

Après avoir lancé une instance avec NitroTPM activé, vous ne pouvez pas désactiver NitroTPM pour l'instance. Toutefois, vous pouvez configurer le système d’exploitation pour qu’il cesse d’utiliser NitroTPM en désactivant le pilote de périphérique TPM 2.0 sur l’instance à l’aide des outils suivants :
+ Pour les **instances Linux**, utilisez tpm-tools.
+ Pour les **instances Windows**, utilisez la console de gestion TPM (tpm.msc).

Pour plus d’informations sur la désactivation du pilote de périphérique, consultez la documentation de votre système d’exploitation.

# Vérifiez qu'une instance Amazon EC2 est activée pour NitroTPM
<a name="verify-nitrotpm-support-on-instance"></a>

Vous pouvez vérifier si une instance Amazon EC2 est activée pour NitroTPM. Si le support NitroTPM est activé sur l’instance, la commande renvoie `"v2.0"`. Dans le cas contraire, le champ `TpmSupport` n’est pas présent dans la sortie.

La console Amazon EC2 n'affiche pas le champ `TpmSupport`.

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

**Pour vérifier si une instance est activée pour NitroTPM**  
Utilisez la commande [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html).

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query Reservations[].Instances[].TpmSupport
```

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

**Pour vérifier si une instance est activée pour NitroTPM**  
Utilisez l’applet de commande [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.TpmSupport
```

------

## Vérification de l’accès à NitroTPM sur votre instance Windows
<a name="verify-nitrotpm-support-windows-instance"></a>

**(Instances Windows uniquement) Pour vérifier si le NitroTPM est accessible à Windows**

1. [Connectez-vous à votre instance EC2 Windows.](connecting_to_windows_instance.md)

1. Sur l’instance, exécutez le programme tpm.msc.

   La fenêtre **TPM Management on Local Computer** (Gestion TPM sur un ordinateur local) s’ouvre.

1. Vérifiez le champ **TPM Manufacturer Information** (Informations sur le fabricant TPM). Il contient le nom du fabricant et la version du NitroTPM sur l’instance.  
![\[La fenêtre TPM Management on Local Computer (Gestion TPM sur un ordinateur local) et le champ TPM Manufacturer Information (Informations sur le fabricant TPM) affichant la version du NitroTPM sur l’instance.\]](http://docs.aws.amazon.com/fr_fr/AWSEC2/latest/UserGuide/images/tpm-1.png)

# Extraction de la clé d’approbation publique pour une instance EC2
<a name="retrieve-ekpub"></a>

Vous pouvez extraire en toute sécurité la clé d’approbation publique d’une instance à tout moment.

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

**Pour récupérer la clé d'approbation publique pour une instance**  
Utilisez la commande [get-instance-tpm-ek-pub](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-instance-tpm-ek-pub.html).

**Exemple 1**  
L’exemple de commande suivant récupère la clé d’approbation publique `rsa-2048` au format `tpmt` pour l’instance spécifiée.

```
aws ec2 get-instance-tpm-ek-pub \
    --instance-id i-1234567890abcdef0 \
    --key-format tpmt \ 
    --key-type rsa-2048
```

Voici un exemple de sortie.

```
{
    "InstanceId": "i-01234567890abcdef",
    "KeyFormat": "tpmt",
    "KeyType": "rsa-2048",
    "KeyValue": "AAEACwADALIAIINxl2dEhLEXAMPLEUal1yT9UtduBlILZPKh2hszFGmqAAYAgABDA
    EXAMPLEAAABAOiRd7WmgtdGNoV1h/AxmW+CXExblG8pEUfNm0LOLiYnEXAMPLERqApiFa/UhvEYqN4
    Z7jKMD/usbhsQaAB1gKA5RmzuhSazHQkax7EXAMPLEzDthlS7HNGuYn5eG7qnJndRcakS+iNxT8Hvf
    0S1ZtNuItMs+Yp4SO6aU28MT/JZkOKsXIdMerY3GdWbNQz9AvYbMEXAMPLEPyHfzgVO0QTTJVGdDxh
    vxtXCOu9GYf0crbjEXAMPLEd4YTbWdDdgOKWF9fjzDytJSDhrLAOUctNzHPCd/92l5zEXAMPLEOIFA
    Ss50C0/802c17W2pMSVHvCCa9lYCiAfxH/vYKovAAE="
}
```

**Exemple 2**  
L’exemple de commande suivant récupère la clé d’approbation publique `rsa-2048` au format `der` pour l’instance spécifiée.

```
aws ec2 get-instance-tpm-ek-pub \
    --instance-id i-1234567890abcdef0 \
    --key-format der \ 
    --key-type rsa-2048
```

Voici un exemple de sortie.

```
{
    "InstanceId": "i-1234567890abcdef0",
    "KeyFormat": "der",
    "KeyType": "rsa-2048",
    "KeyValue": "MIIBIjANBgEXAMPLEw0BAQEFAAOCAQ8AMIIBCgKCAQEA6JF3taEXAMPLEXWH8DGZb4
    JcTFuUbykRR82bQs4uJifaKSOv5NGoEXAMPLEG8Rio3hnuMowP+6xuGxBoAHWAoDlGbO6FJrMdEXAMP
    LEnYUHvMO2GVLsc0a5ifl4buqcmd1FxqRL6I3FPwe9/REXAMPLE0yz5inhI7ppTbwxP8lmQ4qxch0x6
    tjcZ1Zs1DP0EXAMPLERUYLQ/Id/OBU7RBNMlUZ0PGG/G1cI670Zh/RytuOdx9iEXAMPLEtZ0N2A4pYX
    1+PMPK0lIOGssA5Ry03Mc8J3/3aXnOD2/ASRQ4gUBKznQLT/zTZEXAMPLEJUe8IJr2VgKIB/Ef+9gqi
    8AAQIDAQAB"
}
```

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

**Pour récupérer la clé d'approbation publique pour une instance**  
Utilisez l’applet de commande [Get-EC2InstanceTpmEkPub](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceTpmEkPub.html).

**Exemple 1**  
L’exemple de commande suivant récupère la clé d’approbation publique `rsa-2048` au format `tpmt` pour l’instance spécifiée.

```
Get-EC2InstanceTpmEkPub `
    -InstanceId i-1234567890abcdef0 `
    -KeyFormat tpmt `
    -KeyType rsa-2048
```

**Exemple 2**  
L’exemple de commande suivant récupère la clé d’approbation publique `rsa-2048` au format `der` pour l’instance spécifiée.

```
Get-EC2InstanceTpmEkPub `
    -InstanceId i-1234567890abcdef0 `
    -KeyFormat der `
    -KeyType rsa-2048
```

------