

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS CloudHSM Offload SSL/TLS su Windows tramite IIS con KSP
<a name="ssl-offload-windows"></a>

Questo tutorial fornisce step-by-step istruzioni per configurare l' SSL/TLS offload con AWS CloudHSM su un server Web Windows.

**Topics**
+ [Panoramica di](#ssl-offload-windows-overview)
+ [Fase 1: configurazione dei prerequisiti](#ssl-offload-prerequisites-windows)
+ [Fase 2: creazione di una richiesta di firma del certificato (CSR) e di un certificato](#ssl-offload-windows-create-csr-and-certificate)
+ [Fase 3: configurazione del server Web](#ssl-offload-configure-web-server-windows)
+ [Fase 4: abilitazione del traffico HTTPS e verifica del certificato](#ssl-offload-enable-traffic-and-verify-certificate-windows)

## Panoramica di
<a name="ssl-offload-windows-overview"></a>

In Windows [Internet Information Services (IIS) per l'applicazione del server Web Windows Server](https://www.iis.net/) supporta HTTPS in modo nativo. Il [provider di archiviazione delle AWS CloudHSM chiavi (KSP) per l'API di crittografia di Microsoft: Next Generation (CNG)](ksp-library.md) fornisce l'interfaccia che consente a IIS di utilizzare IIS HSMs nel cluster per l'offload crittografico e l'archiviazione delle chiavi. AWS CloudHSM KSP è il bridge che collega IIS al cluster. AWS CloudHSM 

In questo tutorial vengono illustrate le seguenti operazioni:
+ Installa il software del server Web in un'istanza Amazon EC2.
+ Configura il software del server Web in modo tale che supporti HTTPS con una chiave privata archiviata nel cluster AWS CloudHSM .
+ (Facoltativo) Utilizza Amazon EC2 per creare una seconda istanza del server Web ed Elastic Load Balancing per creare un sistema di bilanciamento del carico. L'uso di un sistema di bilanciamento del carico può migliorare le prestazioni grazie alla distribuzione del carico in più server. Offre anche ridondanza e una disponibilità più elevata in caso di errore di uno o più server.

Quando sei pronto per iniziare, vai a [Fase 1: configurazione dei prerequisiti](#ssl-offload-prerequisites-windows).

## Fase 1: configurazione dei prerequisiti
<a name="ssl-offload-prerequisites-windows"></a>

Piattaforme diverse richiedono prerequisiti diversi. Utilizza la sezione sui prerequisiti riportata di seguito corrispondente alla tua piattaforma.

**Topics**
+ [Prerequisiti per Client SDK 5](#ssl-offload-prerequisites-windows-sdk5)
+ [Prerequisiti per Client SDK 3](#ssl-offload-prerequisites-windows-sdk3)

### Prerequisiti per Client SDK 5
<a name="ssl-offload-prerequisites-windows-sdk5"></a>

Per configurare l' SSL/TLS offload del server Web con, è necessario quanto segue: AWS CloudHSM
+ Un AWS CloudHSM cluster attivo con almeno un HSM.
+ Un'istanza Amazon EC2 che esegue un sistema operativo Windows su cui sia installato il seguente software:
  + Il software AWS CloudHSM client per Windows.
  + Internet Information Services (IIS) per Windows Server.
+ Un [utente di crittografia](understanding-users.md#crypto-user-chsm-cli) (CU) che sia proprietario e che gestisca la chiave privata del server Web sull'HSM.

**Nota**  
Questo tutorial utilizza Microsoft Windows Server 2019. Sono supportati anche Microsoft Windows Server 2016 e 2022.

**Per configurare un'istanza di Windows Server e creare un CU sull'HSM**

1. Completa le fasi descritte in [Nozioni di base](getting-started.md). Quando avvii il client Amazon EC2, scegli un'AMI Windows Server 2019. Dopo aver completato queste fasi, sarà presente un cluster attivo con almeno un HSM. Hai anche un'istanza client Amazon EC2 che esegue Windows Server con il software AWS CloudHSM client per Windows installato.

1. (Facoltativo) Aggiungine altri HSMs al cluster. Per ulteriori informazioni, consulta [Aggiungere un HSM a un cluster AWS CloudHSM](add-hsm.md).

1. Connettersi al server Windows. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Utilizza la CLI di CloudHSM per creare un crypto user (CU). Prendere nota del nome utente e della password del CU, Saranno necessari per completare la fase successiva. 
**Nota**  
Per le informazioni sulla creazione di un utente, consulta la pagina sulla [gestione degli utenti HSM con la CLI di CloudHSM](manage-hsm-users-chsm-cli.md).

1. [Impostare le credenziali di accesso per l'HSM](ksp-library-authentication.md), utilizzando il nome utente e la password CU creati nella fase precedente.

1. Nel passaggio 5, se hai utilizzato Windows Credentials Manager per impostare le credenziali HSM, scarica [https://live.sysinternals.com/psexec.exe](https://live.sysinternals.com/psexec.exe)da SysInternals per eseguire il comando seguente come *NT* Authority\$1 SYSTEM:

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

   Sostituisci *<USERNAME>* e *<PASSWORD>* con le credenziali HSM.

**Per installare IIS in Windows Server**

1. Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Su Windows Server avviare **Server Manager**.

1. Nel pannello di controllo **Server Manager** scegliere **Add roles and features (Aggiungi ruoli e funzionalità)**.

1. Leggere le informazioni **Before you begin (Prima di iniziare)**, quindi scegliere **Next (Successivo)**.

1. Per **Installation Type (Tipo di installazione)** scegliere **Role-based or feature-based installation (Installazione basata su ruoli o su funzionalità)**. Quindi scegli **Successivo**.

1. Per **Server Selection (Selezione server)** scegliere **Select a server from the server pool (Seleziona un server dal gruppo di server)**. Quindi scegli **Successivo**.

1. Per **Server Roles (Ruoli server)** utilizzare la seguente procedura:

   1. Selezionare **Web Server (IIS)**.

   1. Per **Add features that are required for Web Server (IIS) (Aggiungi le funzionalità richieste per Web Server (IIS))** scegliere **Add Features (Aggiungi caratteristiche)**.

   1. Selezionare **Next (Successivo)** per terminare la selezione dei ruoli server.

1. Per **Caratteristiche**, accettare le impostazioni predefinite. Quindi scegli **Successivo**.

1. Leggere le informazioni su **Web Server Role (IIS) (Ruolo Web Server)**. Quindi scegli **Successivo**.

1. Per **Select server roles (Seleziona ruoli server)**, accettare le impostazioni predefinite o modificarle in base alle esigenze. Quindi scegli **Successivo**.

1. Per **Confirmation (Conferma)**, leggere le informazioni di conferma. Quindi scegliere **Install (Istalla)**.

1. Al termine dell'installazione, scegliere **Close (Chiudi)**.

Dopo aver completato queste operazioni, andare su [Fase 2: creazione di una richiesta di firma del certificato (CSR) e di un certificato](#ssl-offload-windows-create-csr-and-certificate).

### Prerequisiti per Client SDK 3
<a name="ssl-offload-prerequisites-windows-sdk3"></a>

Per configurare l' SSL/TLS offload del server Web con AWS CloudHSM, è necessario quanto segue:
+ Un AWS CloudHSM cluster attivo con almeno un HSM.
+ Un'istanza Amazon EC2 che esegue un sistema operativo Windows su cui sia installato il seguente software:
  + Il software AWS CloudHSM client per Windows.
  + Internet Information Services (IIS) per Windows Server.
+ Un [utente di crittografia](understanding-users.md#crypto-user-chsm-cli) (CU) che sia proprietario e che gestisca la chiave privata del server Web sull'HSM.

**Nota**  
In questo tutorial viene utilizzato Microsoft Windows Server 2016. È supportato anche Microsoft Windows Server 2012, ma non è supportato Microsoft Windows Server 2012 R2.

**Per configurare un'istanza di Windows Server e creare un CU sull'HSM**

1. Completa le fasi descritte in [Nozioni di base](getting-started.md). All'avvio del client Amazon EC2, scegliere un'AMI Windows Server 2016 o Windows Server 2012. Dopo aver completato queste fasi, sarà presente un cluster attivo con almeno un HSM. Hai anche un'istanza client Amazon EC2 che esegue Windows Server con il software AWS CloudHSM client per Windows installato.

1. (Facoltativo) Aggiungine altri HSMs al cluster. Per ulteriori informazioni, consulta [Aggiungere un HSM a un cluster AWS CloudHSM](add-hsm.md).

1. Connettersi al server Windows. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Utilizza la CLI di CloudHSM per creare un crypto user (CU). Prendere nota del nome utente e della password del CU, Saranno necessari per completare la fase successiva. 
**Nota**  
Per le informazioni sulla creazione di un utente, consulta la pagina sulla [gestione degli utenti HSM con la CLI di CloudHSM](manage-hsm-users-chsm-cli.md).

1. [Impostare le credenziali di accesso per l'HSM](ksp-library-prereq.md), utilizzando il nome utente e la password CU creati nella fase precedente.

1. Nel passaggio 5, se hai utilizzato Windows Credentials Manager per impostare le credenziali HSM, scarica [https://live.sysinternals.com/psexec.exe](https://live.sysinternals.com/psexec.exe)da SysInternals per eseguire il comando seguente come *NT* Authority\$1 SYSTEM:

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

   Sostituisci *<USERNAME>* e *<PASSWORD>* con le credenziali HSM.

**Per installare IIS in Windows Server**

1. Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Su Windows Server avviare **Server Manager**.

1. Nel pannello di controllo **Server Manager** scegliere **Add roles and features (Aggiungi ruoli e funzionalità)**.

1. Leggere le informazioni **Before you begin (Prima di iniziare)**, quindi scegliere **Next (Successivo)**.

1. Per **Installation Type (Tipo di installazione)** scegliere **Role-based or feature-based installation (Installazione basata su ruoli o su funzionalità)**. Quindi scegli **Successivo**.

1. Per **Server Selection (Selezione server)** scegliere **Select a server from the server pool (Seleziona un server dal gruppo di server)**. Quindi scegli **Successivo**.

1. Per **Server Roles (Ruoli server)** utilizzare la seguente procedura:

   1. Selezionare **Web Server (IIS)**.

   1. Per **Add features that are required for Web Server (IIS) (Aggiungi le funzionalità richieste per Web Server (IIS))** scegliere **Add Features (Aggiungi caratteristiche)**.

   1. Selezionare **Next (Successivo)** per terminare la selezione dei ruoli server.

1. Per **Caratteristiche**, accettare le impostazioni predefinite. Quindi scegli **Successivo**.

1. Leggere le informazioni su **Web Server Role (IIS) (Ruolo Web Server)**. Quindi scegli **Successivo**.

1. Per **Select server roles (Seleziona ruoli server)**, accettare le impostazioni predefinite o modificarle in base alle esigenze. Quindi scegli **Successivo**.

1. Per **Confirmation (Conferma)**, leggere le informazioni di conferma. Quindi scegliere **Install (Istalla)**.

1. Al termine dell'installazione, scegliere **Close (Chiudi)**.

Dopo aver completato queste operazioni, andare su [Fase 2: creazione di una richiesta di firma del certificato (CSR) e di un certificato](#ssl-offload-windows-create-csr-and-certificate).

## Fase 2: creazione di una richiesta di firma del certificato (CSR) e di un certificato
<a name="ssl-offload-windows-create-csr-and-certificate"></a>

Per abilitare HTTPS, il server Web necessita di un SSL/TLS certificato e della chiave privata corrispondente. Per utilizzare SSL/TLS offload con AWS CloudHSM, memorizzi la chiave privata nell'HSM del cluster. AWS CloudHSM Per eseguire questa operazione, è possibile utilizzare il [provider di archiviazione delle chiavi (KSP)AWS CloudHSM per Cryptography API: Next Generation (CNG) di Microsoft](ksp-v3-library.md) per creare una richiesta di firma del certificato (CSR). La CSR viene quindi inviata a un'autorità di certificazione (CA), che la firma per ottenere un certificato.

**Topics**
+ [Crea una CSR con Client SDK 5](#ssl-offload-windows-create-csr-new-version)
+ [Crea una CSR con Client SDK 3](#ssl-offload-windows-create-csr-old-version)
+ [Come ottenere un certificato firmato e importarlo](#ssl-offload-windows-create-certificate)

### Crea una CSR con Client SDK 5
<a name="ssl-offload-windows-create-csr-new-version"></a>

1. Nel Windows Server utilizzare un editor di testo per creare un file di richiesta di certificato denominato `IISCertRequest.inf`. Di seguito viene mostrato il contenuto di un file `IISCertRequest.inf` di esempio. Per ulteriori informazioni sulle sezioni, le chiavi e i valori che è possibile specificare nel file, vedi la [documentazione Microsoft](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1#BKMK_New). Non modificare il valore `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. Utilizzate il [**certreq**comando Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) per creare una CSR dal `IISCertRequest.inf` file creato nel passaggio precedente. L'esempio seguente salva la CSR in un file denominato `IISCertRequest.csr`. Se hai utilizzato un nome di file diverso per il file di richiesta del certificato, sostituiscilo *IISCertRequest.inf* con il nome file appropriato. Facoltativamente, puoi sostituirlo *IISCertRequest.csr* con un nome di file diverso per il tuo file CSR.

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

   Il file `IISCertRequest.csr` contene la CSR. Questa CSR è necessaria per ottenere un certificato firmato.

### Crea una CSR con Client SDK 3
<a name="ssl-offload-windows-create-csr-old-version"></a>

1. Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Usa il seguente comando per avviare il demone 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 ]
   + Per client Windows dalla versione 1.1.2\$1:

     ```
     C:\Program Files\Amazon\CloudHSM>net.exe start AWSCloudHSMClient
     ```
   + Per client Windows 1.1.1 e versioni precedenti:

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

------

1. Nel Windows Server utilizzare un editor di testo per creare un file di richiesta di certificato denominato `IISCertRequest.inf`. Di seguito viene mostrato il contenuto di un file `IISCertRequest.inf` di esempio. Per ulteriori informazioni sulle sezioni, le chiavi e i valori che è possibile specificare nel file, vedi la [documentazione Microsoft](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1#BKMK_New). Non modificare il valore `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. Utilizzate il [**certreq**comando Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) per creare una CSR dal `IISCertRequest.inf` file creato nel passaggio precedente. L'esempio seguente salva la CSR in un file denominato `IISCertRequest.csr`. Se hai utilizzato un nome di file diverso per il file di richiesta del certificato, sostituiscilo *IISCertRequest.inf* con il nome file appropriato. Facoltativamente, puoi sostituirlo *IISCertRequest.csr* con un nome di file diverso per il tuo file CSR.

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

   Il file `IISCertRequest.csr` contene la CSR. Questa CSR è necessaria per ottenere un certificato firmato.

### Come ottenere un certificato firmato e importarlo
<a name="ssl-offload-windows-create-certificate"></a>

In un ambiente di produzione, per creare un certificato da una CSR in genere ci si avvale di un'autorità di certificazione, che non è invece necessaria per un ambiente di test. Se utilizzi una CA, inviagli il file CSR (`IISCertRequest.csr`) e usa la CA per creare un certificato firmato. SSL/TLS 

In alternativa all'utilizzo di una CA, è possibile utilizzare uno strumento come [OpenSSL](https://www.openssl.org/) per creare un certificato autofirmato.

**avvertimento**  
I certificati autofirmati non sono considerati attendibili dai browser e non devono essere utilizzati negli ambienti di produzione, ma solo negli ambienti di test.

Le procedure seguenti illustrano come creare un certificato autofirmato e utilizzarlo per firmare la CSR del proprio server Web.

**Per creare un certificato autofirmato**

1. Eseguire il comando OpenSSL seguente per creare una chiave privata. Facoltativamente, puoi sostituirlo *SelfSignedCA.key* con il nome del file per contenere la tua chiave privata.

   ```
   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. Eseguire il comando OpenSSL seguente per creare un certificato autofirmato mediante la chiave privata creata nella fase precedente. Si tratta di un comando interattivo. Leggi le istruzioni a video e segui i prompt. Sostituiscilo *SelfSignedCA.key* con il nome del file che contiene la tua chiave privata (se diverso). Facoltativamente, puoi sostituirlo *SelfSignedCA.crt* con il nome del file per contenere il tuo certificato autofirmato.

   ```
   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 []:
   ```

**Per utilizzare il certificato autofirmato per firmare la CSR del server Web**
+ Eseguire il seguente comando OpenSSL per utilizzare la chiave privata e il certificato autofirmato per firmare il CSR. Sostituire gli elementi seguenti con i nomi dei file che contengono i dati corrispondenti (se diversi).
  + *IISCertRequest.csr*— Il nome del file che contiene la CSR del server web
  + *SelfSignedCA.crt*— Il nome del file che contiene il certificato autofirmato
  + *SelfSignedCA.key*— Il nome del file che contiene la chiave privata
  + *IISCert.crt*— Il nome del file che contiene il certificato firmato del server 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:
  ```

Una volta completato il passaggio precedente, avrai un certificato firmato per il server Web (`IISCert.crt`) e un certificato autofirmato (`SelfSignedCA.crt`). A questo punto, vai alla sezione [Fase 3: configurazione del server Web](#ssl-offload-configure-web-server-windows).

## Fase 3: configurazione del server Web
<a name="ssl-offload-configure-web-server-windows"></a>

È possibile aggiornare la configurazione del sito Web IIS per utilizzare il certificato HTTPS creato alla fine della [fase precedente](#ssl-offload-windows-create-csr-and-certificate). Verrà completata la configurazione del software del server Web Windows (IIS) per l' SSL/TLS offload con. AWS CloudHSM

Se hai utilizzato un certificato autofirmato per firmare la CSR, devi innanzitutto importare il certificato autofirmato nelle Autorità di certificazione fonti attendibili Windows.

**Per importare il certificato autofirmato nelle Autorità di certificazione fonti attendibili Windows**

1. Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Copiare il certificato autofirmato nel server Windows.

1. Nel server Windows aprire il **Pannello di controllo**.

1. In **Cerca nel Pannello di controllo** digitare **certificates**. Quindi scegliere **Gestisci i certificati computer**.

1. Nella finestra **Certificati ‐ Computer locale**, fai doppio clic su **Trusted Root Certification** Authorities.

1. Fai clic con il pulsante destro del mouse su **Certificati** e quindi scegliere **Tutte le attività**, **Importa**.

1. In **Importazione guidata certificati** scegliere **Avanti**.

1. Scegliere **Sfoglia**, quindi individuare e selezionare il certificato autofirmato. Se il certificato autofirmato è stato creato seguendo le istruzioni nella [fase precedente di questo tutorial](#ssl-offload-windows-create-csr-and-certificate), il nome del certificato sarà `SelfSignedCA.crt`. Seleziona **Apri**.

1. Scegli **Next (Successivo)**.

1. Per **Archivio certificati** scegliere **Mettere tutti i certificati nel seguente archivio**. Quindi accertarsi che sia selezionata l'opzione **Autorità di certificazione radice attendibili** per **Archivio certificati**.

1. Scegliere **Avanti**, quindi scegliere **Fine**.

**Pe aggiornare la configurazione del sito Web IIS**

1. Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta [Connect to Your Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) nella *Amazon EC2 User Guide*.

1. Avvia il daemon AWS CloudHSM del client.

1. Copia il certificato firmato del server Web (quello creato al termine della [fase precedente di questo tutorial](#ssl-offload-windows-create-csr-and-certificate)) nel server Windows.

1. Sul tuo Windows Server, usa il [**certreq**comando Windows](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certreq_1) per accettare il certificato firmato, come nell'esempio seguente. Sostituiscilo *IISCert.crt* con il nome del file che contiene il certificato firmato del tuo server Web.

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

1. Su Windows Server avviare **Server Manager**.

1. Nel pannello di controllo di **Server Manager**, nell'angolo in alto a destra, scegliere **Strumenti**, **Gestione Internet Information Services (IIS)**.

1. Nella finestra **Gestione Internet Information Services (IIS)** fare doppio clic sul nome del server. Quindi fare doppio clic su **Siti**. Selezionare il sito Web.

1. Selezionare **Impostazioni SSL**. Quindi, sulla parte destra della finestra, scegliere **Binding**.

1. Nella finestra **Binding sito Web** scegliere **Aggiungi**.

1. Per **Tipo**, scegliere **https**. Per **Certificato SSL**, scegliere il certificato HTTPS creato alla fine della [fase precedente di questo tutorial](#ssl-offload-windows-create-csr-and-certificate).
**Nota**  
Se si verifica un errore durante l'associazione del certificato, riavviare il server e riprovare l'operazione.

1. Scegli **OK**.

Dopo avere aggiornato la configurazione del sito Web, vai a [Fase 4: abilitazione del traffico HTTPS e verifica del certificato](#ssl-offload-enable-traffic-and-verify-certificate-windows).

## Fase 4: abilitazione del traffico HTTPS e verifica del certificato
<a name="ssl-offload-enable-traffic-and-verify-certificate-windows"></a>

Dopo aver configurato il server Web per l' SSL/TLS offload con AWS CloudHSM, aggiungi l'istanza del server Web a un gruppo di sicurezza che consente il traffico HTTPS in entrata. Ciò consente ai client, come i browser Web, di stabilire una connessione HTTPS con il server Web. Quindi stabilisci una connessione HTTPS al tuo server web e verifica che stia utilizzando il certificato con cui hai configurato per l' SSL/TLS offload. AWS CloudHSM

**Topics**
+ [Abilitazione delle connessioni HTTPS in entrata](#ssl-offload-add-security-group-windows)
+ [Verifica dell'utilizzo da parte di HTTPS del certificato configurato](#ssl-offload-verify-https-connection-windows)

### Abilitazione delle connessioni HTTPS in entrata
<a name="ssl-offload-add-security-group-windows"></a>

Per connetterti al server Web da un client (ad esempio un browser Web), crea un gruppo di sicurezza che consenta le connessioni HTTPS in entrata. Nello specifico, deve consentire le connessioni TCP in entrata sulla porta 443. Assegna questo gruppo di sicurezza al tuo server Web. 

**Per creare un gruppo di sicurezza per HTTPS e assegnarlo al server Web**

1. Apri la console Amazon EC2 all'indirizzo [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Seleziona **Gruppi di sicurezza** nel riquadro di navigazione.

1. Scegliere **Create Security Group** (Crea gruppo di sicurezza).

1. Per **Create Security Group (Crea un gruppo di sicurezza)**, procedere come segue:

   1. Per **Security group name (Nome del gruppo di sicurezza)**, digitare un nome per il gruppo di sicurezza che si sta creando.

   1. (Facoltativo) Digitare una descrizione del gruppo di sicurezza in fase di creazione.

   1. Per **VPC**, scegli il VPC contenente l'istanza Amazon EC2 del server Web.

   1. Seleziona **Aggiungi regola**.

   1. Per **Tipo**, seleziona **HTTPS** dalla finestra a discesa.

   1. Per **Origine**, inserisci una posizione di origine.

   1. Scegliere **Create Security Group** (Crea gruppo di sicurezza).

1. Nel riquadro di navigazione, scegliere **Instances (Istanze)**.

1. Seleziona la casella di controllo accanto all'istanza del server Web.

1. Seleziona il menu a discesa **Operazioni** nella parte superiore della pagina. Seleziona **Sicurezza**, quindi **Modifica gruppi di sicurezza**.

1. Per **Gruppi di sicurezza associati**, seleziona la casella di ricerca e scegli il gruppo di sicurezza creato per HTTPS. Quindi, scegli **Aggiungi i gruppi di sicurezza**.

1. Seleziona **Salva**. 

### Verifica dell'utilizzo da parte di HTTPS del certificato configurato
<a name="ssl-offload-verify-https-connection-windows"></a>

Dopo aver aggiunto il server Web a un gruppo di sicurezza, puoi verificare che SSL/TLS offload utilizzi il tuo certificato autofirmato. Per farlo, puoi utilizzare un browser Web o uno strumento come [OpenSSL s\$1client](https://www.openssl.org/docs/manmaster/man1/s_client.html).

**Per verificare l' SSL/TLS offload con un browser web**

1. Utilizza un browser Web per connetterti al server Web utilizzando il nome DNS pubblico o l'indirizzo IP del server. Accertarsi che l'URL nella barra degli indirizzi inizi con https://. Ad esempio, **https://ec2-52-14-212-67.us-east-2.compute.amazonaws.com/**.
**Suggerimento**  
Puoi utilizzare un servizio DNS come Amazon Route 53 per indirizzare il nome di dominio del tuo sito Web (ad esempio, https://www.example.com/) al tuo server Web. Per ulteriori informazioni, consulta la sezione [Routing del traffico a un'istanza Amazon EC2](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-ec2-instance.html) nella *Guida per gli sviluppatori di Amazon Route 53* oppure nella documentazione del servizio DNS in uso.

1. Utilizza il browser Web per visualizzare il certificato del server Web. Per ulteriori informazioni, consulta gli argomenti seguenti:
   + Per Mozilla Firefox, consultare [ Visualizzare un certificato ](https://support.mozilla.org/en-US/kb/secure-website-certificate#w_view-a-certificate) sul sito Web di supporto di Mozilla.
   + Per Google Chrome, consulta la pagina [Understand Security Issues](https://developers.google.com/web/tools/chrome-devtools/security) sul sito Web di Google per sviluppatori.

   Altri browser Web potrebbero avere caratteristiche simili da utilizzare per visualizzare il certificato del server Web.

1. Assicurati che il SSL/TLS certificato sia quello che hai configurato per l'uso sul tuo server web.

**Per verificare l' SSL/TLS offload con OpenSSL s\$1client**

1. Esegui il seguente comando OpenSSL per connetterti al server Web tramite HTTPS. Sostituisci *<server name>* con il nome DNS pubblico o l'indirizzo IP del tuo server web. 

   ```
   openssl s_client -connect <server name>:443
   ```
**Suggerimento**  
Puoi utilizzare un servizio DNS come Amazon Route 53 per indirizzare il nome di dominio del tuo sito Web (ad esempio, https://www.example.com/) al tuo server Web. Per ulteriori informazioni, consulta la sezione [Routing del traffico a un'istanza Amazon EC2](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-ec2-instance.html) nella *Guida per gli sviluppatori di Amazon Route 53* oppure nella documentazione del servizio DNS in uso.

1. Assicurati che il SSL/TLS certificato sia quello che hai configurato per l'uso sul tuo server web.

A questo punto disponi di un sito Web protetto con HTTPS. La chiave privata per il server Web è archiviata in un HSM nel AWS CloudHSM cluster. 

Per aggiungere un sistema di bilanciamento del carico, consulta la pagina [Aggiungi un sistema di bilanciamento del carico con Elastic Load Balancing AWS CloudHSM per (opzionale)](third-offload-add-lb.md).