

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.

# AWS CloudHSM Déchargement SSL/TLS sous Windows à l'aide d'IIS avec KSP
<a name="ssl-offload-windows"></a>

Ce didacticiel fournit des step-by-step instructions pour configurer le SSL/TLS déchargement avec AWS CloudHSM sur un serveur Web Windows.

**Topics**
+ [Présentation de](#ssl-offload-windows-overview)
+ [Étape 1 : Configurer les prérequis](#ssl-offload-prerequisites-windows)
+ [Étape 2 : Créer une demande de signature de certificat (CSR) et un certificat](#ssl-offload-windows-create-csr-and-certificate)
+ [Étape 3 : Configurer le serveur web](#ssl-offload-configure-web-server-windows)
+ [Étape 4 : Activer le trafic HTTPS et vérifier le certificat](#ssl-offload-enable-traffic-and-verify-certificate-windows)

## Présentation de
<a name="ssl-offload-windows-overview"></a>

Sous Windows, l'application serveur web [Internet Information Services (IIS) pour Windows Server](https://www.iis.net/) prend en charge HTTPS en mode natif. Le [fournisseur de stockage de AWS CloudHSM clés (KSP) pour l'API cryptographique : Next Generation (CNG) de Microsoft](ksp-library.md) fournit l'interface qui permet à IIS d'utiliser le contenu de votre cluster pour le HSMs déchargement cryptographique et le stockage de clés. Le AWS CloudHSM KSP est le pont qui connecte IIS à votre AWS CloudHSM cluster.

Ce didacticiel vous montre comment effectuer les opérations suivantes :
+ Installez le logiciel du serveur web sur une instance Amazon EC2.
+ Configurez le logiciel du serveur Web pour qu'il prenne en charge le protocole HTTPS avec une clé privée stockée dans votre cluster AWS CloudHSM .
+ (Facultatif) Utilisez Amazon EC2 pour créer une deuxième instance de serveur Web et Elastic Load Balancing pour créer un équilibreur de charge. L'utilisation d'un équilibreur de charge peut accroître les performances en répartissant la charge sur plusieurs serveurs. Elle peut également assurer la redondance et une meilleure disponibilité en cas de défaillance d'un ou plusieurs serveurs.

Lorsque vous êtes prêt à commencer, consultez [Étape 1 : Configurer les prérequis](#ssl-offload-prerequisites-windows).

## Étape 1 : Configurer les prérequis
<a name="ssl-offload-prerequisites-windows"></a>

Les différentes plateformes ont des prérequis différents. Utilisez la section des prérequis ci-dessous qui correspond à votre plateforme.

**Topics**
+ [Prérequis pour le SDK client 5](#ssl-offload-prerequisites-windows-sdk5)
+ [Prérequis pour le SDK client 3](#ssl-offload-prerequisites-windows-sdk3)

### Prérequis pour le SDK client 5
<a name="ssl-offload-prerequisites-windows-sdk5"></a>

Pour configurer le SSL/TLS déchargement du serveur Web avec AWS CloudHSM, vous avez besoin des éléments suivants :
+ Un AWS CloudHSM cluster actif avec au moins un HSM.
+ Une instance Amazon EC2 exécutant un système d'exploitation Windows avec les logiciels suivants installés :
  + Le logiciel AWS CloudHSM client pour Windows.
  + Internet Information Services (IIS) pour Windows Server.
+ Un [utilisateur de chiffrement](understanding-users.md#crypto-user-chsm-cli) (CU) propriétaire et gestionnaire de la clé privée du serveur web sur le HSM.

**Note**  
Ce didacticiel utilise Microsoft Windows Server 2019. Microsoft Windows Server 2016 et 2022 sont également pris en charge.

**Pour configurer une instance Windows Server et créer un utilisateur de chiffrement sur le HSM**

1. Suivez les étapes de [Prise en main](getting-started.md). Lorsque vous lancez le client Amazon EC2, choisissez une AMI Windows Server 2019. Une fois que vous avez terminé ces étapes, vous disposez d'un cluster actif avec au moins un HSM. Vous disposez également d'une instance client Amazon EC2 exécutant Windows Server sur laquelle le logiciel AWS CloudHSM client pour Windows est installé.

1. (Facultatif) Ajoutez-en HSMs d'autres à votre cluster. Pour de plus amples informations, veuillez consulter [Ajouter un HSM à un cluster AWS CloudHSM](add-hsm.md).

1. Connectez-vous à votre serveur Windows. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Utilisez la CLI CloudHSM pour créer un utilisateur de chiffrement (CU). Conservez le nom d'utilisateur et le mot de passe du CU. Vous en aurez besoin pour terminer l'étape suivante. 
**Note**  
Pour plus d'informations sur la création d'un utilisateur, consultez [Gestion des utilisateurs HSM avec la CLI CloudHSM](manage-hsm-users-chsm-cli.md).

1. [Définissez les informations d'identification de connexion pour le HSM](ksp-library-authentication.md), à l'aide du nom d'utilisateur et du mot de passe CU que vous avez créés à l'étape précédente.

1. À l'étape 5, si vous avez utilisé le Gestionnaire d'informations d'identification Windows pour définir les informations d'identification HSM, téléchargez [https://live.sysinternals.com/psexec.exe](https://live.sysinternals.com/psexec.exe)depuis SysInternals pour exécuter la commande suivante sous le nom *NT Authority \\ SYSTEM* :

   ```
   psexec.exe -s "C:\Program Files\Amazon\CloudHsm\tools\set_cloudhsm_credentials.exe" --username {{<USERNAME>}} --password {{<PASSWORD>}}
   ```

   Remplacez {{<USERNAME>}} et par {{<PASSWORD>}} les informations d'identification HSM.

**Pour installer IIS sur Windows Server**

1. Si ce n'est pas déjà fait, connectez-vous à votre serveur Windows Server. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Sur votre serveur Windows Server, démarrez le **Server Manager (Gestionnaire de serveurs)**.

1. Dans le tableau de bord du **Server Manager (Gestionnaire de serveurs)**, choisissez **Add roles and features (Ajouter des rôles et des fonctions)**.

1. Prenez connaissances des informations contenues dans le fichier **Before you begin (Avant de commencer)**, puis choisissez **Next (Suivant)**.

1. Pour **Installation Type (Type d'installation)**, choisissez **Role-based or feature-based installation (Installation basée sur un rôle ou une fonction)**. Ensuite, sélectionnez **Suivant**.

1. Pour **Server Selection (Sélection de serveur)**, choisissez **Select a server from the server pool (Sélectionner un serveur du pool de serveurs)**. Ensuite, sélectionnez **Suivant**.

1. Pour **Server Roles (Rôles de serveur)**, procédez comme suit :

   1. Sélectionnez **Web Server (IIS)**.

   1. Pour **Add features that are required for Web Server (IIS) (Ajouter des fonctions qui sont requises pour le serveur Web (IIS))**, choisissez **Add Features (Ajouter des fonctions)**.

   1. Choisissez **Suivant** pour finaliser la sélection de rôles de serveur.

1. Pour **Features (Fonctions)**, acceptez les valeurs par défaut. Ensuite, sélectionnez **Suivant**.

1. Lisez les informations **Web Server Role (IIS) (Rôle du serveur Web (IIS))**. Ensuite, sélectionnez **Suivant**.

1. Pour **Select role services (Sélectionner les services de rôle)**, acceptez les valeurs par défaut ou modifiez les paramètres comme souhaité. Ensuite, sélectionnez **Suivant**.

1. Pour **Confirmation**, lisez les informations de confirmation. Choisissez ensuite **Install (Installer)**.

1. Une fois l'installation terminée, choisissez **Close (Fermer)**.

Une fois que vous avez terminé ces étapes, consultez [Étape 2 : Créer une demande de signature de certificat (CSR) et un certificat](#ssl-offload-windows-create-csr-and-certificate).

### Prérequis pour le SDK client 3
<a name="ssl-offload-prerequisites-windows-sdk3"></a>

Pour configurer le SSL/TLS déchargement du serveur Web avec AWS CloudHSM, vous avez besoin des éléments suivants :
+ Un AWS CloudHSM cluster actif avec au moins un HSM.
+ Une instance Amazon EC2 exécutant un système d'exploitation Windows avec les logiciels suivants installés :
  + Le logiciel AWS CloudHSM client pour Windows.
  + Internet Information Services (IIS) pour Windows Server.
+ Un [utilisateur de chiffrement](understanding-users.md#crypto-user-chsm-cli) (CU) propriétaire et gestionnaire de la clé privée du serveur web sur le HSM.

**Note**  
Ce didacticiel utilise Microsoft Windows Server 2016. Microsoft Windows Server 2012 est également pris en charge, mais Microsoft Windows Server 2012 R2 ne l'est pas.

**Pour configurer une instance Windows Server et créer un utilisateur de chiffrement sur le HSM**

1. Suivez les étapes de [Prise en main](getting-started.md). Lorsque vous lancez le client Amazon EC2, choisissez une AMI Windows Server 2016 ou Windows Server 2012. Une fois que vous avez terminé ces étapes, vous disposez d'un cluster actif avec au moins un HSM. Vous disposez également d'une instance client Amazon EC2 exécutant Windows Server sur laquelle le logiciel AWS CloudHSM client pour Windows est installé.

1. (Facultatif) Ajoutez-en HSMs d'autres à votre cluster. Pour de plus amples informations, veuillez consulter [Ajouter un HSM à un cluster AWS CloudHSM](add-hsm.md).

1. Connectez-vous à votre serveur Windows. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Utilisez la CLI CloudHSM pour créer un utilisateur de chiffrement (CU). Conservez le nom d'utilisateur et le mot de passe du CU. Vous en aurez besoin pour terminer l'étape suivante. 
**Note**  
Pour plus d'informations sur la création d'un utilisateur, consultez [Gestion des utilisateurs HSM avec la CLI CloudHSM](manage-hsm-users-chsm-cli.md).

1. [Définissez les informations d'identification de connexion pour le HSM](ksp-library-prereq.md), à l'aide du nom d'utilisateur et du mot de passe CU que vous avez créés à l'étape précédente.

1. À l'étape 5, si vous avez utilisé le Gestionnaire d'informations d'identification Windows pour définir les informations d'identification HSM, téléchargez [https://live.sysinternals.com/psexec.exe](https://live.sysinternals.com/psexec.exe)depuis SysInternals pour exécuter la commande suivante sous le nom *NT Authority \\ SYSTEM* :

   ```
   psexec.exe -s "C:\Program Files\Amazon\CloudHsm\tools\set_cloudhsm_credentials.exe" --username {{<USERNAME>}} --password {{<PASSWORD>}}
   ```

   Remplacez {{<USERNAME>}} et par {{<PASSWORD>}} les informations d'identification HSM.

**Pour installer IIS sur Windows Server**

1. Si ce n'est pas déjà fait, connectez-vous à votre serveur Windows Server. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Sur votre serveur Windows Server, démarrez le **Server Manager (Gestionnaire de serveurs)**.

1. Dans le tableau de bord du **Server Manager (Gestionnaire de serveurs)**, choisissez **Add roles and features (Ajouter des rôles et des fonctions)**.

1. Prenez connaissances des informations contenues dans le fichier **Before you begin (Avant de commencer)**, puis choisissez **Next (Suivant)**.

1. Pour **Installation Type (Type d'installation)**, choisissez **Role-based or feature-based installation (Installation basée sur un rôle ou une fonction)**. Ensuite, sélectionnez **Suivant**.

1. Pour **Server Selection (Sélection de serveur)**, choisissez **Select a server from the server pool (Sélectionner un serveur du pool de serveurs)**. Ensuite, sélectionnez **Suivant**.

1. Pour **Server Roles (Rôles de serveur)**, procédez comme suit :

   1. Sélectionnez **Web Server (IIS)**.

   1. Pour **Add features that are required for Web Server (IIS) (Ajouter des fonctions qui sont requises pour le serveur Web (IIS))**, choisissez **Add Features (Ajouter des fonctions)**.

   1. Choisissez **Suivant** pour finaliser la sélection de rôles de serveur.

1. Pour **Features (Fonctions)**, acceptez les valeurs par défaut. Ensuite, sélectionnez **Suivant**.

1. Lisez les informations **Web Server Role (IIS) (Rôle du serveur Web (IIS))**. Ensuite, sélectionnez **Suivant**.

1. Pour **Select role services (Sélectionner les services de rôle)**, acceptez les valeurs par défaut ou modifiez les paramètres comme souhaité. Ensuite, sélectionnez **Suivant**.

1. Pour **Confirmation**, lisez les informations de confirmation. Choisissez ensuite **Install (Installer)**.

1. Une fois l'installation terminée, choisissez **Close (Fermer)**.

Une fois que vous avez terminé ces étapes, consultez [Étape 2 : Créer une demande de signature de certificat (CSR) et un certificat](#ssl-offload-windows-create-csr-and-certificate).

## Étape 2 : Créer une demande de signature de certificat (CSR) et un certificat
<a name="ssl-offload-windows-create-csr-and-certificate"></a>

Pour activer le protocole HTTPS, votre serveur Web a besoin d'un SSL/TLS certificat et d'une clé privée correspondante. Pour utiliser le SSL/TLS déchargement avec AWS CloudHSM, vous devez stocker la clé privée dans le HSM de votre AWS CloudHSM cluster. Pour ce faire, vous utilisez le [fournisseur de stockage de clés (KSP)AWS CloudHSM pour l'API Cryptography : Next Generation (CNG) de Microsoft](ksp-v3-library.md) afin de créer une demande de signature de certificat (CSR). Ensuite, vous accordez la CSR à une autorité de certification (CA), qui signe la CSR pour produire un certificat.

**Topics**
+ [Création d'un CSR avec le SDK client 5](#ssl-offload-windows-create-csr-new-version)
+ [Création d'un CSR avec le SDK client 3](#ssl-offload-windows-create-csr-old-version)
+ [Obtention et importation d'un certificat signé](#ssl-offload-windows-create-certificate)

### Création d'un CSR avec le SDK client 5
<a name="ssl-offload-windows-create-csr-new-version"></a>

1. Sur votre Windows Server, utilisez un éditeur de texte pour créer un fichier de demande de certificat nommé `IISCertRequest.inf`. L'exemple suivant montre le contenu d'un exemple de fichier `IISCertRequest.inf`. Pour plus d'informations sur les sections, les clés et les valeurs que vous pouvez spécifier dans le fichier, consultez la [documentation Microsoft](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1#BKMK_New). Ne modifiez pas la valeur `ProviderName`.

   ```
   [Version]
   Signature = "$Windows NT$"
   [NewRequest]
   Subject = "CN=example.com,C=US,ST=Washington,L=Seattle,O=ExampleOrg,OU=WebServer"
   HashAlgorithm = SHA256
   KeyAlgorithm = RSA
   KeyLength = 2048
   ProviderName = "CloudHSM Key Storage Provider"
   KeyUsage = 0xf0
   MachineKeySet = True
   [EnhancedKeyUsageExtension]
   OID=1.3.6.1.5.5.7.3.1
   ```

1. Utilisez la [**certreq**commande Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) pour créer un CSR à partir du `IISCertRequest.inf` fichier que vous avez créé à l'étape précédente. L'exemple suivant enregistre la CSR dans un fichier nommé `IISCertRequest.csr`. Si vous avez utilisé un nom de fichier différent pour votre fichier de demande de certificat, remplacez-le {{IISCertRequest.inf}} par le nom de fichier approprié. Vous pouvez éventuellement le {{IISCertRequest.csr}} remplacer par un autre nom de fichier pour votre fichier CSR.

   ```
   C:\>certreq -new {{IISCertRequest.inf}} {{IISCertRequest.csr}}
   
   CertReq: Request Created
   ```

   Le fichier `IISCertRequest.csr` contient votre CSR. Vous avez besoin de cette CSR pour obtenir un certificat signé.

### Création d'un CSR avec le SDK client 3
<a name="ssl-offload-windows-create-csr-old-version"></a>

1. Si ce n'est pas déjà fait, connectez-vous à votre serveur Windows Server. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Utilisez la commande suivante pour démarrer le daemon AWS CloudHSM client.

------
#### [ Amazon Linux ]

   ```
   $ sudo start cloudhsm-client
   ```

------
#### [ Amazon Linux 2 ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ CentOS 7 ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ CentOS 8 ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ RHEL 7 ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ RHEL 8 ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ Ubuntu 16.04 LTS ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ Ubuntu 18.04 LTS ]

   ```
   $ sudo service cloudhsm-client start
   ```

------
#### [ Windows ]
   + Pour le Client Windows version 1.1.2 et ultérieure :

     ```
     C:\Program Files\Amazon\CloudHSM>net.exe start AWSCloudHSMClient
     ```
   + Pour les clients Windows version 1.1.1 et antérieure :

     ```
     C:\Program Files\Amazon\CloudHSM>start "cloudhsm_client" cloudhsm_client.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
     ```

------

1. Sur votre Windows Server, utilisez un éditeur de texte pour créer un fichier de demande de certificat nommé `IISCertRequest.inf`. L'exemple suivant montre le contenu d'un exemple de fichier `IISCertRequest.inf`. Pour plus d'informations sur les sections, les clés et les valeurs que vous pouvez spécifier dans le fichier, consultez la [documentation Microsoft](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1#BKMK_New). Ne modifiez pas la valeur `ProviderName`.

   ```
   [Version]
   Signature = "$Windows NT$"
   [NewRequest]
   Subject = "CN=example.com,C=US,ST=Washington,L=Seattle,O=ExampleOrg,OU=WebServer"
   HashAlgorithm = SHA256
   KeyAlgorithm = RSA
   KeyLength = 2048
   ProviderName = "Cavium Key Storage Provider"
   KeyUsage = 0xf0
   MachineKeySet = True
   [EnhancedKeyUsageExtension]
   OID=1.3.6.1.5.5.7.3.1
   ```

1. Utilisez la [**certreq**commande Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) pour créer un CSR à partir du `IISCertRequest.inf` fichier que vous avez créé à l'étape précédente. L'exemple suivant enregistre la CSR dans un fichier nommé `IISCertRequest.csr`. Si vous avez utilisé un nom de fichier différent pour votre fichier de demande de certificat, remplacez-le {{IISCertRequest.inf}} par le nom de fichier approprié. Vous pouvez éventuellement le {{IISCertRequest.csr}} remplacer par un autre nom de fichier pour votre fichier CSR.

   ```
   C:\>certreq -new {{IISCertRequest.inf}} {{IISCertRequest.csr}}
           SDK Version: 2.03
   
   CertReq: Request Created
   ```

   Le fichier `IISCertRequest.csr` contient votre CSR. Vous avez besoin de cette CSR pour obtenir un certificat signé.

### Obtention et importation d'un certificat signé
<a name="ssl-offload-windows-create-certificate"></a>

Dans un environnement de production, vous utilisez généralement une autorité de certification (CA) pour créer un certificat émis par une demande de signature de certificat (CSR). L'autorité de certification n'est pas nécessaire pour un environnement de test. Si vous utilisez une autorité de certification, envoyez-lui le fichier CSR (`IISCertRequest.csr`) et utilisez-la pour créer un SSL/TLS certificat signé.

Au lieu d'utiliser une autorité de certification, vous pouvez utiliser un outil comme [OpenSSL](https://www.openssl.org/) pour créer un certificat auto-signé.

**Avertissement**  
Les certificats auto-signés ne sont pas approuvées par les navigateurs et ne doivent pas être utilisés dans les environnements de production. Ils peuvent cependant être utilisés dans les environnements de test.

Les procédures suivantes montrent comment créer un certificat auto-signé et l'utiliser pour signer la CSR de votre serveur web.

**Pour créer un certificat auto-signé**

1. Utilisez la commande OpenSSL suivante pour créer une clé privée. Vous pouvez éventuellement le {{SelfSignedCA.key}} remplacer par le nom du fichier contenant votre clé privée.

   ```
   openssl genrsa -aes256 -out {{SelfSignedCA.key}} 2048
   Generating RSA private key, 2048 bit long modulus
   ......................................................................+++
   .........................................+++
   e is 65537 (0x10001)
   Enter pass phrase for SelfSignedCA.key:
   Verifying - Enter pass phrase for SelfSignedCA.key:
   ```

1. Utilisez la commande OpenSSL suivante pour créer un certificat d'émission auto-signé avec la clé privée que vous avez créée à l'étape précédente. Il s'agit d'une commande interactive. Lisez les instructions à l'écran et suivez les invites. {{SelfSignedCA.key}}Remplacez-le par le nom du fichier contenant votre clé privée (s'il est différent). Vous pouvez éventuellement le {{SelfSignedCA.crt}} remplacer par le nom du fichier contenant votre certificat auto-signé.

   ```
   openssl req -new -x509 -days 365 -key {{SelfSignedCA.key}} -out {{SelfSignedCA.crt}}
   Enter pass phrase for SelfSignedCA.key:
   You are about to be asked to enter information that will be incorporated
   into your certificate request.
   What you are about to enter is what is called a Distinguished Name or a DN.
   There are quite a few fields but you can leave some blank
   For some fields there will be a default value,
   If you enter '.', the field will be left blank.
   -----
   Country Name (2 letter code) [AU]:
   State or Province Name (full name) [Some-State]:
   Locality Name (eg, city) []:
   Organization Name (eg, company) [Internet Widgits Pty Ltd]:
   Organizational Unit Name (eg, section) []:
   Common Name (e.g. server FQDN or YOUR name) []:
   Email Address []:
   ```

**Pour utiliser votre certificat auto-signé pour signer la CSR du serveur web**
+ Utilisez la commande OpenSSL suivante pour utiliser votre clé privée et le certificat auto-signé pour signer la CSR. Remplacez les éléments suivants par les noms des fichiers qui contiennent les données correspondantes (en cas de différence).
  + {{IISCertRequest.csr}}— Le nom du fichier contenant le CSR de votre serveur Web
  + {{SelfSignedCA.crt}}— Le nom du fichier contenant votre certificat auto-signé
  + {{SelfSignedCA.key}}— Le nom du fichier contenant votre clé privée
  + {{IISCert.crt}}— Le nom du fichier qui doit contenir le certificat signé de votre serveur Web

  ```
  openssl x509 -req -days 365 -in {{IISCertRequest.csr}} \
                              -CA {{SelfSignedCA.crt}} \
                              -CAkey {{SelfSignedCA.key}} \
                              -CAcreateserial \
                              -out {{IISCert.crt}}
  Signature ok
  subject=/ST=IIS-HSM/L=IIS-HSM/OU=IIS-HSM/O=IIS-HSM/CN=IIS-HSM/C=IIS-HSM
  Getting CA Private Key
  Enter pass phrase for SelfSignedCA.key:
  ```

Une fois que vous avez terminé l'étape précédente, vous avez un certificat signé pour votre serveur web (`IISCert.crt`) et un certificat auto-signé (`SelfSignedCA.crt`). Lorsque vous avez ces fichiers, accédez à [Étape 3 : Configurer le serveur web](#ssl-offload-configure-web-server-windows).

## Étape 3 : Configurer le serveur web
<a name="ssl-offload-configure-web-server-windows"></a>

Mettez à jour la configuration de votre site web IIS pour utiliser le certificat HTTPS que vous avez créé à la fin de l'[étape précédente](#ssl-offload-windows-create-csr-and-certificate). Cela terminera la configuration de votre logiciel de serveur Web Windows (IIS) pour le SSL/TLS déchargement avec AWS CloudHSM.

Si vous avez utilisé un certificat auto-signé pour signer votre CSR, vous devez d'abord importer le certificat auto-signé dans les autorités de certification racine approuvées Windows.

**Pour importer votre certificat auto-signé dans les autorités de certification racine approuvées Windows**

1. Si ce n'est pas déjà fait, connectez-vous à votre serveur Windows Server. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Copiez votre certificat auto-signé sur votre serveur Windows.

1. Sur votre serveur Windows, ouvrez le **Panneau de configuration**.

1. Pour **Search Control Panel (Recherche dans le panneau de configuration)**, tapez **certificates**. Ensuite, choisissez **Manage computer certificates (Gérer les certificats de l'ordinateur)**.

1. Dans la fenêtre **Certificats ‐ Ordinateur local**, double-cliquez sur **Autorités de certification racine fiables**.

1. Cliquez avec le bouton droit sur **Certificates (Certificats)**, puis choisissez **All Tasks (Toutes les tâches)**, **Import (Importer)**.

1. Dans l'assistant **Certificate Import (Importation de certificat)**, choisissez **Next (Suivant)**.

1. Choisissez **Browse (Parcourir)**, puis recherchez et sélectionnez votre certificat auto-signé. Si vous avez créé votre certificat auto-signé en suivant les instructions de l'[étape précédente de ce didacticiel](#ssl-offload-windows-create-csr-and-certificate), votre certificat auto-signé se nomme `SelfSignedCA.crt`. Choisissez **Ouvrir**.

1. Choisissez **Suivant**.

1. Pour **Certificate Store (Magasin de certificats)**, choisissez **Place all certificates in the following store (Placer tous les certificats dans les éléments suivants)**. Ensuite, vérifiez que **Trusted Root Certification Authorities (Autorités de certification racine approuvées)** est sélectionné pour **Certificate store (Magasin de certificats)**.

1. Cliquez sur **Suivant**, puis sur **Terminer**.

**Pour mettre à jour la configuration du site web IIS**

1. Si ce n'est pas déjà fait, connectez-vous à votre serveur Windows Server. Pour plus d'informations, consultez [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) dans le guide de l'*utilisateur Amazon EC2*.

1. Démarrez le daemon AWS CloudHSM client.

1. Copiez le certificat signé de votre serveur web, celui que vous avez créé à la fin de [l’étape précédente de ce didacticiel](#ssl-offload-windows-create-csr-and-certificate), sur votre serveur Windows.

1. Sur votre serveur Windows, utilisez la [**certreq**commande Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) pour accepter le certificat signé, comme dans l'exemple suivant. {{IISCert.crt}}Remplacez-le par le nom du fichier contenant le certificat signé de votre serveur Web.

   ```
   C:\>certreq -accept {{IISCert.crt}}
           SDK Version: 2.03
   ```

1. Sur votre serveur Windows Server, démarrez le **Server Manager (Gestionnaire de serveurs)**.

1. Dans le tableau de bord **Server Manager (Gestionnaire de serveurs)**, dans le coin supérieur droit, choisissez **Tools (Outils)**, **Internet Information Services (IIS) Manager**.

1. Dans la fenêtre **Internet Information Services (IIS) Manager**, double-cliquez sur le nom de votre serveur. Ensuite, double-cliquez sur **Sites**. Sélectionnez votre site web.

1. Sélectionnez **SSL Settings (Paramètres SSL)**. Puis, sur la droite de la fenêtre, choisissez **Bindings (Liaisons)**.

1. Dans la fenêtre **Site Bindings (Liaisons de site)**, choisissez **Add (Ajouter)**.

1. Pour **Type**, choisissez **https**. Pour **SSL certificate (Certificat SSL)**, choisissez le certificat HTTPS que vous avez créé à la fin de l'[étape précédente du didacticiel](#ssl-offload-windows-create-csr-and-certificate).
**Note**  
Si vous rencontrez une erreur au cours de cette liaison de certificat, redémarrez votre serveur et réessayez cette étape.

1. Choisissez **OK**.

Après que vous avez mis à jour la configuration de votre site web, accédez à [Étape 4 : Activer le trafic HTTPS et vérifier le certificat](#ssl-offload-enable-traffic-and-verify-certificate-windows).

## Étape 4 : Activer le trafic HTTPS et vérifier le certificat
<a name="ssl-offload-enable-traffic-and-verify-certificate-windows"></a>

Après avoir configuré votre serveur Web pour le SSL/TLS déchargement AWS CloudHSM, ajoutez votre instance de serveur Web à un groupe de sécurité qui autorise le trafic HTTPS entrant. Cela permet aux clients, tels que les navigateurs Web, d'établir une connexion HTTPS avec votre serveur Web. Établissez ensuite une connexion HTTPS avec votre serveur Web et vérifiez qu'il utilise le certificat que vous avez configuré pour le SSL/TLS déchargement. AWS CloudHSM

**Topics**
+ [Activation des connexions HTTPS entrantes](#ssl-offload-add-security-group-windows)
+ [Vérification que le protocole HTTPS utilise le certificat que vous avez configuré](#ssl-offload-verify-https-connection-windows)

### Activation des connexions HTTPS entrantes
<a name="ssl-offload-add-security-group-windows"></a>

Pour vous connecter à votre serveur web à partir d'un client (par exemple, un navigateur web), créez un groupe de sécurité qui autorise les connexions HTTPS entrantes. En particulier, il doit autoriser les connexions TCP entrantes sur le port 443. Affectez ce groupe de sécurité à votre serveur web. 

**Pour créer un groupe de sécurité pour le protocole HTTPS et l'affecter à votre serveur web**

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

1. Choisissez **Groupes de sécurité** dans le panneau de navigation.

1. Sélectionnez **Create security group** (Créer un groupe de sécurité).

1. Pour **Créer un groupe de sécurité**, procédez comme suit :

   1. Pour **Nom du groupe de sécurité**, tapez un nom pour le groupe de sécurité que vous créez.

   1. (Facultatif) Tapez une description du groupe de sécurité que vous créez.

   1. Pour **VPC**, choisissez le VPC qui contient votre instance de serveur web Amazon EC2.

   1. Sélectionnez **Ajouter une règle**.

   1. Pour **Type**, sélectionnez **HTTPS** dans la fenêtre déroulante.

   1. Pour **Source**, entrez l'emplacement de la source.

   1. Sélectionnez **Create security group** (Créer un groupe de sécurité).

1. Dans le panneau de navigation, choisissez **Instances**.

1. Cochez la case située en regard de votre instance de serveur web. 

1. Choisissez le menu déroulant **Actions** en haut de la page. Sélectionnez **Sécurité**, puis **Modifier les groupes de sécurité**.

1. Pour **Groupes de sécurité associés**, veuillez consulter la zone de recherche, puis choisissez le groupe de sécurité que vous avez créé pour HTTPS. Ensuite, choisissez **Ajouter des groupes de sécurité**.

1. Cliquez sur **Enregistrer**. 

### Vérification que le protocole HTTPS utilise le certificat que vous avez configuré
<a name="ssl-offload-verify-https-connection-windows"></a>

Après avoir ajouté le serveur Web à un groupe de sécurité, vous pouvez vérifier que le SSL/TLS déchargement utilise votre certificat auto-signé. Vous pouvez faire cela à l'aide d'un navigateur web ou avec un outil tel qu'[OpenSSL s\_client](https://www.openssl.org/docs/manmaster/man1/s_client.html).

**Pour vérifier le SSL/TLS déchargement à l'aide d'un navigateur Web**

1. Utilisez un navigateur web pour vous connecter à votre serveur web à l'aide du nom DNS public ou de l'adresse IP du serveur. Assurez-vous que l'URL dans la barre d'adresse commence par https://. Par exemple, **https://ec2-52-14-212-67.us-east-2.compute.amazonaws.com/**.
**Astuce**  
Vous pouvez utiliser un service DNS tel qu'Amazon Route 53 pour acheminer le nom de domaine de votre site Web (par exemple, https://www.example.com/) vers votre serveur Web. Pour plus d'informations, consultez [Routage du trafic vers une instance Amazon EC2](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-ec2-instance.html)* dans le Guide du Développeur Amazon Route 53* ou dans la documentation de votre service DNS.

1. Utilisez votre navigateur web pour afficher le certificat de serveur web. Pour plus d’informations, consultez les ressources suivantes :
   + Pour Mozilla Firefox, consultez [View a Certificate](https://support.mozilla.org/en-US/kb/secure-website-certificate#w_view-a-certificate) sur le site web de support Mozilla.
   + Pour Google Chrome, consultez [Understand Security Issues](https://developers.google.com/web/tools/chrome-devtools/security) sur les Outils Google pour site web des développeurs Google.

   D'autres navigateurs web peuvent avoir des fonctions similaires que vous pouvez utiliser pour afficher le certificat de serveur web.

1. Assurez-vous que le SSL/TLS certificat est celui que vous avez configuré pour utiliser sur votre serveur Web.

**Pour vérifier le SSL/TLS déchargement avec OpenSSL s\_client**

1. Exécutez la commande OpenSSL suivante pour vous connecter à votre serveur web en utilisant le protocole HTTPS. {{<server name>}}Remplacez-le par le nom DNS public ou l'adresse IP de votre serveur Web. 

   ```
   openssl s_client -connect {{<server name>}}:443
   ```
**Astuce**  
Vous pouvez utiliser un service DNS tel qu'Amazon Route 53 pour acheminer le nom de domaine de votre site Web (par exemple, https://www.example.com/) vers votre serveur Web. Pour plus d'informations, consultez [Routage du trafic vers une instance Amazon EC2](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-ec2-instance.html)* dans le Guide du Développeur Amazon Route 53* ou dans la documentation de votre service DNS.

1. Assurez-vous que le SSL/TLS certificat est celui que vous avez configuré pour utiliser sur votre serveur Web.

Vous disposez maintenant d'un site web sécurisé avec HTTPS. La clé privée du serveur Web est stockée dans un HSM de votre AWS CloudHSM cluster. 

Pour ajouter un équilibreur de charge, veuillez consulter [Ajoutez un équilibreur de charge avec Elastic Load Balancing pour AWS CloudHSM(facultatif)](third-offload-add-lb.md).