Reset root password ESXi
Come con qualsiasi sistema, potrebbe sorgere una situazione in cui il login di root è stato perso o dimenticato. Il processo seguente ti mostrerà come reimpostare la password di root su una password vuota.
Questo non è supportato da VMware e si potrebbe prendere in considerazione l’esecuzione di un’installazione di riparazione di ESXi al posto di questo processo. Un’installazione di riparazione sovrascriverà le partizioni di sistema di un’installazione ESXi, ma preserverà tutti i datastore VMFS. Dopo un’installazione di riparazione, è possibile aggiungere nuovamente le macchine virtuali esistenti all’inventario sfogliando il datastore, facendo clic con il pulsante destro del mouse sui file VMX e selezionando Aggiungi a inventario. Si noti che la modifica della password di root su blank impedirà il montaggio di qualsiasi datastore NFS poiché questi dipendono dal login di root per l’autenticazione con il server NFS.
Questo processo richiede una sorta di accesso fisico all’host in quanto richiederà l’avvio con un sistema operativo alternativo. Nell’esempio seguente ho usato il Slax Linux Live CD. Si noti che ho testato questo processo su un server di prova senza VM. Era fondamentalmente una nuova installazione su cui ho cambiato la password di root e ho creato un altro login. Ho quindi utilizzato questo processo per reimpostare la password di root e riavviare l’host. Dopo il riavvio potevo accedere senza password per root e l’altro account funzionava bene.
Penso comunque che questo sia un processo relativamente sicuro, se lo facessi su un sistema in produzione mi assicurerei di avere i backup delle VM e, se possibile, un backup di configurazione per ESXi.
Se si desidera recuperare la password di root o di altra password, è possibile utilizzare i passaggi iniziali per recuperare una copia del file shadow. Quindi utilizzare uno strumento come john the ripper (jtr) per decifrare la password. Se per la password è stata utilizzata una parola / comune e si utilizza un elenco di password completo con jtr, è possibile recuperare la password in un intervallo di tempo piuttosto breve
1) L’immagine qui sotto è stata presa dalla console dell’host ESXi e l’output di cat /etc/shadow mostra la password crittografata per il login di root. Si potrebbe desiderare di registrare l’hash della password se si desidera invertire questa modifica.
2) Dopo l’arresto dell’host, avviamo la live CD di Linux. Ho quindi eseguito i comandi fdisk -l e ls -l /mnt/sda5 / ls -l /mnt/sda6/ per determinare la posizione del file state.tgz più recente. Si noti che se si utilizza ESXi Embedded, è possibile visualizzare solo local.tgz anziché state.tgz e quindi ricercare il file e copiare. Nel mio esempio qui sotto, ESXi è una nuova installazione, quindi /sda6 non ha file ma boot.cfg. Quando si avvia ESXi su questo host, /sda5 verrebbe montato come /bootbank e /sda6 come /altbootbank
3) Dopo aver determinato dove si trovava il file state.tgz più recente, questo è stato copiato in /tmp. gzip e tar sono stati quindi utilizzati per estrarre local.tgz da state.tgz. Se utilizzi ESXi Embedded, copi local.tgz in tmp ed esegui gzip e tar su quel file. Una volta estratto local.tar è stato eseguito il comando cd etc seguito da vi shadow.
4) Le due immagini sottostanti mostrano il file shadow prima e dopo la modifica. Essenzialmente avrai la voce di root come root :: 13358: 0: 99999: 7 :::. Una volta rimosso l’hash della password, premere ESC e per salvare il tipo di modifica in: wq e premere Invio. Puoi eseguire cat shadow per confermare che la modifica è stata salvata correttamente
5) Una volta che il file shadow è stato aggiornato, userete cd .. per tornare a /tmp e quindi eseguire tar -czvf local.tgz ecc per creare il file local.tgz. Se utilizzi ESXi Embedded, copi questo file sull’unità da cui proviene nel passaggio 3. In caso contrario, eseguirai tar -czvf state.tgz local.tgz per creare lo state.tgz che dovrebbe quindi essere copiato in la posizione corretta Nell’immagine sottostante noterai che non uso sempre l’opzione -v con il comando tar.
Questa opzione visualizza un elenco di tutti i file elaborati dal comando e avrebbe prodotto un output dello schermo più ampio. È completamente opzionale per questo processo, ma può fornire un buon controllo per vedere se i file corretti sono in fase di elaborazione. Quando si esegue tar per estrarre il file locale, verrà elaborato un numero elevato di file. Ho anche usato il comando ls -l alcune volte nell’immagine sottostante. Questo è stato fatto per garantire che il file copiato correttamente.
6) Una volta che il file è stato copiato nella partizione /bootbank, è possibile riavviare l’host in ESXi. Sarai in grado di accedere con l’account di root senza password e sarà salutato con il messaggio familiare per cambiare la password di root






