SSL-Zertifikat der Netapp Virtual Storage Console 6.x austauschen

Standardmäßig wird bei/nach der Installation der Netapp Virtual Stroage Console für VMWare vSphere 6.x ein Self-Signed SSL-Zertifikat ausgestellt. Was natürlich zur Folge hat, dass beim Aufruf des Plugins im vSphere Client eine Warnung für das Zertifikat erscheint. Möchte man dieses Zertifikat ersetzen, so ist das mit ein bisschen Aufwand möglich.

1) Den Dienst Virtual Storage Console for VMware vSphere Server beenden.
2) Die Dateien nvpf.keystore und keystore.properties im Verzeichnis C:\Program Files\NetApp\Virtual Storage Console\etc an einen anderen Ort kopieren. Falls etwas schief geht, so kann problemlos auf die Sicherung zurückgegriffen werden.
3) Eine Eingabeaufforderung als Administrator starten und ins Programmverzeichnis wechseln:

cd "C:\Program Files\NetApp\Virtual Storage Console\jre\bin"

4) Den akuellen Inhalt der Datei nvpf.keystore anzeigen

keytool -list -keystore "C:\Program Files\NetApp\Virtual Storage Console\etc\nvpf.keystore"

Das erforderliche Passwort steht in der Datei keystore.properties in der Zeile „http.ssl.keystore.password=“. Diese per Kopieren und Einfügen eingeben.
netapp-vsc6-keystore-selfsigned-certificate

5) Das signierte Zertifikat muss im Format PKCS12 (.pfx) vorliegen und in meinen Fall unter C:\Temp abgelegt.
6) Nun muss aus der PFX-Datei der Alias ausgelesen werden.

keytool -list -keystore "C:\Temp\lab01.wydler.eu.pfx" -storetype pkcs12 -v | findstr /i "alias"

Falls die Datei ebenfalls mit einem Passwort geschützt würde, ist dieses nun einzugeben. Das Ergebnis sieht bei mir so aus.
netapp-vsc6-signed-pfx-aliasname
Den Alias am Besten in eine Textdatei notieren.
7) Die PFX-Datei in den vorhandenen Keystore einlesen.

keytool.exe -v -importkeystore -srckeystore "C:\Temp\deiname.pfx" -srcstoretype pkcs12 -srcstorepass PASSWORTDERPFXDATEI -srcalias "ALIASDERPFXDATEI" -destkeystore "C:\Program Files\NetApp\Virtual Storage Console\etc\nvpf.keystore" -deststoretype JKS -deststorepass http.ssl.keystore.password -destkeypass http.ssl.key.password -destalias "nvpf"

Den Wert für http.ssl.keystore.password und http.ssl.key.password steht in der Datei keystore.properties.
Beim Ausführen der Aktion wird nachgefragt, ob der vorhandenen Eintrag überschrieben werden soll. Als Bestätigung „Ja“ eingeben und mit Enter bestätigen.
8) Step 4) wiederholen und die Ausgabe prüfen. Wenn der Zertifikat-Fingerprint (SHA1) dem neuen Zertifikat entspricht, ist alles in Ordnung.
netapp-vsc6-keystore-ca-signed-certificate

9) Den Dienst Virtual Storage Console for VMware vSphere Server wieder starten.
10) VMWare vSphere Client starten und das Plugin „Netapp“ auswählen. Es erscheint nun keine Warnung mehr.

Update vom 06.02.2017
Mit der Version vSphere 6.5 gibt es keinen vSphere Client mehr und somit bleibt nur noch der Weg über den vSphere Webclient. Damit dieser auch dem neuen SSL-Zertifikat vertraut, sind nachfolgende Schritte auf dem vCenter Server notwendig.

11) Die Zertifiakte der Root-CA als auch aller Intermediate-CAs jeweils im BASE64-Format unter C:\Temp abspeichern.
12) Anschließend die Zertifikate via Eingabeauforderung in den Zertifiaktsspeicher des vCenters importieren.

"C:\Program Files\VMware\vCenter Server\vmafdd\dir-cli.exe" trustedcert publish --cert "C:\Temp\rootca01-base64.cer"
"C:\Program Files\VMware\vCenter Server\vmafdd\dir-cli.exe" trustedcert publish --cert "C:\Temp\intca01-base64.cer"

13) Anschließend überprüfen, ob die Zertifikate auch wirklich im Zertifiaktsspeicher gespeichert sind.

"C:\Program Files\VMware\vCenter Server\vmafdd\dir-cli.exe" trustedcert list
"C:\Program Files\VMware\vCenter Server\vmafdd\vecs-cli.exe" entry list --store TRUSTED_ROOTS

14) Evtl. ist es notwendig, manuell eine Aktualiserung des Speichers zu erzwingen

"C:\Program Files\VMware\vCenter Server\vmafdd\vecs-cli.exe" force-refresh

15) Zum Abschluss der Arbeiten den Windows Server neustarten.