Supporto centralizzato dei certificati SSL iis 8.0: scalabilità e gestibilità SSL
di Shaun Eagan
Compatibilità
Versione | Note |
---|---|
IIS 8.0 | Il supporto centralizzato dei certificati SSL è stato introdotto in IIS 8.0. |
IIS 7.5 | Il supporto centralizzato dei certificati SSL non è supportato in IIS 7.5. |
IIS 7.0 | Il supporto centralizzato dei certificati SSL non è supportato in IIS 7.0. |
Problema
Man mano che arrivano sempre più siti di e-commerce e più aziende archiviano e condividono documenti sensibili online, la possibilità di ospitare e ridimensionare siti sicuri è sempre più importante. Inoltre, con l'hosting cloud e la scalabilità elastica, è necessario aggiungere e rimuovere la capacità del server in modo dinamico. Prima di Windows Server 2012, esistono alcuni problemi quando si tratta di ospitare siti sicuri:
- Scalabilità SSL: in un ambiente multi-tenant, ad esempio un hosting condiviso, esiste una limitazione del numero di siti sicuri che possono essere ospitati in Windows Server, con conseguente bassa densità del sito.
- Gestibilità SSL: i certificati vengono archiviati localmente in ogni Windows Server. Pertanto, devono essere gestiti singolarmente in ogni Windows Server. Un'attività semplice, ad esempio il rinnovo di un certificato, deve essere ripetuta in ogni server. Inoltre, l'aggiunta di un nuovo Windows Server può richiedere ore, se sono presenti migliaia di certificati che devono essere importati.
Soluzione
In Windows Server 2012, la funzionalità di supporto centralizzato dei certificati SSL consente agli amministratori del server di archiviare e accedere centralmente ai certificati in una condivisione file. Analogamente alla funzionalità configurazione condivisa introdotta in Windows Server 2008, i server Windows in una server farm possono essere configurati per caricare i certificati dalla condivisione file su richiesta.
Con questa funzionalità, l'esperienza di gestione delle associazioni SSL è molto semplificata. Quando si tratta di SSL, il nome DNS e il nome CN del certificato devono corrispondere. Un contratto simile può essere ulteriormente esteso ai nomi di file dei certificati. Ad esempio, www.contoso.com
userebbe il certificato con un nome www.contoso.com.pfx
di file . Questo contratto consente a IIS 8.0 di avere un solo binding SSL, indipendentemente dal numero di siti sicuri che usano questa funzionalità. Il certificato corrispondente viene dedotto dal valore SNI o dal nome host del sito Web richiesto e associandolo al nome file del certificato.
Istruzioni dettagliate
Prerequisiti
IIS 8.0 è installato in Windows Server 2012 con funzionalità centralizzata certificato SSL. Questa funzionalità è un componente facoltativo di IIS e non è installata come parte dell'installazione predefinita.
Per installare questa funzionalità, da Server Manager assicurarsi di selezionare Centraled SSL Certificate Support (Supporto certificati SSL centralizzato) nel nodo Sicurezza :
Certificati di esempio con password NULL. In alternativa, è possibile che siano presenti certificati di esempio con una password globale.
- I certificati devono avere la convenzione di denominazione di CN_name.pfx , ovvero
www.contoso.com.pfx
. - Se il certificato è un certificato wildchar, usare "_" come carattere jolly. (vale a dire ,
_.contoso.com.pfx
). - Se il certificato ha più nomi CN, devono essere denominati come singoli file. (ad esempio,
www.contoso1.com.pfx
,www.contoso2.com.pfx
e così via)
- I certificati devono avere la convenzione di denominazione di CN_name.pfx , ovvero
Due condivisioni file: una per la configurazione condivisa e l'altra per i certificati SSL centralizzati.
- Il server IIS usa la configurazione condivisa.
- I certificati di esempio sono stati copiati nella condivisione file per i certificati SSL centralizzati.
\windows\system32\drivers\etc\hosts è stato modificato per essere usato per il sito e il certificato di esempio. Ad esempio, se il nome CN del certificato è centralCert0, il file hosts deve contenere:
127.0.0.1 centralCert0
Soluzioni alternative per bug noti
Al momento non sono presenti bug noti per questa funzionalità.
Configurare la funzionalità di supporto centralizzato dei certificati SSL
Apri Gestione IIS.
Selezionare il nodo server nella finestra di spostamento a sinistra:
In Gestione fare doppio clic su Certificati centralizzati:
Nel riquadro Azioni selezionare Modifica impostazioni funzionalità:
Immettere le informazioni seguenti:
Abilita certificati centralizzati: selezionato
Percorso fisico: ad esempio:
\\ccdemo\centralcert
- Questo è il percorso UNC della condivisione file in cui si trovano i certificati.
Nome utente: specificare un account utente con accesso in lettura alla condivisione file.
Password/Conferma password.
Password della chiave privata del certificato:
(Facoltativo). Se i certificati non dispongono di password, lasciare vuoto questo valore.
Se i certificati hanno una password globale, immettere la password qui.
La funzionalità di supporto dei certificati SSL centralizzata è ora pronta per l'uso. Si noti che Gestione IIS legge i certificati e popola le informazioni più rilevanti sui certificati. Queste informazioni vengono memorizzate nella cache per ottenere prestazioni migliori.
Una funzionalità di gestibilità importante è la possibilità di raggruppare i certificati in base alle date di scadenza:
Scopri quanto sia facile visualizzare i certificati che:
Scaduta
Scadenza domani
Scadenza questa settimana
Scadenza settimana prossima
Scadenza mese successivo
In seguito
Creare un sito Web sicuro
Apri Gestione IIS.
Selezionare Siti nella finestra di spostamento a sinistra:
Selezionare Aggiungi sito Web:
Inserire le informazioni, come si creerebbe qualsiasi sito:
Nome sito: centralCert0
Percorso fisico:
c:\inetpub\wwwroot
Tipo: https
Hostname: centralcert0
- Questa novità per Windows Server 2012 in tale nome host può essere specificata per SSL.
- Il valore effettivo di questa configurazione varia a seconda del certificato di esempio usato.
Richiedi indicazione del nome del server: deselezionata
- È anche possibile scegliere di selezionare Richiedi indicazione nome server se si sceglie. L'archivio certificati centralizzato non richiede l'uso di SNI, ma funziona correttamente quando si usa SNI.
- Si noti che nella versione Developer Preview l'archivio certificati centralizzato richiedeva anche l'uso di SNI. Tale restrizione è stata rimossa a partire dalla versione beta.
Usare l'archivio certificati centralizzato: selezionato
- Si noti che non è necessario selezionare un certificato corrispondente specifico da usare.
- Tramite l'uso del contratto di denominazione, il certificato corrispondente viene selezionato automaticamente. In questo esempio IIS tenta di leggere centralcert0.pfx dalla condivisione file di certificato SSL centrale.
Verificare che il sito sia stato creato:
È tutto. Il sito sicuro è stato creato usando il supporto centralizzato dei certificati SSL. L'esperienza di gestione è molto simile alla configurazione condivisa e all'associazione SSL tradizionale. Le differenze sono le seguenti:
- I certificati vengono archiviati centralmente in una condivisione file.
- È possibile specificare il nome host per il sito SSL.
- L'associazione SSL non viene gestita in modo esplicito da 1 a 1.
Testare un sito sicuro
Aprire un browser e passare a https://centralcert0/
. Si noti che come parte dei prerequisiti, il file hosts deve essere modificato per instradare questa richiesta a localhost:
Inoltre, per visualizzare il nuovo tipo di associazione SSL, immettere quanto segue in una finestra della riga di comando con privilegi elevati:
netsh http show sslcert
Si noti che l'associazione SSL è hostname:port con valore *:443. Inoltre, nessun hash del certificato è associato a questa associazione perché il certificato corrispondente viene caricato su richiesta in base al contratto del nome file del certificato.
Scenari
Provare a distribuire gli scenari seguenti:
Il supporto centralizzato dei certificati SSL è progettato per la scalabilità per un ambiente multi-tenant. Provare a configurare migliaia di siti sicuri usando questa funzionalità.
Con migliaia di certificati, eseguire il comando seguente in una finestra della riga di comando con privilegi elevati. Si noti che, indipendentemente dal numero di siti sicuri, è sufficiente un'associazione:
netsh http show sslcert
Provare ad aggiungere un nuovo server in questa server farm. Usando la configurazione condivisa e la funzionalità di supporto centralizzato dei certificati SSL, si tratta ora di un processo in 3 passaggi:
Configurare il nuovo server per l'uso della configurazione condivisa.
Configurare il nuovo server per l'uso del supporto centralizzato dei certificati SSL.
Creare l'associazione SSL. Una finestra della riga di comando con privilegi elevati, immettere:
add sslcert hostnameport=*:443 appid={00112233-4455-6677-8899-AABBCCDDEFF}
A differenza delle versioni precedenti di Windows Server, i certificati in Windows Server 2012 vengono caricati in memoria su richiesta. Dopo aver configurato migliaia di siti protetti usando la funzionalità di supporto centralizzato dei certificati SSL, inviare una richiesta GET a uno dei siti sicuri e osservare l'utilizzo della memoria. È trascurabile. Nelle versioni precedenti di Windows Server, se sono state configurate centinaia di siti protetti, l'invio di una sola richiesta GET fa sì che Windows Server carichi tutti i certificati, con conseguente utilizzo elevato della memoria e limiti ulteriormente la scalabilità.
Creare siti sicuri con SNI, supporto tradizionale e centralizzato dei certificati SSL. Sono progettati per coesistere.
Riepilogo
La funzionalità Dei certificati SSL centralizzati è stata esaminata in Windows Server 2012.