Se il certificato root di VMCA (VMware Certificate Authority) scadrà a breve o si desidera sostituirlo per altri motivi, è possibile utilizzare la CLI per generare un nuovo certificato root e aggiungerlo in VMware Directory Service. È quindi possibile generare nuovi certificati SSL delle macchine e certificati utente della soluzione utilizzando il nuovo certificato root.
Nella maggior parte dei casi è possibile sostituire i certificati tramite l'utilità vSphere Certificate Manager.
Se è necessario un controllo granulare, questo scenario fornisce istruzioni dettagliate per sostituire il set completo di certificati utilizzando i comandi CLI. È invece possibile sostituire solo singoli certificati utilizzando la procedura nell'attività corrispondente.
Prerequisiti
Solo [email protected] o altri utenti del gruppo CAAdmins possono eseguire attività di gestione dei certificati. Vedere Aggiunta di membri a un gruppo di vCenter Single Sign-On.
Generazione di un nuovo certificato root firmato da VMCA tramite la CLI
È possibile generare nuovi certificati firmati da VMCA con la CLI certool e pubblicare i certificati in vmdir.
Procedura
Esempio: Generazione di un nuovo certificato root firmato da VMCA
- (Facoltativo) In vCenter Server, elencare il certificato root VMCA per assicurarsi che sia nell'archivio certificati.
/usr/lib/vmware-vmca/bin/certool --getrootca
L'output ha un aspetto simile al seguente:output: Certificate: Data: Version: 3 (0x2) Serial Number: cf:2d:ff:49:88:50:e5:af ...
- (Facoltativo) Elencare l'archivio TRUSTED_ROOTS di VECS e confrontare il numero di serie del certificato con l'output del passaggio 1.
/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store TRUSTED_ROOTS --text
Nel caso più semplice con un solo certificato root, l'output ha il seguente aspetto:Number of entries in store : 1 Alias : 960d43f31eb95211ba3a2487ac840645a02894bd Entry type : Trusted Cert Certificate: Data: Version: 3 (0x2) Serial Number: cf:2d:ff:49:88:50:e5:af
- Generare un nuovo certificato root VMCA. Il comando aggiunge il certificato all'archivio TRUSTED_ROOTS in VECS e in vmdir (VMware Directory Service).
/usr/lib/vmware-vmca/bin/certool --selfca --config=/usr/lib/vmware-vmca/share/config/certool.cfg
Sostituzione dei certificati SSL delle macchine con certificati firmati da VMCA tramite la CLI
Dopo aver generato un nuovo certificato root firmato da VMCA, è possibile utilizzare il comando vecs-cli per sostituire tutti i certificati SSL delle macchine nell'ambiente.
Ogni macchina deve disporre di un certificato SSL della macchina per garantire la comunicazione sicura con gli altri servizi. Quando più istanze di vCenter Server sono connesse nella configurazione Modalità collegata avanzata, è necessario eseguire i comandi di generazione dei certificati SSL della macchina in ogni nodo.
Prerequisiti
Prepararsi ad arrestare tutti i servizi e avviare i servizi che gestiscono la propagazione e lo storage dei certificati.
Procedura
Esempio: Sostituzione dei certificati macchina con certificati firmati da VMCA
- Creare un file di configurazione per il certificato SSL e salvarlo come ssl-config.cfg nella directory corrente.
Country = US Name = vmca-<FQDN-example> Organization = <my_company> OrgUnit = <my_company Engineering> State = <my_state> Locality = <mytown> Hostname = <FQDN>
- Generare una coppia di chiavi per il certificato SSL della macchina. In una distribuzione di più istanze di vCenter Server connesse nella configurazione Modalità collegata avanzata, eseguire questo comando in ogni nodo di vCenter Server.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
I file ssl-key.priv e ssl-key.pub vengono creati nella directory corrente.
- Generare il nuovo certificato SSL della macchina. Questo certificato è firmato da VMCA. Se il certificato root VMCA è stato sostituito con un certificato personalizzato, VMCA firma tutti i certificati con la catena completa.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg
Il file new-vmca-ssl.crt viene creato nella directory corrente.
- (Facoltativo) Elencare il contenuto di VECS.
/usr/lib/vmware-vmafd/bin/vecs-cli store list
- Output di esempio in vCenter Server:
output (on vCenter): MACHINE_SSL_CERT TRUSTED_ROOTS TRUSTED_ROOT_CRLS machine vsphere-webclient vpxd vpxd-extension hvc data-encipherment APPLMGMT_PASSWORD SMS wcp KMS_ENCRYPTION
- Output di esempio in vCenter Server:
- Sostituire il certificato SSL della macchina in VECS con il nuovo certificato SSL della macchina. I valori --store e --alias devono corrispondere esattamente ai nomi predefiniti.
- In ogni vCenter Server, eseguire i comandi seguenti per aggiornare il certificato SSL della macchina nell'archivio MACHINE_SSL_CERT. È necessario aggiornare il certificato per ogni macchina separatamente perché ciascuna ha un FQDN diverso.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
- In ogni vCenter Server, eseguire i comandi seguenti per aggiornare il certificato SSL della macchina nell'archivio MACHINE_SSL_CERT. È necessario aggiornare il certificato per ogni macchina separatamente perché ciascuna ha un FQDN diverso.
Operazioni successive
È inoltre possibile sostituire i certificati per gli host ESXi. Vedere la pubblicazione Sicurezza di vSphere.
Sostituzione dei certificati utente della soluzione con nuovi certificati firmati da VMCA mediante la CLI
Dopo aver sostituito i certificati SSL delle macchine, è possibile utilizzare il comando dir-cli per sostituire tutti i certificati utente della soluzione. I certificati utente della soluzione devono essere validi, ovvero non scaduti, ma nessuna delle altre informazioni nel certificato viene utilizzata dall'infrastruttura del certificato.
- I certificati possono trovarsi dietro un proxy o essere certificati personalizzati.
- Non vengono utilizzate CA intermedie.
Sostituire il certificato utente della soluzione della macchina e il certificato utente della soluzione in ciascun sistema vCenter Server.
Prerequisiti
Prepararsi ad arrestare tutti i servizi e avviare i servizi che gestiscono la propagazione e lo storage dei certificati.
Procedura
Esempio: Utilizzo dei certificati utente della soluzione firmata da VMCA
- Generare una coppia di chiavi pubblica/privata per ciascun utente della soluzione in ogni nodo di vCenter Server in una configurazione Modalità collegata avanzata. Ciò include una coppia per la soluzione della macchina e una coppia per ogni utente aggiuntivo della soluzione (vpxd, vpxd-extension, vsphere-webclient, wcp).
- Generare una coppia di chiavi per l'utente della soluzione della macchina.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
- Generare una coppia di chiavi per l'utente della soluzione vpxd in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vpxd-key.priv --pubkey=vpxd-key.pub
- Generare una coppia di chiavi per l'utente della soluzione vpxd-extension in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vpxd-extension-key.priv --pubkey=vpxd-extension-key.pub
- Generare una coppia di chiavi per l'utente della soluzione vsphere-webclient in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vsphere-webclient-key.priv --pubkey=vsphere-webclient-key.pub
- Generare una coppia di chiavi per l'utente della soluzione wcp in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=wcp-key.priv --pubkey=wcp-key.pub
- Generare una coppia di chiavi per l'utente della soluzione della macchina.
- Generare certificati utente della soluzione firmati mediante il nuovo certificato root VMCA per l'utente della soluzione della macchina e per ciascun utente aggiuntivo della soluzione (vpxd, vpxd-extension, vsphere-webclient, wcp) in ogni nodo di vCenter Server.
Nota: Il parametro --Name deve essere univoco. L'inclusione del nome dell'archivio degli utenti della soluzione consente di individuare facilmente quale certificato è associato a quale utente della soluzione. L'esempio include il nome, ad esempio vpxd o vpxd-extension in ogni caso.
- Eseguire una copia del file /usr/lib/vmware-vmca/share/config/certool.cfg, quindi modificare o rimuovere i campi Nome, Indirizzo IP, Nome DNS e Indirizzo e-mail in base alle necessità e rinominare il file usando ad esempio sol_usr.cfg.
- Generare un certificato per l'utente della soluzione della macchina in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine --config sol_usr.cfg
- Generare un certificato per l'utente della soluzione vpxd in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vpxd.crt --privkey=vpxd-key.priv --Name=vpxd --config sol_usr.cfg
- Generare un certificato per l'utente della soluzione vpxd-extensions in ogni nodo.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vpxd-extension.crt --privkey=vpxd-extension-key.priv --Name=vpxd-extension --config sol_usr.cfg
- Generare un certificato per l'utente della soluzione vsphere-webclient in ogni nodo eseguendo il comando seguente.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vsphere-webclient.crt --privkey=vsphere-webclient-key.priv --Name=vsphere-webclient --config sol_usr.cfg
- Generare un certificato per l'utente della soluzione wcp in ogni nodo eseguendo il comando seguente.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-wcp.crt --privkey=wcp-key.priv --Name=wcp --config sol_usr.cfg
- Sostituire i certificati utente della soluzione in VECS con i nuovi certificati utente della soluzione.
Nota: I parametri --store e --alias devono corrispondere esattamente ai nomi predefiniti per i servizi.
- Sostituire il certificato utente della soluzione della macchina in ogni nodo:
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store machine --alias machine /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store machine --alias machine --cert new-machine.crt --key machine-key.priv
- Sostituire il certificato utente della soluzione vpxd in ogni nodo.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vpxd --alias vpxd /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vpxd --alias vpxd --cert new-vpxd.crt --key vpxd-key.priv
- Sostituire il certificato utente della soluzione vpxd-extension in ogni nodo.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vpxd-extension --alias vpxd-extension /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vpxd-extension --alias vpxd-extension --cert new-vpxd-extension.crt --key vpxd-extension-key.priv
- Sostituire il certificato utente della soluzione vsphere-webclient in ogni nodo.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vsphere-webclient --alias vsphere-webclient /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vsphere-webclient --alias vsphere-webclient --cert new-vsphere-webclient.crt --key vsphere-webclient-key.priv
- Sostituire il certificato utente della soluzione wcp in ogni nodo.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store wcp --alias wcp /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store wcp --alias wcp --cert new-wcp.crt --key wcp-key.priv
- Sostituire il certificato utente della soluzione della macchina in ogni nodo:
- Aggiornare VMware Directory Service (vmdir) con i nuovi certificati utente della soluzione. Viene richiesta una password amministratore di vCenter Single Sign-On.
- Eseguire /usr/lib/vmware-vmafd/bin/dir-cli service list per ottenere il suffisso ID del servizio univoco per ogni utente della soluzione. Eseguire il comando in un sistema vCenter Server.
/usr/lib/vmware-vmafd/bin/dir-cli service list output: 1. machine-623bef28-0311-436e-b21f-6e0d39aa5179 2. vsphere-webclient-623bef28-0311-436e-b21f-6e0d39aa5179 3. vpxd-623bef28-0311-436e-b21f-6e0d39aa5179 4. vpxd-extension-623bef28-0311-436e-b21f-6e0d39aa5179 5. hvc-623bef28-0311-436e-b21f-6e0d39aa5179 6. wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e
Nota: Quando vengono elencati i certificati utente della soluzione nelle distribuzioni di grandi dimensioni, l'output di /usr/lib/vmware-vmafd/bin/dir-cli list include tutti gli utenti della soluzione di tutti i nodi. Eseguire /usr/lib/vmware-vmafd/bin/vmafd-cli get-machine-id --server-name localhost per trovare l'ID della macchina locale per ogni host. Ciascun nome utente della soluzione include l'ID della macchina. - Sostituire il certificato macchina in vmdir in ogni nodo di vCenter Server. Ad esempio, se l'utente della soluzione della macchina in vCenter Server è machine-6fd7f140-60a9-11e4-9e28-005056895a69, eseguire il comando seguente:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name machine-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-machine.crt
- Sostituire il certificato utente della soluzione vpxd in vmdir in ogni nodo. Ad esempio, se l'ID utente della soluzione vpxd è vpxd-6fd7f140-60a9-11e4-9e28-005056895a69, eseguire il comando seguente:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd.crt
- Sostituire il certificato utente della soluzione vpxd-extension in vmdir in ogni nodo. Ad esempio, se l'ID utente della soluzione vpxd-extension è vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69, eseguire il comando seguente:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd-extension.crt
- Sostituire il certificato utente della soluzione vsphere-webclient in ogni nodo. Ad esempio, se l'ID utente della soluzione vsphere-webclient è vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69, eseguire il comando seguente:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vsphere-webclient.crt
- Sostituire il certificato utente della soluzione wcp in ogni nodo. Ad esempio, se l'ID utente della soluzione wcp è wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e, eseguire il comando seguente:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e --cert new-wcp.crt
- Eseguire /usr/lib/vmware-vmafd/bin/dir-cli service list per ottenere il suffisso ID del servizio univoco per ogni utente della soluzione. Eseguire il comando in un sistema vCenter Server.
Operazioni successive
Riavviare tutti i servizi di in ogni nodo di vCenter Server.