Content

Скидання пароля користувача root в ESXi 7.x

Іноді, з тих чи інших причин, ви не можете ввійти в консоль керування ESXi, оскільки у вас немає актуального пароля. Це може бути пов'язано зі зламом системи, збоєм системи, втратою пароля або якщо ви успадкували ESXi без документації або належного адміністративного контролю. Це неприємна ситуація, і з нею потрібно щось робити. Можливо, не одразу, але коли щось піде не так і вам потрібно буде втрутитися в систему, яка до цього часу працювала нормально. Ця інструкція написана саме для таких випадків.

Існує кілька способів скинути пароль. Однак наведений у цій статті є універсальним і підійде не тільки для версій 7.x, але й для більш ранніх. Він перевірений на практиці і працює в більшості випадків. Отже, давайте почнемо.

Спочатку нам потрібно завантажитися з будь-якого Live CD. Це може бути інсталяційний образ Ubuntu або, як у нашому випадку, Finnix. Це дистрибутив на основі debian з широкими можливостями діагностики та аварійного відновлення.

Після завантаження ви побачите запрошення до консолі:

Якщо ваш сервер розташований віддалено і ви підключені до нього через IP-KVM, працювати в такому режимі не дуже зручно через великий час відгуку консолі. Щоб уникнути цього, ви можете налаштувати ssh-сервер. Якщо це не є проблемою, ви можете пропустити цей крок.

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

Після цього ви можете підключитися до сервера за допомогою вашого улюбленого ssh-клієнта або з консолі:

ssh root@1.2.3.4

Тепер нам потрібно визначити, на якому диску міститься потрібний нам розділ. Для цього спочатку визначимо, які диски у нас є.

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

Наш основний критерій пошуку - розділ диска розміром 250 МБ. Як бачимо, диск nvme0n1 містить такий розділ, давайте розглянемо його детальніше:

fdisk -l /dev/nvme0n1


Наша мета - розділ, який починається з сектора 8224 і має розмір 250 МБ. Це розділ, який містить дані, які нам потрібні

Для продовження, давайте створимо 2 каталоги, один для монтування диска, а інший для даних, які нам потрібно відредагувати.

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

Змонтуємо знайдений розділ

mount /dev/nvme0n1p5 /mnt/vmware

Усередині багато всього, але нам потрібен конкретний файл

img

Його потрібно розпакувати в каталог, створений раніше

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

Тепер, якщо ми перейдемо до /tmp/vmware/ і переглянемо його вміст, ми знайдемо там знайомий нам каталог etc.

Далі нам потрібно відредагувати тіньовий файл і видалити з нього хеш пароля root. Таким чином ESXi буде думати, що після наших маніпуляцій пароль користувача порожній.

nano /tmp/vmware/etc/shadow

Робити це потрібно дуже обережно. Необхідно видалити вміст між першим і другим двокрапкою

і це повинно виглядати наступним чином

Збережіть файл за допомогою кнопки F3. На цьому найважливіша частина завершена. Далі вам потрібно все упакувати і покласти туди, де ви це знайшли.

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

Від'єднайте диск ESXi і перезавантажтеся.

umount /mnt/vmware/ reboot

Після перезавантаження входимо у веб-інтерфейс ESXi як користувач root з порожнім паролем і змінюємо його на потрібний нам стандартними засобами через верхнє праве меню.
І все! Мета досягнута! Рекомендуємо вам зберегти новий пароль і більше ніколи його не втрачати!