Der erste Schritt beim Ersetzen des VMCA-Zertifikats durch benutzerdefinierte Zertifikate besteht im Generieren einer Zertifikatsignieranforderung (Certificate Signing Request, CSR) und im Hinzufügen des Zertifikats, das als Root-Zertifikat an VMCA zurückgesendet wird.

Warum und wann dieser Vorgang ausgeführt wird

Das Zertifikat, das Sie zum Signieren senden, muss die folgenden Anforderungen erfüllen:

  • Schlüsselgröße: mindestens 2.048 Bit

  • PEM-Format. VMware unterstützt PKCS8 und PKCS1 (RSA-Schlüssel). Wenn Schlüssel zu VECS hinzugefügt werden, werden sie in PKCS8 konvertiert.

  • x509 Version 3

  • Wenn Sie benutzerdefinierte Zertifikate verwenden, muss die Zertifizierungsstellenerweiterung für Stammzertifikate auf „true“ festgelegt werden, und „cert sign“ muss in der Liste der Anforderungen vorhanden sein.

  • CRL-Signatur muss aktiviert sein.

  • „Erweiterte Schlüsselverwendung“ darf keine Clientauthentifizierung oder Serverauthentifizierung enthalten.

  • Keine explizite Beschränkung der Zertifikatskettenlänge. VMCA verwendet den OpenSSL-Standardwert von 10 Zertifikaten.

  • Zertifikate mit Platzhalterzeichen oder mehr als einem DNS-Namen werden nicht unterstützt.

  • Untergeordnete Zertifizierungsstellen von VMCA können nicht erstellt werden.

    Im VMware Knowledge Base-Artikel 2112009, „Creating a Microsoft Certificate Authority Template for SSL certificate creation in vSphere 6.0“, finden Sie ein Beispiel für die Verwendung der Microsoft-Zertifizierungsstelle.

VMCA überprüft beim Ersetzen des Root-Zertifikats die folgenden Zertifikatattribute:

  • Schlüsselgröße von mindestens 2.048 Bit

  • Schlüsselnutzung: „Cert Sign“

  • Basiseinschränkung: „Subject Type CA“

Prozedur

  1. Generieren Sie eine Zertifikatsignieranforderung und senden Sie sie an Ihre Zertifizierungsstelle.

    Befolgen Sie die Anweisungen Ihrer Zertifizierungsstelle.

  2. Bereiten Sie eine Zertifikatsdatei vor, die das signierte VMCA-Zertifikat sowie die vollständige Zertifikatskette Ihrer Drittanbieter- oder Unternehmenszertifizierungsstelle enthält, und speichern Sie die Datei beispielsweise unter dem Namen rootca1.crt.

    Zu diesem Zweck können Sie alle Zertifizierungsstellenzertifikate im PEM-Format in eine einzige Datei kopieren. Sie müssen mit dem VMCA-Root-Zertifikat beginnen und mit dem PEM-Zertifikat der Root-Zertifizierungsstelle enden. Beispiel:

    -----BEGIN CERTIFICATE-----
    <Certificate of VMCA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of intermediary CA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of Root CA>
    -----END CERTIFICATE-----
  3. Beenden Sie alle Dienste und starten Sie die Dienste für die Zertifikaterstellung, Weitergabe und Speicherung.

    Die Dienstnamen sind unter Windows und bei der vCenter Server Appliance unterschiedlich.

    Windows

    service-control --stop --all
    service-control --start VMWareAfdService
    service-control --start VMWareDirectoryService
    service-control --start VMWareCertificateService
    

    vCenter Server Appliance

    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  4. Ersetzen Sie die vorhandene VMCA-Root-Zertifizierungsstelle.
    certool --rootca --cert=rootca1.crt --privkey=root1.key

    Bei der Ausführung dieses Befehls passiert Folgendes:

    • Das neue benutzerdefinierte Root-Zertifikat wird dem Zertifikatspeicherort im Dateisystem hinzufügt.

    • Das benutzerdefinierte Root-Zertifikat wird an den TRUSTED_ROOTS-Speicher in VECS angehängt (nach einer Verzögerung).

    • Das benutzerdefinierte Root-Zertifikat wird zu vmdir hinzugefügt (nach einer Verzögerung).

  5. (Optional) : Zur Weitergabe der Änderung an alle Instanzen von vmdir (VMware-Verzeichnisdienst) veröffentlichen Sie das neue Root-Zertifikat in vmdir und geben Sie dabei für jede Datei den vollständigen Dateipfad an.

    Beispiel:

    dir-cli trustedcert publish --cert rootca1.crt

    Die Replizierung zwischen vmdir-Knoten erfolgt alle 30 Sekunden. Sie müssen das Root-Zertifikat nicht explizit zu VECS hinzufügen, da vmdir von VECS alle fünf Minuten auf neue Root-Zertifikatsdateien überprüft wird.

  6. (Optional) : Bei Bedarf können Sie die Aktualisierung von VECS erzwingen.
    vecs-cli force-refresh
  7. Starten Sie alle Dienste neu.
    service-control --start --all
    

Ersetzen des Root-Zertifikats

Ersetzen Sie das VMCA-Root-Zertifikat durch das benutzerdefinierte Root-Zertifikat der Zertifizierungsstelle, indem Sie den certool-Befehl mit der Option --rootca verwenden.

C:\>"C:\Programme\VMware\vCenter Server\vmcad\certool" --rootca --cert=C:\custom-certs\root.pem -–privkey=C:\custom-certs\root.key

Bei der Ausführung dieses Befehls passiert Folgendes:

  • Das neue benutzerdefinierte Root-Zertifikat wird dem Zertifikatspeicherort im Dateisystem hinzufügt.

  • Das benutzerdefinierte Root-Zertifikat wird an den TRUSTED_ROOTS-Speicher in VECS angehängt.

  • Das benutzerdefinierte Root-Zertifikat wird zu vmdir hinzugefügt.

Nächste Maßnahme

Sie können das ursprüngliche VMCA-Root-Zertifikat aus dem Zertifikatspeicher entfernen, wenn die Unternehmensrichtlinien dies verlangen. In diesem Fall müssen Sie diese internen Zertifikate aktualisieren: