Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!

[solved] ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Alles zum Thema vSphere 6.5, ESXi 6.5 und vCenter Server.

Moderatoren: irix, Dayworker

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

[solved] ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 26.04.2017, 22:52

Hallo,

ich habe einen ESXI 6.5 (Free) zuhause im Einsatz, welchem ich ein öffentliches Zertifikat verpassen möchte. Dazu nutze ich wie bei meinen anderen Servern/Geräten ein Commodo Zertifikat verwenden.

Leider habe ich jedoch dabei Probleme, da ich nur Anweisungen finde, die sich auf vCenter-angebundene Server beziehen oder für ältere ESXI Versionen sind.

Leider weiß ich auch nicht genau, ob ich was beachten muss, da die Commodo’s Intermediate- und Root-Zertifikate benötigen.

Könntet ihr mir bitte weiterhelfen oder hättet ihr Links bzw. gar Howto’s die mir weiterhelfen könnten?

Vielen Dank vorab für eure Unterstützung.

King of the Hill
Beiträge: 12944
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon irix » 27.04.2017, 07:30

Moin,
hab noch nicht geschaut aber ich glaube nicht das sich am alten Ablageort /etc/vmware/ssl/ was geaendert hat.

Darf man fragen warum du oeffentliche Certs da verwendest und nicht eigene selbstsignierte?

Gruss
Joerg

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 27.04.2017, 07:31

Der ESXi speichert sein Zertifikat und den dazugehörigen Schlüssel unter

Code: Alles auswählen

/etc/vmware/ssl

als

Code: Alles auswählen

-rw-r--r--    1 root     root          1424 Apr 27 06:16 rui.crt
-r--------    1 root     root          1708 Apr 27 06:16 rui.key

Wenn dein Comodo-Zertifikat zusätzlich ein Intermediate-Zertifikat braucht, musst du beide zu einem kombinieren (die Reihenfolge ist wichtig):

Code: Alles auswählen

cat certificate.crt intermediate.crt > combined.crt

Letzeres musst du dann als rui.crt einsetzen.

1. Zertifikat/Key auf den ESXi hochladen
2. in der SSH-Shell rui.crt und rui.key ersetzen
3. Reverse Proxy neu starten

Code: Alles auswählen

/etc/init.d/rhttpproxy restart

King of the Hill
Beiträge: 12944
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon irix » 27.04.2017, 07:34

Was die anderen Eigenarten angeht so schau mal unter https://pubs.vmware.com/vsphere-65/inde ... 5D0B2.html nach.

Gruss
Joerg

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 27.04.2017, 19:35

Vielen lieben Dank für eure schnelle Hilfe.

Ich denke der Schlüssel ist die Lösung von THC, die Zertifikate zusammen zu fügen. Mir war nicht klar wie ich das bewerkstellige.

Ich werde es heute Abend testen und informieren.

P. S.: ein öffentliches, weil ich die selbsterstellten nicht verteilen möchte. Ich habe keine PKI und kein AD zum verteilen (überwiegend Macintosh, deswegen freue ich mich sehr über die Web Konsole und das Mac Plugin).

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 27.04.2017, 22:40

Hallo,

wollte es gerade umsetzen - jedoch habe ich nun auch schon direkt die ersten Fragen:

a) Ich wollte die beiden Dateien mit CAT zu einem neuen CRT Zusammenkopieren - doch ich habe mehrere Dateien:

AddTrustExternalCARoot.crt
COMODORSAAddTrustCA.crt
COMODORSADomainValidationSecureServerCA.crt
esxi_domain_de.crt


Muss ich die alle Zusammenkopieren und wenn ja, in welcher Reihenfolge?

b) Ich habe keine Rui.key, ich habe im Webinterface neues Zertifikat geklickt und dort wurde mir dann der Text für da CSR angezeigt, das habe ich verwendet - muss ich das inkl. des Textes "
-----BEGIN CERTIFICATE REQUEST-----
xxxxxxx
-----END CERTIFICATE REQUEST-----" einfach nur als Rui.key abspeichern?

Danach natürlich Dienst Neustarten usw.

Vielen, vielen Dank für eure Hilfe.

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 28.04.2017, 07:25

Du brauchst alle. Das Bundle muss die umgekehrte Validierungsreihenfolge haben:

Code: Alles auswählen

cat esxi_domain_de.crt COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > combined.crt

Bei dem letzten Root-CA bin ich mir nicht sicher, ob der Browser es nicht selbst vorhält - schaden tut es nicht.

Das vom Webinterface des Zertifikatsausstellers ausgespuckte Zertifikat entspricht hoffentlich dem "esxi_domain_de.crt" in deinem Beitrag. Wenn nicht, gehört es an diese Stelle.

Damit du deinem Zertifikatsaussteller eine CSR nennen kannst, muss eine erzeugt worden sein - bei diesem Prozess wird der passende Key mit erzeugt.

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 28.04.2017, 07:56

Hi,

danke dir (und auch allen anderen) für eure Mühen und deine Antwort.

Ich habe gestern noch im Web ein wenig recherchiert und folgende Anleitung gefunden:

https://www.freesoftwareservers.com/wik ... 65671.html

Dabei werden jedoch die Zertifikate in umgekehrter Reihenfolge (nicht so wie du angegeben hattest) zusammenkopiert.

Dazu habe ich das CSR das mir vom ESXI gegeben wurde (welches als Basis diente für das Zertifikat) als rui.key rübenkopiert. Zuvor hatte ich die Original rui.csr und rui.key vorher in *.orig umbenannt.

Da nach dem Diestneustart die Webseite des Servers nicht mehr angezeigt wurde habe ich den Server neugestartet wie in dem Link oben angezeigt wurde.

Tja, das hätte ich mal besser nicht gemacht - denn so hatte ich mir den ESXI geschrottet. Als erstes war das Webinterface immer noch nicht erreichbar, dann konnte ich mich nicht mal mehr über den Client anmelden, nur noch Konsole und SSH. Als ich die Zertifikate wieder zurückbennenen wollte staunte ich nicht schlecht, das die nicht mehr da waren (vorher waren die definitiv da, hatte vorher geschaut bevor ich die ersetzte - weiß nicht ob der Server ein Cleanup macht und das Verzeichnis selber "sauber" hält).

Auf jeden Fall blieb mir nichts mehr übrig als den ESXI zu redeten über die Konsole und wieder komplett neu einzurichten. Dabei hatte ich dann auch gesehen, das ich einen alten Datastore der vorher in einem ESXI 6.0 erstellt wurde (hatte vor kurzem erst migriert von meinem alten HP DL 380 G7 ESXI 6.0 auf den Dell T20 ESXI 6.5) nicht mehr einbinden konnte über den Webclient - mit dem Client ging es jedoch wieder.

Tja, aus mal eben testen wurde dann über eine Stunde konfigurieren :(.

Ich werde es dennoch am Wochenende mal mit deiner Anleitung testen - jedoch noch mal zu der rui.key:

Wenn ich neues Zertifikat erstellen klicke in der Webgui, da wird mir der CSR Text angezeigt - erstelle ich daraus die rui.key? Oder gibt es einen besseren Weg ein CSR und ein rui.key zu erstellen?

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 28.04.2017, 08:53

hardware123 hat geschrieben:Dabei werden jedoch die Zertifikate in umgekehrter Reihenfolge (nicht so wie du angegeben hattest) zusammenkopiert.

Nein, es sind nur zwei Schritte - die Reihenfolge in der Datei ist letztendlich dieselbe.

hardware123 hat geschrieben:Dazu habe ich das CSR das mir vom ESXI gegeben wurde (welches als Basis diente für das Zertifikat) als rui.key rübenkopiert. Zuvor hatte ich die Original rui.csr und rui.key vorher in *.orig umbenannt.

Die CSR-Datei (Certificate Signing Request) dient nur dazu, dem Zertifikatsaussteller zu ermöglichen, ein Zertifikat zu erzeugen, das zu deinem Schlüssel passt. Der Schlüssel ist eine eigene Datei, die beim Erzeugen des CSR gleichzeitig erzeugt wird.

hardware123 hat geschrieben:Da nach dem Diestneustart die Webseite des Servers nicht mehr angezeigt wurde habe ich den Server neugestartet wie in dem Link oben angezeigt wurde.

Wenn der Dienstneustart nicht zu einem funktionierenden Client führt, ist in diesem Fall ein Neustart des ESXi nicht notwendig. Nicht alles, was in solchen Anleitungen steht - und funktioniert - ist auch wirklich notwendig. Das Herunterfahren der VMs, der Maintenance-Mode, der Neustart: alles nicht notwendig.

hardware123 hat geschrieben:Tja, das hätte ich mal besser nicht gemacht - denn so hatte ich mir den ESXI geschrottet. Als erstes war das Webinterface immer noch nicht erreichbar, dann konnte ich mich nicht mal mehr über den Client anmelden, nur noch Konsole und SSH. Als ich die Zertifikate wieder zurückbennenen wollte staunte ich nicht schlecht, das die nicht mehr da waren (vorher waren die definitiv da, hatte vorher geschaut bevor ich die ersetzte - weiß nicht ob der Server ein Cleanup macht und das Verzeichnis selber "sauber" hält).

Der ESXi läuft aus einer RAM-Disk heraus - sämtliche von dir vorgenommenen Änderungen verschwinden dadurch (die Dateien "rui.crt" und "rui.key" werden beim Neustart gesichert).

hardware123 hat geschrieben:Wenn ich neues Zertifikat erstellen klicke in der Webgui, da wird mir der CSR Text angezeigt - erstelle ich daraus die rui.key? Oder gibt es einen besseren Weg ein CSR und ein rui.key zu erstellen?

Ich verstehe hier nicht, was du mit "Webgui" genau meinst.
Meine Anleitung von ganz oben bezieht sich auf folgendes Szenario:
- Du hast einen Zertifikatsaussteller
- Du erzeugst manuell (über OpenSSL oder ein Tool) einen Schlüssel und eine CSR
- Du erzeugst mit Hilfe der Weboberfläche des Zertifikatsausstellers eine CRT (aus dem CSR)
- Du nimmst den Schlüssel und die CRT und ersetzt die vorhandenen auf dem ESXi

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 00:24

Danke für deine Unterstützung.

Mit der Webgui meine ich die Webgui des ESXI selber, wenn ich mich einlogge und dann unter Host > Verwaltung > Sicherheit und Benutzer > Zertifikate > > FQDN-SIcherheitsanforderung erstellen >Neues Zertifikat exportieren und dann wird mir ein CSR angezeigt, mit dem ich das CRT auf der Seite meines Zertifikatsanbieters erstellt habe.

Siehe Anhang (aus Sicherheitsgründen habe ich natürlich den größten Teil herausgelöscht).

Wenn ich das so verwende, kann ich dann das vorhandene rui.key verwenden und ist das CSR basierend darauf ausgestellt?

Somit müsste ich dann nur die anderen Dateien wie oben angegeben Zusammenkopieren und gegen rui.crt austauschen sowie den Dienst neu starten?

Wenn der Key nicht darauf basieren sollte, wie kann ich auf der Shell einen eigene CSR erstellen und wie bekomme ich den Key dazu?

Danke vielmals für deine/eure Hilfe.
Dateianhänge
Bildschirmfoto 2017-04-29 um 00.17.06.png

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 29.04.2017, 08:11

hardware123 hat geschrieben:Wenn ich das so verwende, kann ich dann das vorhandene rui.key verwenden und ist das CSR basierend darauf ausgestellt?

Wenn du diesen Vorgang vollständig durchläufst, sollten Schlüssel, CSR und CRT zusammenpassen - ich kann das bei mir nicht nachstellen, da das Land des CSR "US" ist.

hardware123 hat geschrieben:Somit müsste ich dann nur die anderen Dateien wie oben angegeben Zusammenkopieren und gegen rui.crt austauschen sowie den Dienst neu starten?

Ja.

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 11:11

Und wieder Danke für deine schnelle Antwort. Ich habe mir mal das CSR angesehen, das der ESXI selber erstellt - sieht dann so aus:

CSR Information:
Common Name: esxi.domain.de
Subject Alternative Names: esxi.domain.de
Organization: VMware, Inc
Organization Unit: VMware ESX Server Default Certificate
Locality: Palo Alto
State: California
Country: US
Email: ssl-certificates@vmware.com

Ist natürlich wirklich nicht sehr schön.

Ich installiere mir auf meine Windows VM und erstelle ein richtiges CSR und auch entsprechende Key Datei laut hier:

https://kb.vmware.com/selfservice/micro ... %20request

Dann werde ich noch mal das Zertifikat neu erstellen und dann rui.key und rui.crt rüberkopieren. Diesmal sichere ich mir jedoch die Originaldateien in einem Datastore und Offsite.

Drück(t) mir die Daumen :).

Ich halte euch auf dem laufenden.

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 11:13

Noch eine Frage:

Code: Alles auswählen

cat esxi_domain_de.crt COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > combined.crt


Das combined.crt ist doch nachher das rui.crt, oder?

Danke.

Update: Uuups, sehe gerade das du das schon geschrieben hattest.

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 11:39

Hmm, leider wieder nicht geklappt :(.

Ist das wirklich so schwer?!?

Ich habe folgendes gemacht:

In einer Windows VM OpenSSL installiert und dann wie unter https://kb.vmware.com/selfservice/micro ... %20request beschreiben mit openssl req -new -nodes -out rui.csr -keyout rui-orig.key -config openssl.cfg das CSR erstellt, anschließend mit openssl rsa -in rui-orig.key -out rui.key eine konforme Keydatei erstellt.

Den erstellten CSR bei meinem SSL Anbieter Eingericht und ein entsprechendes Zertifikat erhalten - während des Vorgangs habe ich das CSR Decodieren lassen und konnte alles richtig verifizieren.

Mit dem von die angegeben Befehl habe ich die compined.crt Datei erstellt und diese dann in rui.crt umbenannt:
cat esxi_domain_de.crt COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > combined.crt


Anschließend habe ich die beiden Originaldateien umbenannt und die neuen Dateien rui.crt und rui.key rüberkopiert.

Zu guter letzt dann den Dienst neugestartet mir:
/etc/init.d/rhttpproxy restart

Mir wird angezeigt, das der Dienst erfolgreich gestoppt und wieder gestartet wurde, jedoch kann ich die Seite nun nicht mehr aufbauen - es erscheint folgende Meldung:
Safari kann keine Verbindung zur Seite https://esxi.domain.de aufbauen, da keine Verbindung aufgebaut werden kann.

Fast Zeitgleich kommt dann auch eine Meldung von meinem Monitoring, das es den ESXI nicht mehr erreicht.

Starte ich noch mal den Dienst neu bekomme ich nun jedoch die folgenden Meldung:
watchdog-rhttpproxy: PID file /var/run/vmware/watchdog-rhttpproxy.PID does not exist
watchdog-rhttpproxy: Unable to terminate watchdog: No running watchdog process for rhttpproxy
sh: you need to specify whom to kill
VMware HTTP reverse proxy started.

Rechtsproblem ist es nicht, da die neuen Dateien die selben Rechte und Owner haben wie die Originaldateien.

Was mache ich falsch?!?

Ich würde sagen, das ich mich richtig an alle Schritte gehalten habe - dennoch geht es nicht.

P.s.: Wenigstens konnte ich wieder mit dem zurückbennenen der Datei und des Neustarten des Dienstes wieder die Funktion wiederherstellen - umgehend bedankte sich auch mein Monitoring, das der ESXI wieder erreichbar ist.

Es wäre dennoch, nur zu schön wenn ich mein gekauftes echtes Zertifikat irgendwie einsetzen könnte :(.

Danke für eure Zeit, Mühen und eure Unterstützung.

Experte
Beiträge: 1006
Registriert: 30.10.2004, 12:41

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon mbreidenbach » 29.04.2017, 12:12

In den Zeiten vor VMCA habe das so gemacht:

irgendwo OpenSSL installiert
OpenSSL.cfg angepaßt
Private key + CSR erstellt
Public Key von CA erstellen lassen (hier: eine MS Enterprise CA)
key gecheckt ob das drinsteht was soll
private+public key auf ESXi kopieren
Management Agents neu starten

Bei den ESXen wird in den Public Key keine CA chain reinkopiert.

Dazu gibt es VMware KB Artikel. Auf derekseaman.com findet sich zu dem Thema auch viel Lesestoff. Die erste brauchbare Anleitung für 5.1 überhaupt (bevor es VMware KB Artikel gab bei denen nicht die Hälfte fehlte) fand ich auf http://longwhiteclouds.com/

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 29.04.2017, 12:17

hardware123 hat geschrieben:In einer Windows VM OpenSSL installiert und dann wie unter https://kb.vmware.com/selfservice/micro ... %20request beschreiben mit openssl req -new -nodes -out rui.csr -keyout rui-orig.key -config openssl.cfg das CSR erstellt, anschließend mit openssl rsa -in rui-orig.key -out rui.key eine konforme Keydatei erstellt.

Das ist in Ordnung so. Man kann sich den zweiten Schritt sparen, in dem man openssl anweist, den Key gleich im RSA-Format zu erzeugen:

Code: Alles auswählen

openssl req -nodes -new -newkey rsa:4096 -sha512 -keyout rui.key -out rui.csr -config openssl.cfg


hardware123 hat geschrieben:Mit dem von die angegeben Befehl habe ich die compined.crt Datei erstellt und diese dann in rui.crt umbenannt:
cat esxi_domain_de.crt COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > combined.crt

Da Zertifikate ja quasi-öffentliche Daten sind, kannst du dein combined.crt/rui.crt mal hier veröffentlichen, denn ich vermute, dass es irgendwie nicht korrekt ist.

King of the Hill
Beiträge: 12944
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon irix » 29.04.2017, 12:40

Also ich habe damals etwas mehr machen muessen. Das Zertikat muss ein paar Eigenarten aufwarten und die machen es notwendig das Openssl vorher konfiguriert werden muss. Der verlinkte KB sagt ja auch ganz deutlich das man noch 7643 andere KBs lesen sollte. Gemeint ist https://kb.vmware.com/kb/2015387

Gruss
Joerg

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 14:29

Vielen lieben dank für eure aktive und schnelle Hilfe.

Ich habe die openssl.cfg komplett geleert und aus dem KB Eintrag den Inhalt reimkopiert und entsprechend angepasst, anschließend mein CSR und Key neu erstellt und mit dem angepassten CSR wieder das Zertifikat neu erstellt.

Gemäß Anleitung wieder alles zusammenkopiert und auf den ESXI gebracht (key und crt). Nach Dienstneustart immer wieder das selbe Problem.

Ich habe mal das CRT wie gewünscht angehangen.

P.s.: Kann das hier noch das Problem sein:
Bei den ESXen wird in den Public Key keine CA chain reinkopiert.

Danke.
Dateianhänge
rui.crt.zip
(8.03 KiB) 245-mal heruntergeladen

Guru
Beiträge: 2731
Registriert: 23.02.2012, 12:26

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon ~thc » 29.04.2017, 15:29

Dein Zertifikat hat das falsche Format (PKCS7) - und enthält bereits alle vier Zertifikate der Kette!
Du brauchst ein Zertifikat im PEM-Format:

Code: Alles auswählen

openssl pkcs7 -in pc7format.crt -print_certs -out pemformat.crt

Ich habe es mal für dich umgewandelt:
Dateianhänge
rui.zip
(4.96 KiB) 230-mal heruntergeladen

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 29.04.2017, 16:23

Das ist der Hammer, das war das Problem - nun funktioniert es :).

Vielen, vielen lieben Dank für eure unermüdliche und schnelle Hilfe :).

Ich werde noch einen Blogeintrag erstellen und genau alle Schritte zusammenschreiben (sonst weiß ich das nicht mehr wenn ich das mal wieder in 2 oder 3 Jahren machen muss) und hier auf das Forum verlinken.

Ich hoffe das ist ok.

Member
Beiträge: 12
Registriert: 26.04.2017, 09:28

Re: [solved] ESXI 6.5 ohne vCenter öffentliches Zertifikat einrichten

Beitragvon hardware123 » 01.05.2017, 21:26

Hallo, wie versprochen hier der Blogbeitrag - ich hoffe ich habe alles richtig zusammengefasst:

http://www.leibling.de/2017/05/01/esxi-65-mit-zertifikat/

Dort habe ich auch erwähnt das dies dank eurer Unterstützung nun läuft :).

Danke an euch nochmals.


Zurück zu „vSphere 6.5“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste