Nachdem Sie das signierte Zertifikat von der Zertifizierungsstelle erhalten und zum VMCA-Rootzertifikat gemacht haben, können Sie alle Maschinen-SSL-Zertifikate ersetzen.

Diese Schritte sind im Wesentlichen mit den Schritten zum Ersetzen durch ein Zertifikat, das VMCA als Zertifizierungsstelle verwendet, identisch. In diesem Fall signiert jedoch VMCA alle Zertifikate mit der vollständigen Zertifikatskette.

Für jede Maschine ist ein Maschinen-SSL-Zertifikat für die sichere Kommunikation mit anderen Diensten erforderlich. Wenn mehrere vCenter Server-Instanzen in der Konfiguration des erweiterten verknüpften Modus verbunden sind, müssen Sie die Befehle zum Generieren von Maschinen-SSL-Zertifikaten auf jedem Knoten ausführen.

Voraussetzungen

SubjectAltName muss für jedes Maschinen-SSL-Zertifikat DNS Name=<Machine FQDN> enthalten.

Prozedur

  1. Erstellen Sie eine Kopie von certool.cfg für jede Maschine, für die ein neues Zertifikat erforderlich ist.
    Die Datei certool.cfg befindet sich im Verzeichnis /usr/lib/vmware-vmca/share/config/.
  2. Bearbeiten Sie die benutzerdefinierte Konfigurationsdatei für jede Maschine, um den FQDN dieser Maschine anzugeben.
    Führen Sie NSLookup für die IP-Adresse der Maschine aus, um die DNS-Liste für den Namen anzuzeigen, und verwenden Sie diesen Namen für das Feld „Hostname“ in der Datei.
  3. Generieren Sie für jede Maschine ein öffentliches/privates Schlüsseldateipaar sowie ein Zertifikat und übergeben Sie die Konfigurationsdatei, die Sie soeben angepasst haben.
    Beispiel:
    certool --genkey --privkey=machine1.priv --pubkey=machine1.pub
    certool --gencert --privkey=machine1.priv --cert machine42.crt --Name=Machine42_Cert --config machine1.cfg
  4. Beenden Sie alle Dienste und starten Sie die Dienste für die Zertifikaterstellung, Weitergabe und Speicherung.
    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  5. Fügen Sie VECS das neue Zertifikat hinzu.
    Alle Maschinen benötigen das neue Zertifikat im lokalen Zertifikatspeicher für die Kommunikation über SSL. Zunächst löschen Sie den vorhanden Eintrag und fügen dann den neuen Eintrag hinzu.
    vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT  
    vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert machine1.cert
    --key machine1.priv
  6. Starten Sie alle Dienste neu.
    service-control --start --all
    

Beispiel: Ersetzen der Maschinen-SSL-Zertifikate (VMCA ist die Zwischenzertifizierungsstelle)

  1. Erstellen Sie eine Konfigurationsdatei für das SSL-Zertifikat und speichern Sie sie unter dem Namen ssl-config.cfg im aktuellen Verzeichnis.
    Country = US
    Name = vmca-<FQDN-example>
    Organization = VMware
    OrgUnit = VMware Engineering
    State = California 
    Locality = Palo Alto
    Hostname = <FQDN>
  2. Generieren Sie ein Schlüsselpaar für das Maschinen-SSL-Zertifikat. Führen Sie diesen Befehl auf jedem vCenter Server-Knoten in einer Bereitstellung mit mehreren vCenter Server-Instanzen aus, die in der Konfiguration des erweiterten verknüpften Modus verbunden sind.
    /usr/lib/vmware-vmca/bin/certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
    

    Die Dateien ssl-key.priv und ssl-key.pub werden im aktuellen Verzeichnis erstellt.

  3. Generieren Sie das neue Maschinen-SSL-Zertifikat. Dieses Zertifikat ist VMCA-signiert. Wenn Sie das VMCA-Rootzertifikat durch ein benutzerdefiniertes Zertifikat ersetzt haben, signiert VMCA alle Zertifikate mit der vollständigen Zertifikatskette.
    /usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg

    Die Datei new-vmca-ssl.crt wird im aktuellen Verzeichnis erstellt.

  4. (Optional) Listen Sie den Inhalt von VECS auf.
    /usr/lib/vmware-vmafd/bin/vecs-cli store list
    • Beispiel-Ausgabe am 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
  5. Ersetzen Sie das Maschinen-SSL-Zertifikat in VECS durch das neue Maschinen-SSL-Zertifikat. Die Werte --store und --alias müssen genau mit den Standardnamen übereinstimmen.
    • Führen Sie auf jedem vCenter Server die folgenden Befehle aus, um das Maschinen-SSL-Zertifikat im MACHINE_SSL_CERT-Speicher zu aktualisieren. Sie müssen das Zertifikat für jede Maschine separat aktualisieren, da jedes Zertifikat einen unterschiedlichen FQDN aufweist.
      /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