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à.
Fase 2: creazione di una richiesta di firma del certificato (CSR) e di un certificato
Per abilitare il protocollo HTTPS, il server Web necessita di un certificato SSL/TLS e di una chiave privata corrispondente. Per utilizzare l'offload SSL/TLS con AWS CloudHSM, è necessario archiviare la chiave privata nell'HSM nel 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 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.
Crea un CSR
Utilizza un KSP AWS CloudHSM sul tuo Windows Server per creare una CSR.
Per creare un CSR
-
Effettuare la connessione al server Windows, se non è stato ancora fatto. Per ulteriori informazioni, consulta la pagina Connessione a un'istanza nella Guida per l'utente di Amazon EC2 per le istanze Windows.
-
Utilizza il seguente comando per avviare il daemon del client AWS CloudHSM.
-
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 fileIISCertRequest.inf
di esempio. Per ulteriori informazioni sulle sezioni, le chiavi e i valori che è possibile specificare nel file, vedi la documentazione Microsoft. 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
-
Eseguire il comando certreq Windows
per creare una CSR dal file IISCertRequest.inf
creato nella fase precedente. L'esempio seguente salva la CSR in un file denominatoIISCertRequest.csr
. Se si utilizza un nome di file diverso per il file della richiesta di firma di certificato, è necessario sostituireIISCertRequest.inf
con il nome file appropriato. È anche possibile sostituireIISCertRequest.csr
con un nome di file diverso per il 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
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 viene utilizzata una CA, è necessario inviarle il file CSR (IISCertRequest.csr
) e creare tramite essa un certificato SSL/TLS firmato.
In alternativa all'utilizzo di una CA, è possibile utilizzare uno strumento come OpenSSL
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
-
Eseguire il comando OpenSSL seguente per creare una chiave privata. È anche possibile sostituire
SelfSignedCA.key
con il nome di file che contiene la chiave privata.openssl genrsa -aes256 -out
SelfSignedCA.key
2048Generating RSA private key, 2048 bit long modulus ......................................................................+++ .........................................+++ e is 65537 (0x10001) Enter pass phrase for SelfSignedCA.key: Verifying - Enter pass phrase for SelfSignedCA.key:
-
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. Sostituire
SelfSignedCA.key
con il nome de file che contiene la chiave privata (se diverso). È anche possibile sostituireSelfSignedCA.crt
con il nome di file che contiene il certificato autofirmato.openssl req -new -x509 -days 365 -key
SelfSignedCA.key
-outSelfSignedCA.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 auto-firmato -
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
\ -CASelfSignedCA.crt
\ -CAkeySelfSignedCA.key
\ -CAcreateserial \ -outIISCert.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.