Скидання пароля root на VMWare ESXi 5

Згідно KB VMWare єдиний підтримуваний спосіб скинути пароль на ESXi хості (будь то ESXi 3.5, ESXi 4.x або ESXi 5.x) - повна перевстановлення ESXi, що природно, не завжди прийнятно, адже при перевстановлення (пункт "Repair") Не дивлячись на те, що з файлами віртуальних машин на сховище VMFS нічого не станеться (досить при установки вибрати пункт"Install ESXi, preserve VMFS datatore"), Настройки самого гипервизора будуть втрачені, і відновити їх по пам'яті - досить трудомістке завдання, особливо в разі складної конфігурації ESXi. Фахівці VMWare трохи лукавлять, скинути пароль root на VMWare ESXi можна, проте в цьому випадку з точки зору технічної підтримки вендора система переходить в розряд  unsupported configuration (В силу складності архітектури ESXi).

Отже, розберемося, як же скинути пароль root на гіпервізора ESXi 5.1, за допомогою сторонніх коштів. Основна проблема, яка стоїть перед нами, полягає в тому, що в ESXi немає сервісної консолі, і традиційні способи скидання пароля для Linux систем (через single-user mode) тут не спрацюють.

Паролі (а точніше їх хеш-кодування) користувачів ESXi зберігаються в файлі etc / shadow, який зберігається в архіві local.tgz, який зберігається в архіві state.tgz. Природно, дізнатися пароль root за інформацією в файлі не вийде, все, що можна зробити - скинути його на порожній (найпростіше) або замінити на хеш заздалегідь відомого пароля.

  1. Завантажуємо cервер з ESXi з будь-якого Live CD з Linux (наприклад, Slax, GRML, KNOPPIX або CentOS LiveCD)
  2. Далі нам потрібно знайти розділ, на якому лежить файл state.tgz. Визначити розділ, на якому він зберігається - завдання непросте. Для диска з розділами mbr введіть команду
    fdisk -l

    , якщо використовується GPT, скористайтеся командою parted

    / Dev / print

  3. Припустимо, файл state.tgz виявився в розділі / Dev / sda5. За допомогою стандартної команди змонтуйте розділ / dev / sda5 в каталог / mnt
    mount -t vfat / dev / sdc5 / mnt
  4. Розпакуйте вміст файлу state.tgz в каталог / tmp
    cd / tmp tar xzf /mnt/state.tgz
  5. розпакуйте
    local.tgz tar xzf local.tgz
  6. В результаті наведених операцій з'явиться директорія / etc, в якій зберігається файл shadow. Відкрийте його будь-яким текстовим редактором (наприклад, vi або nano) для редагування
    vi etc / shadow
  7. Видаліть хеш пароля користувача root (між першим та другим двокрапкою) і збережіть зміни у файлі
  8. Перепакуем архіви, створивши попередньо копію state.tgz.bakup (на випадок, якщо щось піде не так)
    mv /mnt/state.tgz /mnt/state.tgz.bakup rm local.tgz tar czf local.tgz etc tar czf state.tgz local.tgz mv state.tgz / mnt /
  9. Перезавантажте сервер ESXi, витягніть завантажувальний диск з Linux і після завантаження сервера спробуйте підключитися до Гіпервізор за допомогою порожнього пароля root.

Як Ви бачите, в консолі відображається прохання змінити стандартний пароль користувача root.

ЗИ. Ще пара посилань по темі:

Скидання пароля адміністратора в Windows 8