Der erste Schritt beim Ersetzen des VMCA-Zertifikats durch benutzerdefinierte Zertifikate besteht im Generieren einer Zertifikatsignieranforderung (Certificate Signing Request, CSR) und im Senden der zu signierenden CSR. Anschließend fügen Sie das signierte Zertifikat als Root-Zertifikat zu VMCA hinzu.

Sie können das Certificate Manager-Dienstprogramm oder ein anderes Tool zum Generieren der Signaturanforderung verwenden. DIE CSR 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 kann entweder leer sein 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-Knowledgebase-Artikel „Creating a Microsoft Certificate Authority Template for SSL certificate creation in vSphere 6.0“ unter http://kb.vmware.com/kb/2112009 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üsselverwendung: Cert Sign
  • Basiseinschränkung: Betrefftyp Zertifizierungsstelle

Prozedur

  1. Generieren Sie eine Zertifikatsignieranforderung und senden Sie sie an Ihre Zertifizierungsstelle.
    Befolgen Sie die Anweisungen Ihrer Zertifizierungsstelle.
  2. Bereiten Sie eine Zertifikatdatei vor, die das signierte VMCA-Zertifikat sowie die vollständige Zertifikatkette Ihrer Drittanbieter- oder Unternehmenszertifizierungsstelle enthält. 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 beginnen mit dem VMCA-Root-Zertifikat und am Ende haben Sie das PEM-Zertifikat der Root-Zertifizierungsstelle. 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.
    Hinweis: Wenn in Ihrer Umgebung ein externer Platform Services Controller verwendet wird, brauchen Sie VMware Directory Service (vmdird) und VMware Certificate Authority (vmcad) auf dem vCenter Server-Knoten nicht zu beenden und zu starten. Diese Dienste werden unter dem Platform Services Controller ausgeführt.
    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 Directory Service) 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
    

Beispiel: 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:\Program Files\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 das vCenter Single Sign-On-Signaturzertifikat ersetzen. Weitere Informationen hierzu finden Sie unter Aktualisieren des Zertifikats für den Security Token Service.