Resetiranje lozinke root korisnika u ESXi 7.x
⚠️ VAŽNO UPOZORENJE O KOMPATIBILNOSTI
Ova metoda resetiranja root lozinke ovisi o verziji ESXi-ja i nije podržana u svim izdanjima.
Podržane verzije:
- ESXi 6.0, 6.5, 6.7 (sve verzije)
- ESXi 7.0 (GA)
- ESXi 7.0 Update 1
- ESXi 7.0 Update 2
Nije podržano:
- ESXi 7.0 Update 3 i novije (konfiguracijski arhiv
local.tgzje šifriran i pohranjen kaolocal.tgz.ve) - ESXi 8.0 i sve sljedeće verzije
Razlog: Počevši od ESXi 7.0 Update 3, VMware je uveo šifriranje konfiguracijskih arhiva, što onemogućuje izravno uređivanje datoteke /etc/shadow metodom LiveCD.
Za šifrirane verzije (7.0 U3+, 8.0+) koristite alternativne metode:
- Metoda crypto-util na drugom ESXi hostu (zahtijeva stvaranje ugniježđene ESXi VM)
- Oporavak putem Host Profiles (zahtijeva vCenter)
- Ponovna instalacija ESXi-ja uz očuvanje VMFS podatkovnih pohrana (krajnje rješenje)
Provjerite svoju verziju prije početka!
Ponekad, iz ovog ili onog razloga, možda nećete moći autentificirati se u ESXi upravljačkoj konzoli jer nemate ažuriranu lozinku. To može biti zbog hakiranja sustava, pada sustava, izgubljene lozinke ili ako ste naslijedili ESXi bez dokumentacije ili odgovarajućih administrativnih kontrola. To je neugodna situacija i s njom će se morati nešto učiniti. Možda ne odmah, ali kada nešto krene po zlu i trebate intervenirati u sustav koji je do sada normalno funkcionirao. Ova uputa napisana je upravo za takve slučajeve.
Postoji nekoliko načina za resetiranje lozinke. Međutim, onaj opisan u ovom članku je univerzalan i funkcionirat će ne samo za verzije 7.x već i za starije. Testiran je u praksi i funkcionira u većini slučajeva. Dakle, počnimo.
Preduvjeti
Prvo trebamo pokrenuti sustav s bilo kojeg Live CD-a. To može biti instalacijska slika Ubuntua ili, kao u našem slučaju, Finnix. To je distribucija temeljena na Debianu s opsežnim mogućnostima dijagnostike i oporavka od katastrofe.
Nakon pokretanja vidjet ćete upit konzole:

U slučaju da se vaš poslužitelj nalazi na udaljenom mjestu i povezani ste s njim putem IP-KVM-a, rad u ovom načinu nije baš prikladan zbog dugog vremena odziva konzole. Kako biste to izbjegli, možete postaviti SSH poslužitelj. Ako to nije problem, možete preskočiti ovaj korak.
# postavimo root lozinku za živi sustav passwd # pokrenemo ssh poslužitelj service ssh start
Zatim se možete spojiti na poslužitelj koristeći svoj omiljeni SSH klijent ili iz konzole:
ssh root@1.2.3.4
Pronalaženje ESXi particije
Sada trebamo odrediti koji disk sadrži particiju koja nam je potrebna. Za to prvo odredimo koje diskove imamo.
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 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
Naš glavni kriterij pretraživanja je particija diska od 250 MB. Kao što vidimo, disk nvme0n1 sadrži takvu particiju, pogledajmo je pobliže:
fdisk -l /dev/nvme0n1

Naš cilj je particija koja počinje na sektoru 8224 i veličine je 250 MB. To je particija koja sadrži podatke koji su nam potrebni.
Ekstrakcija konfiguracijskih datoteka
Za nastavak, kreirajmo 2 direktorija: jedan za montiranje diska i drugi za podatke koje trebamo urediti.
mkdir /mnt/vmware && mkdir /tmp/vmware
Montirajte pronađenu particiju
mount /dev/nvme0n1p5 /mnt/vmware
Unutra ima puno toga, ali nam treba određena datoteka

Treba je raspakirati u prethodno stvoreni direktorij
tar -xf /mnt/vmware/state.tgz -C /tmp/vmware/ tar -xf /tmp/vmware/local.tgz -C /tmp/vmware/ rm /tmp/vmware/local.tgz
Sada, ako odemo u /tmp/vmware/ i pregledamo njegov sadržaj, tamo ćemo pronaći poznati direktorij etc.
Uređivanje Shadow datoteke
Zatim trebamo urediti shadow datoteku i ukloniti iz nje hash root lozinke. Na taj način ESXi će nakon naše manipulacije misliti da je korisnička lozinka prazna.
nano /tmp/vmware/etc/shadow
To treba učiniti pažljivo. Potrebno je izbrisati sadržaj između prve i druge dvotočke

i trebalo bi izgledati ovako

Obnavljanje i ponovni pokretanje
Spremite datoteku tipkom F3. Time je završen najvažniji dio. Zatim trebate sve zapakirati i vratiti tamo gdje ste pronašli.
cd /tmp/vmware/ tar -czf local.tgz etc tar -czf state.tgz local.tgz mv state.tgz /mnt/vmware/
Demontirajte ESXi pogon i ponovo pokrenite sustav.
umount /mnt/vmware/ reboot
Nakon ponovnog pokretanja, prijavite se u ESXi web sučelje kao root korisnik s praznom lozinkom i promijenite je u onu koja nam je potrebna standardnim sredstvima putem izbornika u gornjem desnom kutu.
Mogući problemi i rješenja
- Greška montiranja particije: Provjerite jeste li naveli ispravnu putanju do sistemskog diska. Pokrenite
lsblkza prikaz strukture particija. - Shadow datoteka nedostaje: Provjerite ispravnost putanje
/tmp/etc/shadow. Provjerite jesu li arhivestate.tgzilocal.tgzuspješno raspakirane. - Lozinka nije resetirana: Provjerite jesu li promjene spremljene i jesu li datoteke uspješno obnovljene i premještene na izvorno mjesto.
To je to! Cilj je postignut! Preporučujemo da spremite svoju novu lozinku i nikada je više ne izgubite!