Jeder Benutzer, der den ESXi-Hypervisor installiert, muss das Root-Passwort festlegen, aber Benutzer und Administratoren können das ESXi-Standardpasswort nicht ändern, wenn es vergessen oder verloren geht. Dieser Ansatz ist möglicherweise nicht optimal aus Sicherheitssicht, aber manchmal unvermeidlich.
Wenn ein ESXi-Server eingerichtet und konfiguriert ist und alles ordnungsgemäß funktioniert, loggt sich ein Systemadministrator möglicherweise lange nicht in den ESXi-Server ein. Der ESXi-Host kann gelegentlich nach Stromausfällen oder anderen Problemen neu gestartet werden. Das Passwort wird jedoch nicht benötigt, wenn Sie den ESXi-Host nicht von der ESXi-Konsole aus neu starten möchten. Irgendwann möchten Systemadministratoren möglicherweise jedoch einige Änderungen an der Konfiguration des ESXi-Servers vornehmen. Sie versuchen, das Root-Passwort einzugeben, das zum Einloggen und Neu konfigurieren des Servers erforderlich ist, nur um festzustellen, dass das Passwort vergessen wurde.
Unter diesen Umständen, wie können Sie sich in den ESXi-Server einloggen? Die Neuinstallation von ESXi ist keine gute Lösung, da die Erstellung einer neuen Konfiguration von Grund auf sowie die Erstellung und Konfiguration von VMs viel Aufwand erfordern.
Gibt es ein ESXi-Standardpasswort? Wie setzt man das ESXi-Standardpasswort ohne Neuinstallation des Servers zurück? Keine Sorge, hier ist die Antwort auf diese Frage. Der heutige Blogbeitrag erklärt, wie man das ESXi-Passwort für den Root-Benutzer zurücksetzt, ohne ESXi auf dem Server neu zu installieren.
Zunächst sollte erwähnt werden, dass es kein ESXi-Standardpasswort gibt. Es ist nur möglich, ein Passwort für einen Root-Benutzer mithilfe einiger Tricks zu ändern oder zu entfernen. Lassen Sie uns beginnen!
Wiederherstellung eines ESXi-Standardpassworts mithilfe von VMware-Hostprofilen
VMware Host Profiles ist die Enterprise-Grade-Funktion, die dazu beiträgt, die einheitliche Konfiguration für mehrere ESXi-Hosts anzuwenden und den Prozess der Bereitstellung einer großen Anzahl von ESXi-Hosts zu vereinfachen. Auf diese Weise können Sie vermeiden, jeden Host manuell zu konfigurieren. Erstellen Sie ein Hostprofil und wenden Sie das Profil auf alle erforderlichen ESXi-Hosts im vCenter an. Diese Funktion kann auch dabei helfen, das ESXi-Passwort für den Root-Benutzer zurückzusetzen.
VMware Host Profiles können verwendet werden, um das ESXi-Root-Passwort zurückzusetzen, wenn die folgenden Ausgangsbedingungen erfüllt sind:
- ESXi-Hosts werden von vCenter verwaltet.
- Sie verwenden die VMware Enterprise Plus-Lizenz (Host Profiles ist eine Funktion, die nur für die Enterprise Plus-Edition von vSphere oder höhere Editionen verfügbar ist).
Im aktuellen Beispiel handelt es sich um folgende Maschinen:
- Ein ESXi-Server, dessen Passwort verloren gegangen ist – 192.168.101.211
- Ein ESXi-Server, dessen Passwort bekannt ist – 192.168.101.215
- vCenter Server – 192.168.101.103
Es werden VMware ESXi 6.7 und vCenter Server Appliance 6.7 verwendet.
Schritt-für-Schritt-Anleitung
- Öffnen Sie den VMware vSphere Web Client (der HTML5 vSphere Web Client wird in diesem Fall verwendet), indem Sie die IP-Adresse Ihres vCenter Servers in einen Webbrowser eingeben. In diesem Beispiel ist https://192.168.101.103 die erforderliche Adresse.
- Gehen Sie zu Host-Profile, die Sie im Verknüpfungen-Menü finden können.
- Klicken Sie auf Host-Profil extrahieren.
- Auf dem Popup-Bildschirm wählen Sie den ESXi-Host aus, den Sie als Grundlage für die Erstellung eines Hostprofils verwenden möchten. In diesem Beispiel wurde 192.168.101.215 ausgewählt. Klicken Sie auf Weiter.
- Geben Sie den Namen des neuen extrahierten Profils ein, zum Beispiel ESXi-Passwort. Geben Sie die Beschreibung ein, wenn erforderlich. Klicken Sie auf Beenden.
- Dann wählen Sie im Menü Host-Profile das kürzlich erstellte Hostprofil aus (ESXi-Passwort in diesem Fall). Klicken Sie mit der rechten Maustaste auf das erstellte Hostprofil und wählen Sie im Kontextmenü Host-Profil bearbeiten.
- Erweitern Sie das Menü im linken Bereich des neuen Assistentenfensters und gehen Sie zu Sicherheit und Dienste > Sicherheitseinstellungen > Sicherheit > Benutzerkonfiguration > root.
- Deaktivieren Sie alle nicht notwendigen Optionen.
- Wählen Sie Fixe Passwortkonfiguration aus dem Dropdown-Menü aus.
-
Geben Sie ein neues ESXi-Passwort ein (zum Beispiel „ChangeMe_357“) für root ein, bestätigen Sie das Passwort und klicken Sie auf Speichern.
Hinweis: Wenn Sie ein Hostprofil von einem ESXi extrahiert haben, dessen Passwort vergessen wurde, ist die Änderung des Passworts in diesem Schritt erforderlich. Wenn Sie ein Hostprofil von einem ESXi-Host extrahiert haben, dessen Passwort bekannt ist, können Sie das Passwort unverändert lassen.
- Das Hostprofil für das ESXi-Passwort wurde nach der Bearbeitung gespeichert.
Stellen Sie sicher, dass der ESXi-Host, dessen root-Passwort zurückgesetzt werden muss, eingeschaltet ist. - Gehe zu Host-Profile, klicke mit der rechten Maustaste auf das Host-Profil, das du zuvor bearbeitet hast (ESXi-Passwort), und wähle Hosts und Cluster anhängen/lösen.
- Wähle den ESXi-Host aus, dessen Root-Passwort du nicht kennst (aktiviere das Kontrollkästchen). In unserem Fall ist das 192.168.101.211. Klicke auf Speichern.
-
Setzen Sie Ihren wiederhergestellten ESXi-Host in den Wartungsmodus – gehen Sie zu Hosts und Clusters, klicken Sie mit der rechten Maustaste auf den Host und klicken Sie im Kontextmenü auf Wartungsmodus > Wartungsmodus aktivieren. Das Symbol Ihres ESXi-Hosts wird danach im Webinterface geändert. Wenn auf dem ESXi-Host, dessen Passwort Sie wiederherstellen möchten, VMs ausgeführt werden, fahren Sie bitte alle laufenden VMs herunter oder migrieren Sie die laufenden VMs zu anderen ESXi-Hosts innerhalb von vCenter mithilfe des VMware vSphere Client.
Hinweis: Der Wartungsmodus ist ein spezieller Modus, der für einen ESXi-Host verwendet werden muss, wenn der Host in Betrieb ist, z. B. bei der Installation von Speicher, Software-Updates, Anwendung von Patches usw. Nach dem Eintritt in den Wartungsmodus und der Migration oder dem Herunterfahren der VMs kann ein ESXi-Host neu gestartet oder ausgeschaltet werden.
- Wenn sich der ESXi-Host, dessen Passwort wiederhergestellt werden muss, im Wartungsmodus befindet, gehen Sie zu Hostprofilen, klicken Sie mit der rechten Maustaste auf das Hostprofil und wählen Sie Beheben.
- In dem erscheinenden Fenster wählen Sie den ESXi-Host aus, dessen Passwort verloren gegangen ist, indem Sie das Kontrollkästchen aktivieren (192.168.101.211 in unserem Fall).
- Sie können auf Vorüberprüfung der Behebung klicken, um den Zielhost zu überprüfen.
- Zum Abschluss klicken Sie auf Beheben.
- Nach erfolgreicher Behebung verlassen Sie den Wartungsmodus (klicken Sie mit der rechten Maustaste auf den ESXi-Host und wählen Sie Wartungsmodus verlassen).
- Versuchen Sie, sich mit dem in Ihrem Hostprofil festgelegten Passwort (ChangeMe_357 wurde in diesem Fall als ESXi-Passwort für root festgelegt) an der ESXi-Hostkonsole als root anzumelden.
Jetzt sollte alles ordnungsgemäß funktionieren – ein ESXi-Passwort für root wird zurückgesetzt und der Zugriff auf den ESXi-Host wiederhergestellt. Sie können jetzt ein neues komplexes Passwort für Ihren ESXi-Host festlegen.
ESXi-Passwortwiederherstellung in Active Directory
Wenn Sie keine Enterprise Plus-Lizenz für Ihr vSphere haben, gibt es keinen Grund zur Traurigkeit. Sie können ein vergessenes ESXi-Standartpasswort zurücksetzen, indem Sie die Integration in Active Directory verwenden, die keine Lizenz der obersten Klasse erfordert.
VMware vSphere kann mit Active Directory integriert werden, das normalerweise für das zentrale Management von Benutzern und Computern verwendet wird. Sie können jeden ESXi-Host in eine Active Directory-Domäne einbinden und dann das auf dem Active Directory-Domänencontroller erstellte Konto verwenden, um sich am ESXi-Host anzumelden. Der Active Directory-Authentifizierungsmechanismus kann in vSphere verwendet werden, dank der Implementierung des PAM (Pluggable Authentication Module)-Frameworks für ESXi. Diese Funktion kann verwendet werden, um das ESXi-Passwort für den root-Benutzer auf einem Host zurückzusetzen. Der ESXi-Host muss von vCenter verwaltet werden, um diese Methode verwenden zu können, und Sie sollten einen Active Directory-Domänencontroller in Ihrem Inventar haben.
Hinweis: In den ESXi-Einstellungen von VMware sollte die IP-Adresse des Domänencontrollers als DNS-Server angegeben werden, da der ESXi-Server den Domänen- und Domänencontroller-Namen auflösen können muss. Wie Sie sich erinnern können, unterscheidet sich die IP-Adresse des DNS-Servers in den Netzwerkeinstellungen Ihres ESXi-Servers von der IP-Adresse Ihres vorhandenen Domänencontrollers. Sie können eine temporäre Maschine (physisch oder virtuell) als Active Directory-Domänencontroller bereitstellen (Legen Sie die IP-Adresse des DNS-Servers fest, die in den Netzwerkeinstellungen des ESXi-Servers als IP-Adresse des Domänencontrollers definiert ist), verbinden den ESXi-Server mit diesem temporären Domänencontroller und treten der Domäne bei.
Als Alternative, wenn Sie einen konfigurierten Domänencontroller in Ihrer Umgebung haben, können Sie den vSphere Client öffnen, den ESXi-Host auswählen, dessen Passwort zurückgesetzt werden muss, zum Konfigurieren-Tab gehen, Networking auswählen > TCP/IP-Konfiguration und die IP-Adresse des entsprechenden vorhandenen Domänencontrollers als DNS-Server bearbeiten oder hinzufügen.
Hinweis: Sie können sehen, wie Sie einen Domänencontroller in dem eBook über das VMware-Clustering bereitstellen können.
Lassen Sie uns diese Methode Schritt für Schritt betrachten. Die Eingabedaten in diesem Beispiel lauten wie folgt:
- ESXi mit unbekanntem Root-Passwort: 192.168.101.211
- vCenter: 192.168.101.103
- Domänencontroller: 192.168.101.21
Der Active Directory-Domänencontroller (ADDC) wird in diesem Beispiel auf Windows Server 2008 R2 bereitgestellt.
Schritt-für-Schritt-Anleitung
Erstellen Sie einen neuen Benutzer mit dem Namen, zum Beispiel, esxi01 auf dem Domänencontroller in Active Directory-Benutzer und -Computer. Um dies zu tun, öffnen Sie Server-Manager, gehen Sie zu Rollen > Active Directory-Domänendienste > Active Directory-Benutzer und -Computer > [Ihr Domänenname] > Benutzer.
- Klicken Sie auf Aktion > Neu > Benutzer und geben Sie esxi01 als Benutzernamen ein. Klicken Sie auf Weiter. In unserem Beispiel ist der Domänenname domain.net.
- Legen Sie nun das Passwort für diesen esxi01-Benutzer fest, zum Beispiel ESXiDomain_777. Dieses Passwort wird nur als Beispiel für diese Demo verwendet, und es wird empfohlen, das Passwort in ein starkes, eindeutiges Passwort zu ändern, nachdem Sie den Root-Zugriff für Ihren ESXi-Host wiederhergestellt haben. Aktivieren Sie das Kontrollkästchen Passwort läuft nie ab.
- Klicken Sie auf Weiter und dann auf Fertigstellen.
- Jetzt müssen Sie die Gruppe ESX Admins auf Ihrem Active Directory-Domänencontroller erstellen. Der Gruppenname muss genau gleich sein. Benutzer, die Mitglieder der globalen Sicherheitsgruppe ESX Admins sind, erhalten automatisch Root-Berechtigungen auf einem ESXi-Host nach dem Anmelden. Später sollten Sie den Benutzer esxi01 zu dieser Gruppe hinzufügen. Es ist ratsam, Ihren Benutzer aus Sicherheitsgründen zur Anmeldung am ESXi-Host in die Gruppe ESX Admins anstatt zur Gruppe Domain Admins hinzuzufügen.
- Um eine neue Gruppe zu erstellen, gehen Sie im Server-Manager zu Aktion > Neu > Gruppe. Legen Sie ESX Admins als Gruppennamen fest, wie auf dem Bildschirmfoto gezeigt.
- Nachdem Sie die Gruppe ESX Admins erstellt haben, öffnen Sie die Gruppeneigenschaften und gehen Sie zum Mitglieder-Tab. Klicken Sie auf die Hinzufügen-Schaltfläche. Geben Sie den Namen Ihres ESXi-Benutzerkontos ein (esxi01 in diesem Fall) und klicken Sie auf Namen überprüfen. Wenn der Name korrekt eingegeben ist und unterstrichen wird, klicken Sie auf OK, um den Vorgang abzuschließen.
- Jetzt haben Sie den Benutzer esxi01, der Mitglied der Gruppe ESX Admins in Ihrer Active Directory-Domäne ist.
- Es ist an der Zeit, dass der ESXi-Server, dessen Root-Passwort Sie nicht mehr wissen, der Domäne beitritt. Öffnen Sie den vSphere HTML5-Webclient in Ihrem Browser. Öffnen Sie Hosts und Cluster.
- Klicken Sie mit der rechten Maustaste auf Ihren ESXi-Host, wechseln Sie zum Konfigurieren -Tab und wählen Sie dann Authentifizierungsdienste aus der Liste. Klicken Sie auf die Schaltfläche Domäne beitreten.
- Verwenden Sie die Anmeldeinformationen des Domänenadministrators, um der Domäne beizutreten. Standardmäßig ist Administrator Mitglied der Gruppe Domain Admins.
- Wenn Ihr ESXi-Host in der Domäne ist, verwenden Sie den VMware Host-Client, um sich beim ESXi-Host anzumelden, dessen Root-Passwort wiederhergestellt werden muss. Geben Sie die IP-Adresse Ihres ESXi-Hosts im Browser ein. In unserem Beispiel sollte https://192.168.101.211 eingegeben werden.
- Geben Sie [email protected] (den Active Directory-Benutzer, den Sie zuvor erstellt haben) als Benutzernamen ein und das auf dem Domänencontroller für diesen Benutzer festgelegte Passwort (ESXiDomain_777 sollte in diesem Fall als das standardmäßige ESXi-Passwort verwendet werden).
- Sobald Sie sich bei dem ESXi-Host angemeldet haben, dessen Passwort Sie vergessen haben, können Sie das Passwort für den Root-Benutzer zurücksetzen.
- Gehen Sie zu Verwalten > Sicherheit & Benutzer > Benutzer, wählen Sie root aus und klicken Sie auf das Bearbeiten-Symbol.
- Legen Sie ein neues, starkes und eindeutiges ESXi-Passwort für root auf dem ESXi-Host fest. Versuchen Sie, das Passwort nicht erneut zu vergessen!
Nachdem Sie das ESXi-Root-Passwort zurückgesetzt haben, entfernen Sie den ESXi-Host aus der Active Directory-Domäne, wenn die Domäne zukünftig nicht für die ESXi-Authentifizierung verwendet wird.
Zurücksetzen eines ESXi-Passworts durch Bearbeiten von /etc/shadow
Wenn Sie einen eigenständigen Host haben, der nicht von vCenter verwaltet wird, können Sie die beiden zuvor genannten Methoden nicht verwenden, um ein ESXi-Standardpasswort wiederherzustellen. Diese Methode kann in fast allen Fällen verwendet werden.
Theorie
Passwörter werden nicht als Klartext in den ESXi-Systemdateien gespeichert. Grundsätzlich speichert ESXi ähnlich wie Linux Passworthashes in einer speziellen /etc/shadow-Systemdatei, auf die nur der Root-Benutzer zugreifen kann. Passwörter erscheinen in diesem Fall verschlüsselt. Spezielle mathematische Algorithmen wie MD5, Blowfish, SHA-256, SHA-512 usw. werden verwendet, um das Quellpasswort in die Prüfsumme umzuwandeln. Die für die Berechnung einer Prüfsumme verwendeten Algorithmen sind nicht rückwärtskompatibel (Einwegverschlüsselung wird verwendet), daher ist es nicht möglich, umgekehrte Berechnungen durchzuführen, um das Originalpasswort zu erhalten.
Lassen Sie uns ein Beispiel für den String in /etc/shadow betrachten, der sich auf den Root-Benutzer bezieht:
root:$1$xxxx$xxxxxxxx:13355:0:99999:7:::
Dieser String und alle anderen Strings in der /etc/shadow-Datei enthalten die folgenden Daten:
- A user name (root);
- A password hash that is recorded in the $id$salt$hashed format; where $id$ is the algorithm for calculating a hash sum ($1$ is MD5, $2a$ and $2y$ are Blowfish, $5$ is SHA-256, $6$ is SHA-512).
- Das Datum der letzten Passwortänderung – die Anzahl der Tage seit dem 1. Januar 1970 (13355);
- Wie viele Tage übrig sind, bevor ein Benutzer sein Passwort ändern kann (0);
- Die Anzahl der Tage, die einem Benutzer bleiben, bevor er gezwungen wird, das Passwort zu ändern (99999);
- Die Anzahl der Tage, bevor ein Passwort abläuft und ein Benutzer benachrichtigt werden muss (7);
Die Felder sind durch das : (Doppelpunkt) Zeichen getrennt.
Wenn ein Benutzer ein Passwort eingibt, wird das eingegebene Passwort im Arbeitsspeicher des Computers mithilfe spezieller Algorithmen in die Hash-Summe umgewandelt und dieser Hash wird mit dem im /etc/shadow-Systemdatei gespeicherten Hash verglichen. Wenn die Hashes übereinstimmen, wird der Benutzer authentifiziert und nach der Autorisierung (das ist der nächste logische Schritt nach der Authentifizierung) erhält er die entsprechenden Berechtigungen.
Praxis
Zunächst sollten Sie eine Live-DVD vorbereiten. In diesem Beispiel wird die Ubuntu 18-Installationsdisk verwendet, die die Option Ubuntu Live DVD enthält. Laden Sie das ISO-Image der Ubuntu-Distribution von der offiziellen Webseite herunter. Sie können auch andere Distributionen verwenden, die Ihnen gefallen, z.B. Kali Linux, BackTrack, Debian, GParted Live CD usw.
- Brennen Sie das ISO-Image auf das DVD-R- oder DVD-RW-Medium oder schreiben Sie einen bootfähigen USB-Flash-Laufwerk.
- Fahren Sie Ihren ESXi-Host herunter oder schalten Sie ihn aus, dessen Passwort vergessen wurde.
- Legen Sie die Live-DVD ins DVD-Laufwerk ein oder stecken Sie die bootfähige Flashkarte/den bootfähigen Flash-Laufwerk in den entsprechenden Steckplatz/Port und starten Sie von diesem Laufwerk.
- Wählen Sie die Ubuntu ausprobieren, ohne zu installieren-Bootoption (die standardmäßig ausgewählt ist).
- Öffnen Sie das Ubuntu-Terminal (klicken Sie mit der rechten Maustaste auf den Desktop und wählen Sie Terminal öffnen).
- Erhalten Sie Root-Rechte:
sudo -i - Liste Partitionen der Festplatte, auf der ESXi installiert ist. In unserem Beispiel ist ESXi auf einer separaten Festplatte installiert, die mit der Standard-ESXi-Partitionstabelle partitioniert ist:
ls -al /dev/sd*
fdisk -l | grep /dev/sda
Wir sind an der Partition /dev/sda5 interessiert, auf der sich die Datei /etc/shadow befindet. - Erstellen Sie temporäre Verzeichnisse im virtuellen Dateisystem, das von Ubuntu ausgeführt wird, das von der Live-DVD gestartet wird.
mkdir /mnt/sda5-esxiDieses Verzeichnis dient dazu, die Partition zu mounten, auf der sich die Datei /etc/shadow befindet.
- Wir müssen auch ein Verzeichnis erstellen, um temporäre Dateien zu speichern:
mkdir /temp - Mounten Sie die sda5 Partition im Verzeichnis /mnt/sda5-esxi über dem erstellten Verzeichnis:
mount /dev/sda5 /mnt/sda5-esxi - Überprüfen Sie, ob die
- Extrahieren Sie Dateien aus dem Archiv state.tgz in unser temporäres Verzeichnis:
tar -xf /mnt/sda5-esxi/state.tgz -C /temp/ - Die Datei local.tgz wurde aus der Datei state.tgz extrahiert. Es gibt ein Archiv innerhalb eines anderen Archivs.
- Lassen Sie uns Dateien aus der Datei local.tgz extrahieren:
tar -xf /temp/local.tgz -C /temp/
- Die Datei local.tgz kann jetzt aus dem temporären Verzeichnis gelöscht werden:
rm /temp/local.tgz - Öffnen Sie die Datei /etc/shadow im Texteditor. Verwenden wir vi, das in Ubuntu vorinstalliert ist:
vi /temp/etc/shadow
- Bearbeiten Sie den Inhalt dieser Datei. Um das ESXi-Root-Passwort zurückzusetzen, bearbeiten Sie den String, der root enthält. $6$ zeigt an, dass der SHA-512-Algorithmus verwendet wird. Der Passworthash ist auf dem obigen Screenshot gelb markiert.
- Löschen Sie diesen Text zwischen den ersten und zweiten : (Doppelpunkt) Symbolen wie folgt (die Zahlen können in Ihrem Fall unterschiedlich sein). In vi können Sie zum erforderlichen Zeichen navigieren, indem Sie h, l, j, k drücken und dann x drücken, um das Zeichen zu löschen. Als Ergebnis sollte Ihr String im Zusammenhang mit dem Root-Benutzer wie folgt aussehen:
root::13358:0:99999:7::: - Änderungen speichern und beenden:
:wq
- Gehen Sie zum Verzeichnis /temp/:
cd /temp - Jetzt müssen Sie die Datei shadow wieder in das Archiv einfügen. Packen Sie die Archive neu:
tar -czf local.tgz etc
tar -czf state.tgz local.tgz - Verschieben Sie das neue Archiv mit dem gelöschten Root-Passwort an seinen Standardort auf der Partition sda5, die im Verzeichnis /mnt/sda5-esxi/ eingehängt ist:
mv state.tgz /mnt/sda5-esxi/ - Hängen Sie die Partition /dev/sda5 vom Verzeichnis /mnt/sda5-esxi/ ab:
umount /mnt/sda5-esxi - Starten Sie den Server neu und entfernen Sie die bootfähige DVD oder Flash-Medien:
init 6 - Sobald Ihr ESXi-Server gebootet hat, drücken Sie F2, um den Authentifizierungsbildschirm anzuzeigen.
- Lassen Sie den Anmeldenamen als root und das Passwortfeld leer. Drücken Sie dann Enter.
Herzlichen Glückwunsch! Sie können sich jetzt ohne Passwort am Konsolenverwaltungsschnittstellen des ESXi-Servers anmelden. - Legen Sie nun das neue ESXi-Passwort fest und versuchen Sie diesmal, sich an das Passwort zu erinnern. Sie können jetzt alles konfigurieren, was Sie auf Ihrem ESXi-Host benötigen.
Ändern eines ESXi-Standardpassworts durch Ersetzen des state.tgz-Archivs
Diese Methode ist ähnlich wie die zuvor diskutierte Methode. Wenn Sie das ESXi-Standardpasswort nicht zurücksetzen möchten, indem Sie Manipulationen mit dem Packen/Entpacken von Archiven und dem Bearbeiten der Datei /etc/shadow in der Linux-Konsole durchführen, können Sie einfach die Datei /etc/shadow von einem ESXi-Host auf einen anderen kopieren.
Wenn Sie mehr als einen ESXi-Host haben und das Passwort mindestens eines ESXi-Hosts kennen, können Sie einfach die Datei /etc/shadow vom ESXi-Host, dessen Passwort Sie kennen, auf den ESXi-Host kopieren, dessen Passwort Sie vergessen haben. Wenn Sie nur einen ESXi-Host haben und sich nicht an sein ESXi-Root-Passwort erinnern können, können Sie auch diese Methode verwenden. In diesem Fall sollten Sie eine virtuelle Maschine bereitstellen, die ESXi auf einem beliebigen verfügbaren Hypervisor ausführt, zum Beispiel auf VMware Player oder VMware Workstation. Wenn Sie einen ungenutzten physischen Computer haben, der ESXi-kompatibel ist, können Sie diesen ebenfalls verwenden. In diesem aktuellen Beispiel wird eine VM verwendet, die ESXi auf VMware Workstation ausführt.
Kurz gesagt, die Hauptpunkte bei der Verwendung dieser Methode zum Zurücksetzen eines ESXi-Standardpassworts sind folgende:
- Setzen Sie ein neues Passwort für ESXi auf einer VM (zum Beispiel ChangeMe_567);
- Kopieren Sie die Datei /etc/shadow von diesem virtuellen ESXi auf Ihren ESXi, auf den der Zugriff wiederhergestellt werden muss. Sie können das gesamte Archiv state.tgz kopieren;
- Starten Sie Ihren ESXi-Server neu und verwenden Sie das Passwort, das Sie auf einem virtuellen ESXi-Host festgelegt haben (ChangeMe_567).
Schritt-für-Schritt-Anleitung
Lassen Sie uns diese Methode genauer betrachten.
Zuerst deployen Sie eine VM und installieren Sie ESXi auf dieser VM. Die Version von ESX sollte ähnlich der Version Ihres physischen ESXi sein, auf den der Zugriff wiederhergestellt werden muss. Zum Beispiel, 6.7 und 6.7, 6.7 und 6.5, 6.0 und 6.5 etc. Der Prozess der Installation von ESXi auf einer VM wird in unserem Blogbeitrag über VMware Home Lab erklärt. Sie können auch unseren Blogbeitrag über interaktive ESXi-Installation lesen.
Operationen, die auf dem ESXi-Host durchgeführt werden, dessen Passwort bekannt ist
- Schalten Sie die VM aus, auf der ESXi läuft, dessen Root-Passwort Sie kennen.
- Fügen Sie das Ubuntu-Installations-ISO-Image einem virtuellen optischen Laufwerk der VM hinzu.
- Starten Sie die VM und booten Sie vom Ubuntu-ISO-Image. Wählen Sie im Bootloader-Optionen Ubuntu ausprobieren, ohne zu installieren.
- Fügen Sie einen USB-Flashlaufwerk hinzu und verbinden Sie das USB-Flashlaufwerk mit einer VM (die USB-Weiterleitungsfunktion hilft dabei).
- Auf dem Ubuntu-Desktop klicken Sie mit der rechten Maustaste auf das Symbol Ihres USB-Flashlaufwerks und wählen im Kontextmenü Im Terminal öffnen.
- In unserem Fall ist der Pfad zum USB-Flashlaufwerk /media/Ubuntu/USB16_STR
In Ihrem Fall kann der Pfad folgendermaßen aussehen: /media/Ubuntu/[flash_name]; w, wobei [flash_name] auch als Festplattenlabel bezeichnet wird. - Holen Sie sich die Root-Berechtigungen:
sudo su - Überprüfen Sie die verfügbaren Partitionen des ESXi-Festplattenlaufwerks:
fdisk -l | grep /dev/sda - Erstellen Sie ein Verzeichnis, um die erforderliche Partition in der virtuellen Umgebung zu mounten, die von der Ubuntu Live DVD verwendet wird:
mkdir /mnt/sda5-esxi - Mounten Sie die Partition, die das Archiv state.tgz mit der gepackten Schatten-Datei enthält:
mount /dev/sda5 /mnt/sda5-esxi/ - Kopieren Sie das Archiv state.tgz, das die Datei /etc/shadow enthält, auf den USB-Flash-Laufwerk (das ist übrigens Ihr aktuelles Verzeichnis und wird durch einen Punkt angezeigt):
cp /mnt/sda5-esxi/state.tgz . - Überprüfen Sie, ob die Datei state.tgz kopiert wurde:
ls -al
- Unmounten Sie die Partition aus dem zuvor erstellten Verzeichnis:
umount /mnt/sda5-esxi/ - Fahren Sie die VM herunter:
init 0 - Entnehmen Sie das USB-Flash-Laufwerk, auf dem die Datei state.tgz jetzt gespeichert ist, und stecken Sie dieses USB-Flash-Laufwerk in den USB-Anschluss des ESXi-Servers, auf dem Sie das ESXi-Root-Passwort zurücksetzen möchten.
- Legen Sie die Ubuntu-Installations-DVD in das DVD-Laufwerk des physischen Servers ein. Wenn Sie einen bootfähigen USB-Stick erstellt haben, können Sie ihn als bootfähiges Medium verwenden.
Operationen, die auf dem ESXi-Host durchgeführt werden, dessen Passwort verloren gegangen ist
- Schalten Sie den ESXi-Server aus, auf den Sie sich nicht einloggen können, und legen Sie das Ubuntu-Installationsmedium ein (legen Sie eine DVD in ein DVD-Laufwerk ein oder stecken Sie einen USB-Flash-Laufwerk in einen USB-Anschluss). Wenn VMs auf diesem ESXi-Server ausgeführt werden, vergessen Sie nicht, die VMs ordnungsgemäß herunterzufahren, bevor Sie den Hypervisor herunterfahren.
- Schalten Sie den ESXi-Server ein und booten Sie von dem Ubuntu-Installationsmedium.
- Wählen Sie Ubuntu testen, ohne zu installieren in den Bootloader-Optionen.
- Nachdem das Ubuntu-Live-DVD geladen wurde, klicken Sie mit der rechten Maustaste auf das USB-Flash-Symbol auf dem Ubuntu-Desktop und wählen Sie Im Terminal öffnen.
- Führen Sie die Befehle aus, ähnlich wie Sie sie zuvor ausgeführt haben:
sudo su
fdisk -l | grep /dev/sda
mkdir /mnt/sda5-esxi
mount /dev/sda5 /mnt/sda5-esxi/ - Benennen Sie die Originaldatei state.tgz um, die den Hash des unbekannten ESXi-Root-Passworts enthält:
mv /mnt/sda5-esxi/state.tgz /mnt/sda5-esxi/state-old.tgz - Kopieren Sie die Datei state.tgz vom USB-Flash-Laufwerk (dies ist Ihr aktuelles Verzeichnis) in das Verzeichnis, das der Originalspeicherort der Datei state.tgz ist:
cp ./state.tgz /mnt/sda5-esxi - Überprüfen Sie, ob die Datei kopiert wurde (siehe Zeit und Datum, um sicherzustellen, dass alles in Ordnung ist):
ls -al /mnt/sda5-esxi/state.tgz
- Demontieren Sie die zuvor eingehängte Festplattenpartition:
umount /mnt/sda5-esxi/ - Fahren Sie den Server herunter:
init 0 - Entnehmen Sie das Ubuntu-Installationsmedium und den USB-Flash-Laufwerk, auf das Sie state.tgz kopiert haben.
- Schalten Sie Ihren ESXi-Host wie gewohnt ein.
- Melden Sie sich mit dem Passwort des Root-Benutzers an, das Sie für ESXi in einer VM festgelegt haben.
Alles sollte jetzt in Ordnung sein. Sobald Sie sich bei der ESXi-Konsole angemeldet haben, legen Sie ein neues starkes Passwort in den ESXi-Passworteinstellungen fest und vergessen Sie es nicht.
Zusammenfassung
Sie können das vergessene Root-Passwort nicht auf ein Standardpasswort für ESXi zurücksetzen, da es kein Standardpasswort für den ESXi-Root-Benutzer gibt. Die Wahl der Methode, mit der Sie Ihr vergessenes ESXi-Passwort ändern möchten, hängt von einigen Faktoren ab – ob Ihr ESXi-Host in vCenter erreichbar ist, ob Sie die Enterprise Plus-Lizenz haben und ob Sie andere ESXi-Hosts mit einem bekannten Root-Passwort haben. Das Kennen aller vier Methoden ermöglicht es Ihnen, den Zugriff auf Ihre ESXi-Hosts in fast allen Fällen wiederherzustellen.
Egal welches Passwort Sie auf ESXi-Hosts verwenden, vergessen Sie nicht, Ihre VMs zu sichern. Durch VM-Backups können Sie Ihre Daten schützen, Geld und Zeit sparen. Erfahren Sie mehr über NAKIVO Backup & Replication und testen Sie es in Ihrer virtuellen Umgebung.
Source:
https://www.nakivo.com/blog/best-way-reset-esxi-default-password/