root-Passwort eines unverwalteten ESXi-Servers neu setzen

von Thomas, assono GmbH, Standort Kiel, 15.11.2023

Die Rahmenbedingungen sind sicher nicht sehr typisch, kann aber sicher auch mal hier und da wieder auftreten - deshalb schreibe ich diesen Artikel:

Die Situation:

  • VMware ESXi-Server 7.0.3, standalone (also ohne vCenter)
  • Es gibt einen SSH-Zugang - natürlich per privatem Schlüssel.
  • Das root-Passwort wurde "vergessen".
  • Es gibt keinen anderen Benutzer mit Administrationsrechten, der sich anmelden kann.

Es kann sich also niemand mehr auf der Web-GUI oder direkt am Server anmelden, außer eben über den SSH-Zugang, der nicht über Passwort, sondern über ein Public-/Private-Key-Paar erfolgt.

Wenn man im Web recherchiert, findet man einige Treffer, die im Wesentlichen vier Methoden beschreiben. Ein besonders ausführlicher Artikel findet man z. B. auf dem NAKIVO-Blog: The Best Way to Reset the ESXi Default Password

Methode 1: Recovering an ESXi Default Password by Using VMware Host Profiles

Das scheidet hier aus, da der ESXi-Server nicht über vCenter verwaltet wird (und es auch keine VMware Enterprise Plus-Lizenz gibt, die auch Voraussetzung wäre).

Methode 2: ESXi Password Recovery in Active Directory

Dafür hätte der ESXi-Server schon vorher mit einem Active Directory verbunden worden sein müssen.

Methode 3: Resetting an ESXi Password by Editing /etc/shadow

Mit einem Live-Linux booten (erfordert also einen Neustart), und von außen die richtigen Stellen bearbeiten und so das root-Passwort erst einmal löschen. Nach dem zweiten Neustart kann man sich auf der Konsole als root ohne Passwort anmelden und ein neues setzen. Es gibt also auf alle Fälle eine Downtime. Und wenn es nicht klappt, laufen die VMs vielleicht nicht mehr an.

Methode 4: Changing an ESXi Default Password by Replacing the state.tgz Archive

Eine Variante von Methode 3. Wenn man einen weiteren ESXi-Server hat (oder zufällig eine Sicherung der notwendigen Dateien), kann man die Konfiguration vom anderen Server bzw. aus der Sicherung an den richtigen Platz legen. Nachteile: siehe Methode 3.

passwd geht (scheinbar) nicht mehr

Eigentlich sollte es ganz einfach gehen, wenn man dem Knowledge-Base-Artikel von VMware glaubt: Changing an ESXi/ESX host root password (1004659)

Einloggen per SSH, su - und dann passwd root.

Leider hatte das in meinem Fall keine Wirkung. In den Notes steht dann auch:

"In ESXi 3.5 and later versions, reinstalling the ESXi software is the only supported way to reset a password if the root password is forgotten."

Drüber installieren also. Gut, die VMs bleiben ja erhalten, aber trotzdem eine ordentliche Downtime.

ESXCLI zur Rettung

Über Artikel, die die PowerShell-Schnittstelle beschreiben, bin ich dann auf die für mich perfekte Fährte gestoßen: die ESXCLI-System-Befehle!

Hier ist die Dokumentation zu selbigen: ESXi 7.0 U3 ESXCLI Command Reference

Mit esxcli system account set kann man einen vorhandenen, lokalen Benutzer anpassen, insbesondere das Passwort des Benutzers setzen.

esxcli system account set help gibt eine kurze Hilfe aus.

Aber vorher schnell ein esxcli system account list, um die aktuelle Benutzerliste auszugeben.

Das finale Kommando war dann:

esxcli system account set -d "Administrator" -i root -p "****************" -c "****************"

Die Wirkung war sofort und gründlich. Ohne Downtime konnte sich root jetzt wieder anmelden.

Und am besten sofort einen zweiten Administrator-Benutzer erstellen für das nächste Mal.

Thomas Bahn

Thomas Bahn

Diplom-Mathematiker, IT-Spezialist & Speaker auf Fachkonferenzen

Thomas Bahn ist Mitgründer und Geschäftsführer der assono GmbH. Seit mehr als 20 Jahren berät er erfolgreich Unternehmen aus ganz Deutschland rund um das Thema Software und Digitalisierung. Insbesondere in den Bereichen HCL Notes und Domino (ehemals IBM) als auch bei aktuellen, unternehmensrelevanten KI-Themen wie Chatbots kennt er die neusten Entwicklungen und weiß, wie diese sich gewinnbringend für Unternehmen einsetzen lassen. Aufgrund seines Expertenwissens ist Thomas Bahn regelmäßiger Sprecher auf nationalen und internationalen Fachkonferenzen.

Fachbeitrag Administration Für Entwickler

Sie haben Fragen zu diesem Artikel? Kontaktieren Sie uns gerne: blog@assono.de

Sie haben Interesse an diesem Thema?

Gerne bieten wir Ihnen eine individuelle Beratung oder einen Workshop an.

Kontaktieren Sie uns

Weitere interessante Artikel