Da der ESXI nun mit einem Webinterface ausgestattet ist, welches mittlerweile gut unter OSX funktioniert, möchte ich gerne komfortabler und sicherer auf das Webinterface zugreifen.
Dazu möchte ich gerne den Server mit einem gültigen öffentlichen 3 Jahres Zertifikat von Comodo ausstatten, welches ich auf meinem Exchange Server verwende. Dieses habe ich für ca. 15€ für insgesamt 3 Jahre über https://www.ssls.com bezogen.
Das ganze gestaltete sich jedoch schwieriger als ich dachte und ich war froh darüber, das ich Support vom VMWare-Forum bekommen hatte – hier besonderen Dank an ~thc, irix und mbreidenbach.
Vorbereitend benutzte ich einen Windowsrechner, wo ich OpenSSL 32 Bit installierte und mir dort einen Key und ein CSR erstellte, welches ich zertifizieren ließ und anschließend auf dem ESXI Host an die entsprechende Stelle brachte.
Dazu ging ich wie folgt auf dem Windowsrechner vor:
- In das Verzeichnis C:\OpenSSL\bin wechseln
- Die openssl.cfg weg sichern und den Inhalt ersetzen wie hier (Rot durch eigene Werte ersetzen):
[ req ] default_bits = 2048 default_keyfile = rui.key distinguished_name = req_distinguished_name encrypt_key = no prompt = no string_mask = nombstr req_extensions = v3_req [ v3_req ] basicConstraints = CA:FALSE keyUsage = digitalSignature, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth, clientAuth subjectAltName = DNS:esxi, IP:192.168.99.1, DNS:esxi.leibling.de [ req_distinguished_name ] countryName = DE stateOrProvinceName = Northrhine-Westfalia localityName = Koeln 0.organizationName = Familie Leibling organizationalUnitName = EDV commonName = esxi.leibling.de
- Den folgenden Befehl starten: openssl req -nodes -new -newkey rsa:4096 -sha512 -keyout rui.key -out rui.csr -config openssl.cfg
- Die rui.key benötigen wir später, aus dem rui.csr erstellen wir beim Zertifizieren einen Zertifikatsantrag.
- Wenig später sollte das fertige Zertifikat per Email zugesendet werden.
- Die Zipdatei Entpacken wir und wechseln auf der Befehlszeile in das Verzeichnis und geben dort folgenden Befehl ein (alles in einer Zeile, sollte euer Browser hier mehrere Zeilen erstellen, bitte diese zusammenführen): cat esxi_domain_de.crt COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > combined.crt - Bei mir war nun das Problem, das dieses Zertifikat im PKCS7-Format war und nicht wie benötigt im pem-Format (konnte man in der ersten Zeile erkennen wenn man die Datei in einem Texteditor öffnete) – die Lösung hier sollte sein, das man die combined.crt in das Verzeichnis C:\OpenSSL\bin kopiert und den folgenden Befehl eingibt – sollte die Datei schon im pem-Format gewesen sein, muss sie nur noch in rui.crt umbenannt werden. Der Befehl für die Konvertierung lautet: openssl pkcs7 -in combined.crt -print_certs -out rui.crt
- Nun schalten Sie auf dem ESXI SSH ein und erstellen Sie in einem Datastore einen Ordner ZERTIFIKATE. Laden Sie nun die Datei rui.crt und rui.key in den Ordner.
- Gehen Sie mit SSH auf den ESXI (z.B. unter Windows mit Putty oder unter OSX direkt im Terminal mit ssh ipadresse -lroot und verbinden sich zum ESXI.
- Gehen Sie in das Verzeichnis /etc/vmware/ssl und benennen Sie die Datei rui.crt und key.key um (z.B. mv rui.crt rui.crt.save und mv rui.key rui.key.save).
- Kopieren sie nun die neuen Dateien an den Ort (cp /vmfs/Volumes/datastorename/ZERTIFIKATE/rui.* ./ – beachten Sie bitte, das Linux Groß- und Kleinschreibung unterscheidet).
- Starten Sie den Webdienst neu (/etc/init.d/rhttpproxy restart).
Achtung: Sollten Sie eine Fehlermeldung erhalten, welche anzeigt das die Seite nicht geöffnet werden kann – sollten Sie unbedingt wieder die neuen Dateien umbenennen in z.B. rui.crt.new bzw. rui.key.new und die gesicherten *.save Dateien wieder zurück nennen und starten Sie den Dienst neu.
Ich hatte dies im ersten Durchgang nicht so getan und musste dummerweise den gesamten ESXI auf Werkseinstellungen zurücksetzen – zwar bleiben die VM’s dabei erhalten, jedoch war einer der Datastore der unter ESXI 6.0 erstellt war nicht mehr im Zugriff (diesen konnte ich auch nicht mit der Webgui wieder bekannt machen, sondern musste auf den VMWare Client zurückgreifen) und alle andern Informationen wie Netze, Autostartkonfigurationen, Lizenzen usw. waren weg. Zusätzlich waren keine VMs mehr registriert.
Übrigen läßt sich mit einem iPad wunderbar die Webgui bedienen – inklusive der VMs 😉 :
Links:
- http://vmware-forum.de/viewtopic.php?f=51&t=32394&p=179263#p179263
- https://pubs.vmware.com/vsphere-65/index.jsp?topic=%2Fcom.vmware.vsphere.security.doc%2FGUID-32AD28E1-53C3-48E6-96A9-FD9E4015D0B2.html
- https://www.freesoftwareservers.com/wiki/install-comodo-positivessl-in-esxi-6-0-host-3965671.html
- https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2113926#Generating%20a%20certificate%20request
- https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2015387