Bei der Installation eines ESXi Servers erstellt dieser ein eigenes (untrusted) Host Zertifikat. Dieses ist ausgestellt auf den FQDN des ESXi. Im Zusammenhang damit brachte mich heute die Ausführung eines Perl-Skriptes nahe an die Verzweiflung. Ein bisher im problemlos funktionierendes Skript warf Zertifikatsfehler.
Can't connect to 10.0.0.101 (certificate verify failed)
Natürlich kommen beim untrusted Zertifikat des ESXi immer Zertifikatswarnungen. Das ist normal, denn schließlich ist die Echtheit nicht offiziell bestätigt. Warum machte aber das Perl-Skript jetzt Probleme? Der ESXi war korrekt im DNS registriert. Ich startete eine Browsersitzung (IE) auf den ESXi Server.
Diese Meldung ist normal. Denn das Zertifikat ist (für den IE) nicht vertrauenswürdig. Klickt man auf Fortsetzen, so kann man sich das Zertifikat ansehen indem man auf die Zertifikatswarnung neben der Adresszeile klickt.
Das ESXi Hostzertifikat war ausgestellt auf localhost.localdomain. Ein sicheres Zeichen, daß der Name des ESXi nachträglich geändert wurde, oder zunächst beim Setup vergessen wurde.
Neues Hostzertifikat
- SSH Service am ESXi starten
- Login via ssh auf den ESXi Host
/sbin/create_certificates
Gelegentlich heisst es auch:
/sbin/generate-certificates
- Reboot ESXi
- vSphere Client schließen (wichtig!)
- vSphere Client neu mit ESXi verbinden
- Jetzt muss ein neues Zertifikat akzeptiert werden (falls nicht ist zuvor etwas falsch gelaufen)
[UPDATE: Bei ESXi 5.5 Hosts müssen zusätzliche Schritte durchgeführt werden. Beschrieben in diesem Artikel]
Links
VM-Help.com – Change your host’s network name and SSL certificate. Die Seite beschreibt den Vorgang für ESX 3i. Die Commandlets haben sich inzwischen leicht geändert und haben neue Namen. Dennoch war dieser Blogeintrag sehr hilfreich für mich.