Content

Zurücksetzen des Root-Benutzerpassworts in ESXi 7.x

Manchmal können Sie sich aus dem einen oder anderen Grund nicht bei der ESXi-Verwaltungskonsole authentifizieren, weil Sie kein aktuelles Kennwort haben. Dies kann auf einen System-Hack, einen Systemabsturz, ein verlorenes Passwort oder darauf zurückzuführen sein, dass Sie ESXi ohne Dokumentation oder angemessene administrative Kontrollen geerbt haben. Dies ist eine unangenehme Situation, und es muss etwas dagegen unternommen werden. Vielleicht nicht sofort, aber wenn etwas schief geht und Sie in ein System eingreifen müssen, das bisher normal funktioniert hat. Diese Anleitung ist für solche Fälle geschrieben.

Es gibt mehrere Möglichkeiten, das Kennwort zurückzusetzen. Die in diesem Artikel beschriebene Methode ist jedoch universell und funktioniert nicht nur für die Version 7.x, sondern auch für frühere Versionen. Sie ist in der Praxis getestet worden und funktioniert in den meisten Fällen. Fangen wir also an.

Zunächst müssen wir von einer beliebigen Live-CD booten. Das kann ein Ubuntu-Installationsimage sein oder, wie in unserem Fall, Finnix. Dabei handelt es sich um eine Debian-basierte Distribution mit umfangreichen Diagnose- und Disaster-Recovery-Funktionen.

Nach dem Booten sehen Sie eine Konsolen-Eingabeaufforderung:

Wenn sich Ihr Server an einem entfernten Standort befindet und Sie über IP-KVM mit ihm verbunden sind, ist es wegen der langen Reaktionszeit der Konsole nicht sehr bequem, in diesem Modus zu arbeiten. Um dies zu vermeiden, können Sie einen ssh-Server einrichten. Wenn dies kein Problem darstellt, können Sie diesen Schritt überspringen.

# set the root password for the live system passwd # bring up the ssh server service ssh star

Sie können sich dann mit Ihrem bevorzugten ssh-Client oder über die Konsole mit dem Server verbinden:

ssh root@1.2.3.4

Nun müssen wir herausfinden, auf welchem Datenträger sich die benötigte Partition befindet. Dazu müssen wir zunächst feststellen, welche Datenträger wir haben.

root@0:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 377.2M 1 loop /usr/lib/live/mount/rootfs/filesystem.squashfs /run/live/rootfs/filesystem.squashfs sda 8:0 1 3.6T 0 disk └─sda1 8:1 1 3.6T 0 part sdb 8:16 1 3.6T 0 disk └─sdb1 8:17 1 3.6T 0 part sr0 11:0 1 455M 0 rom /run/live/medium zram0 252:0 0 62.8G 0 disk [SWAP] nvme1n1 259:0 0 476.9G 0 disk └─nvme1n1p1 259:2 0 476.9G 0 part nvme0n1 259:1 0 476.9G 0 disk ├─nvme0n1p1 259:3 0 4M 0 part ├─nvme0n1p2 259:4 0 4G 0 part ├─nvme0n1p3 259:5 0 469.6G 0 part ├──nvme0n1p5 259:6 0 250M 0 part ├─nvme0n1p6 259:7 0 250M 0 part ├─nvme0n1p7 259:8 0 110M 0 part ├─nvme0n1p8 259:9 0 286M 0 part └─nvme0n1p9 259:10 0 2.5G 0 part

Unser wichtigstes Suchkriterium ist eine 250 MB große Partition. Wie wir sehen können, enthält die nvme0n1-Disk eine solche Partition, sehen wir sie uns genauer an:

fdisk -l /dev/nvme0n1


Unser Ziel ist die Partition, die bei Sektor 8224 beginnt und 250 MB groß ist. Dies ist die Partition, die die Daten enthält, die wir brauchen

Um fortzufahren, erstellen wir 2 Verzeichnisse, eines für das Mounten der Festplatte und das andere für die Daten, die wir bearbeiten müssen.

mkdir /mnt/vmware && mkdir /tmp/vmware

Einhängen der gefundenen Partition

mount /dev/nvme0n1p5 /mnt/vmware

Es gibt eine Menge Zeug darin, aber wir brauchen eine bestimmte Datei

img

Sie sollte in das zuvor erstellte Verzeichnis entpackt werden

tar -xf /mnt/vmware/state.tgz -C /tmp/vmware/ tar -xf /tmp/vmware/local.tgz -C /tmp/vmware/ rm /tmp/vmware/local.tgz

Wenn wir nun nach /tmp/vmware/ gehen und den Inhalt durchsehen, finden wir dort das bekannte Verzeichnis etc.

Als nächstes müssen wir die Shadow-Datei bearbeiten und den Root-Passwort-Hash aus ihr entfernen. Dadurch wird ESXi denken, dass das Benutzerpasswort nach unserer Manipulation leer ist.

nano /tmp/vmware/etc/shadow

Dies sollte sorgfältig durchgeführt werden. Es ist notwendig, den Inhalt zwischen dem ersten und dem zweiten Doppelpunkt zu löschen

und die Datei sollte wie folgt aussehen

Speichern Sie die Datei mit der Taste F3. Damit ist der wichtigste Teil abgeschlossen. Als Nächstes müssen Sie alles wieder einpacken und an seinen Platz zurückbringen, wo Sie es vorgefunden haben.

cd /tmp/vmware/ tar -czf local.tgz etc tar -czf state.tgz local.tgz mv state.tgz /mnt/vmware/

Entkoppeln Sie das ESXi-Laufwerk und starten Sie neu.

umount /mnt/vmware/ reboot

Nach dem Neustart melden Sie sich bei der ESXi-Webschnittstelle als Root-Benutzer mit einem leeren Passwort an und ändern es mit den üblichen Mitteln über das Menü oben rechts in das von uns benötigte.
Das war's! Das Ziel ist erreicht! Wir empfehlen Ihnen, Ihr neues Passwort zu speichern, damit Sie es nie wieder verlieren!