Content

Reimpostare la password dell'utente root in ESXi 7.x

A volte, per un motivo o per l'altro, può capitare che non si riesca ad autenticarsi alla console di gestione ESXi perché non si dispone di una password aggiornata. Ciò può essere dovuto a un hacking del sistema, a un crash del sistema, alla perdita della password o se si è ereditato ESXi senza documentazione o controlli amministrativi adeguati. Si tratta di una situazione spiacevole, per la quale è necessario fare qualcosa. Forse non immediatamente, ma quando qualcosa va storto e si deve interferire con un sistema che finora ha funzionato normalmente. Questa istruzione è stata scritta per questi casi.

Esistono diversi modi per reimpostare la password. Tuttavia, quello descritto in questo articolo è universale e funzionerà non solo per le versioni 7.x ma anche per quelle precedenti. È stato testato nella pratica e funziona nella maggior parte dei casi. Quindi iniziamo.

Per prima cosa è necessario eseguire l'avvio da un CD Live. Può essere un'immagine di installazione di Ubuntu o, come nel nostro caso, Finnix. Si tratta di una distribuzione basata su Debian con ampie capacità di diagnostica e di disaster recovery.

Dopo l'avvio, verrà visualizzato un prompt della console:

Nel caso in cui il vostro server sia situato in remoto e siate collegati ad esso tramite IP-KVM, non è molto conveniente lavorare in questa modalità a causa dell'elevato tempo di risposta della console. Per evitare questo inconveniente, è possibile impostare un server ssh. Se questo non è un problema, si può saltare questo passaggio.

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

È quindi possibile connettersi al server utilizzando il client ssh preferito o dalla console:

ssh root@1.2.3.4

Ora dobbiamo determinare quale disco contiene la partizione che ci serve. Per farlo, determiniamo innanzitutto quali dischi abbiamo.

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

Il nostro criterio di ricerca principale è una partizione del disco da 250 MB. Come possiamo vedere, il disco nvme0n1 contiene una partizione di questo tipo:

fdisk -l /dev/nvme0n1


Il nostro obiettivo è la partizione che inizia dal settore 8224 e ha una dimensione di 250 MB. Questa è la partizione che contiene i dati di cui abbiamo bisogno.

Per continuare, creiamo 2 directory, una per montare il disco e l'altra per i dati che dobbiamo modificare.

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

Montare la partizione trovata

mount /dev/nvme0n1p5 /mnt/vmware

C'è molto materiale all'interno, ma abbiamo bisogno di un file specifico.

img

Dovrebbe essere scompattato nella directory creata in precedenza.

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

Ora se andiamo in /tmp/vmware/ e guardiamo il suo contenuto, troveremo la nota directory etc.

Quindi dobbiamo modificare il file shadow e rimuovere l'hash della password di root. In questo modo ESXi penserà che la password utente sia vuota dopo la nostra manipolazione.

nano /tmp/vmware/etc/shadow

Questa operazione deve essere eseguita con attenzione. È necessario eliminare il contenuto tra il primo e il secondo punto e virgola

e dovrebbe avere questo aspetto

Salvare il file con il tasto F3. Questo completa la parte più importante. Successivamente è necessario impacchettare tutto e rimetterlo al suo posto.

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

Smontare l'unità ESXi e riavviare.

umount /mnt/vmware/ reboot

Dopo il riavvio, accedere all'interfaccia web di ESXi come utente root con una password vuota e cambiarla con quella necessaria usando i mezzi standard attraverso il menu in alto a destra.
Ecco fatto! L'obiettivo è stato raggiunto! Vi consigliamo di salvare la nuova password per non perderla mai più!