In vSphere 8.0 e versioni successive, è possibile configurare il server di Auto Deploy per eseguire il provisioning degli host ESXi con certificati personalizzati firmati da un'autorità di certificazione (CA) di terze parti o dalla propria autorità di certificazione interna. Per impostazione predefinita, il server di Auto Deploy fornisce agli host ESXi certificati firmati dall'Autorità di certificazione VMware (VMCA).

Prima di vSphere 8.0, le opzioni per la gestione dei certificati con Auto Deploy includono:

  • Utilizzo di vCenter Server e dell'Autorità di certificazione VMware integrata (impostazione predefinita).
  • Rendere Auto Deploy un'autorità di certificazione subordinata di un'autorità di certificazione di terze parti. In questo caso, la chiave SSL di Auto Deploy firma i certificati.

In vSphere 8.0 e versioni successive è possibile caricare in Auto Deploy certificati personalizzati firmati da un'autorità di certificazione di terze parti o dalla propria autorità di certificazione interna. Auto Deploy associa il certificato personalizzato all'indirizzo MAC o all'UUID del BIOS dell'host ESXi. Ogni volta che viene avviato un host di Auto Deploy, Auto Deploy verifica la presenza di un certificato personalizzato. Se Auto Deploy trova un certificato personalizzato, viene utilizzato tale certificato anziché generarne uno tramite VMCA.

I passaggi generali per questa attività includono:

  1. Generazione della richiesta di certificato personalizzato per un'autorità di certificazione di terze parti o per la propria autorità di certificazione interna.
  2. Ottenere il certificato personalizzato firmato (chiave e certificato) e archiviarlo localmente.
  3. Se si utilizza un'autorità di certificazione di terze parti e questa operazione non viene eseguita in precedenza, assicurarsi che il certificato root dell'autorità di certificazione venga caricato nell'archivio TRUSTED_ROOTS in vCenter Server.
  4. Caricamento del certificato personalizzato in Auto Deploy e associazione del certificato all'indirizzo MAC o all'UUID del BIOS di un host ESXi.
  5. Avvio dell'host ESXi.

Quando assegna un certificato personalizzato a un host ESXi, Auto Deploy invia il certificato all'host al successivo avvio da Auto Deploy.

Quando si utilizzano certificati personalizzati e Auto Deploy, tenere presenti le considerazioni seguenti.

  • Per gestire i certificati personalizzati utilizzati con Auto Deploy, è necessario utilizzare i cmdlet di PowerCLI Add-CustomCertificate, Remove-CustomCertificate e List-CustomCertificate. La funzionalità di gestione dei certificati personalizzati non è disponibile in vSphere Client.
  • Per aggiornare un certificato personalizzato utilizzato per Auto Deploy, è necessario eseguire nuovamente il cmdlet Add-CustomCertificate.
  • Assicurarsi di verificare la presenza di eventuali errori nel certificato personalizzato. La distribuzione automatica verifica solo che il certificato personalizzato sia conforme agli standard del certificato X.509 e che la soglia di scadenza del certificato sia impostata almeno a 240 giorni. La distribuzione automatica non esegue nessun'altra convalida o verifica del certificato. Per modificare la soglia del certificato, è possibile eseguire il cmdlet Set-DeployOption -Key certificate-refresh-threshold.
  • Se in seguito si rimuove un certificato personalizzato da un host ESXi utilizzando il cmdlet Remove-CustomCertificate, è necessario riavviare l'host per rendere effettive le modifiche.

Per ulteriori informazioni sui certificati personalizzati e su Auto Deploy, vedere la documentazione di Installazione e configurazione di VMware ESXi.

Prerequisiti

Assicurarsi di disporre di quanto segue:
  • Richiedere un certificato all'autorità di certificazione. Il certificato deve soddisfare i seguenti requisiti.
    • Dimensioni chiave: da 2048 bit (minimo) a 8192 bit (massimo) (con codifica PEM)
    • Formato PEM. VMware supporta PKCS8 e PKCS1 (chiavi RSA). Quando le chiavi vengono aggiunte in VECS, vengono convertite in PKCS8.
    • x509 versione 3
    • Formato CRT
    • Estensione CA impostata su true
    • Utilizzo chiave della firma del certificato
    • Ora di inizio un giorno prima dell'ora corrente
    Nota: Il certificato FIPS di vSphere convalida solo le chiavi RSA con dimensioni 2048 e 3072. Vedere Considerazioni sull'utilizzo di FIPS.
  • Indirizzo MAC o UUID del BIOS dell'host ESXi. Valutare quale approccio sia più adatto al proprio ambiente. L'UUID del BIOS è più stabile e meno soggetto a modifica rispetto all'indirizzo MAC. Se si modificano le schede di rete in un host ESXi, l'indirizzo MAC cambia. Tuttavia, l'indirizzo MAC potrebbe avere più familiarità con e potrebbe essere più semplice da ottenere rispetto all'UUID del BIOS.
  • Almeno PowerCLI versione 12.6.0. Per ulteriori informazioni sulla distribuzione automatica dei cmdlet di PowerCLI vedere l'argomento Panoramica della distribuzione automatica di PowerCLI nella documentazione di Installazione e configurazione di VMware ESXi.

Assicurarsi di disporre dei privilegi seguenti:

  • Aggiungere il certificato personalizzato: Distribuzione automatica.Regola.Crea
  • Ottieni informazioni sul certificato personalizzato: Sistema.Lettura

Procedura

  1. Generare la richiesta di certificato.
    1. Utilizzando i requisiti elencati in precedenza per la richiesta di certificato, creare un file di configurazione (.cfg).
    2. Per generare un file CSR e un file della chiave, eseguire il comando openssl req passando nel file di configurazione (.cfg).
      Ad esempio:
      openssl req -new -config custom_cert.cfg -days 4200 -sha256 -keyout rui.key -out rui.csr

      In questo comando:

      • -new genera una nuova richiesta di certificato.
      • -config custom_cert.cfg specifica il file .cfg personalizzato.
      • -days 4200 specifica 4200 giorni per la certificazione del certificato per.
      • -sha256 specifica il digest del messaggio per firmare la richiesta.
      • -keyout rui.key specifica il file in cui scrivere la chiave privata appena creata.
      • -out rui.csr specifica il file di output in cui scrivere.
  2. Inviare la richiesta di certificato all'autorità di certificazione di terze parti oppure, se si firmano i propri certificati, eseguire il comando openssl x509 -req per generare il certificato personalizzato dal file rui.csr.
    Ad esempio:
    openssl x509 -req -in rui.csr -CA "/etc/vmware-rbd/ssl/rbd-ca.crt" -CAkey \
    "/etc/vmware-rbd/ssl/rbd-ca.key" -extfile \
    openssl.cfg -extensions x509 -CAserial "/etc/vmware-rbd/ssl/rbd-ca.srl" -days \
    4200 -sha256 -out signed_rui.crt
    

    In questo comando:

    • -in rui.csr specifica il file di input.
    • -CA "/etc/vmware-rbd/ssl/rbd-ca.crt" specifica la directory da utilizzare per la verifica del certificato del server.
    • -CAkey "/etc/vmware-rbd/ssl/rbd-ca.key" imposta la chiave privata dell'autorità di certificazione per firmare un certificato.
    • -extfile openssl.cfg specifica un file di configurazione facoltativo aggiuntivo da cui leggere le estensioni dei certificati.
    • -extensions x509 specifica di utilizzare le estensioni di certificato x509.
    • -CAserial "/etc/vmware-rbd/ssl/rbd-ca.srl" utilizza il numero di serie in rbd-ca.srl per firmare un certificato.
    • -days 4200 specifica 4200 giorni per la certificazione del certificato per.
    • -sha256 specifica il digest del messaggio per firmare la richiesta.
    • -out signed_rui.crt specifica il file di output in cui scrivere.
  3. (Facoltativo) Se in precedenza non è stato caricato il certificato dell'autorità di certificazione che firma nell'nello store TRUSTED_ROOTS all'interno di VMware Endpoint Certificate Store (VECS), eseguire i passaggi seguenti in vCenter Server in cui viene eseguito il servizio Auto Deploy.
    1. Utilizzando uno strumento come WinSCP, copiare il certificato in vCenter Server.
    2. Accedere a vCenter Server utilizzando SSH ed eseguire il comando seguente.
      /usr/lib/vmware-vmafd/bin/dir-cli trustedcert publish --cert path_to_ca_certificate
  4. Ottenere l'indirizzo MAC dell'host ESXi o l'UUID del BIOS.
  5. Eseguire i passaggi seguenti per aggiungere il certificato personalizzato alla distribuzione automatica.
    1. Per connettersi al vCenter Server, eseguire il cmdlet Connect-VIServer.
      Connect-VIServer -server VC_ip_address -User administrator_user -Password 'password'
    2. (Facoltativo) Per visualizzare i certificati personalizzati esistenti, eseguire il cmdlet Get-CustomCertificates.
      La prima volta che si aggiungono certificati personalizzati, questo cmdlet non restituisce alcun certificato.
    3. Per associare il certificato personalizzato all'host ESXi, eseguire il cmdlet Add-CustomCertificate.
      Add-CustomCertificate -HostID [MAC_Address | BIOS_UUID] -Certificate "path_to_custom_cert" -Key "path_to_custom_cert_key"
      È possibile specificare l'indirizzo MAC o l'UUID del BIOS dell'host. Auto Deploy carica il certificato personalizzato nell'host.
    4. Per verificare che il certificato sia stato caricato, eseguire il cmdlet Get-CustomCertificates.
      Viene visualizzato un output simile al seguente:
      Name:     CustomHostCert-1
      CertificateId:      1
      HostId:             02:08:b0:8e:18:a2
      ExpirationTime: 1   2/28/2033 10:45:50 AM
      TimeCreated:        9/29/2022 7:40:28 AM
      LastModified:       9/29/2022 7:40:28 AM
      AssociatedHostName: 
      AssociatedHostName per il momento è vuoto. Dopo aver avviato l'host, l'output riflette il nome dell'host ESXi associato al certificato personalizzato.
  6. Avviare l'host ESXi.
  7. Per verificare che il certificato personalizzato sia associato a vCenter Server, eseguire nuovamente il cmdlet Get-CustomCertificates.
    L'output è simile al seguente.
    Name:     CustomHostCert-1
    CertificateId:      1
    HostId:             02:08:b0:8e:18:a2
    ExpirationTime: 1   2/28/2033 10:45:50 AM
    TimeCreated:        9/29/2022 7:40:28 AM
    LastModified:       9/29/2022 7:40:28 AM
    AssociatedHostName: host1.example.com
    Ora AssociatedHostName contiene il nome dell'host ESXi.