Сайт о телевидении

Сайт о телевидении

» » Vmware esxi 5.5 восстановление доступа. Изменение пароля root через LIVE-CD CentOS

Vmware esxi 5.5 восстановление доступа. Изменение пароля root через LIVE-CD CentOS

30/05/2011

fdisk -l (смотрим подходящие FAT16 разделы, где у нас размещен загрузчик)

ls -l /mnt/sda5/ (основной, при загрузке монтируется как /bootbank)

ls -l /mnt/sda6/ (резервный, при загрузке монтируется как /altbootbank)

В случае чистой установки ESXi, картина будет такова:

Нас интересует файл state.tgz - там все, что нам нужно. Если у вас ESXi Embedded то нужен файл local.tgz (который в первом случае находится внутри state.tgz ).

Распаковываем сначала state.tgz , а потом local.tgz командами gzip и tar во временную директорию. Далее заходим в ней в папку /etc и открываем в ней файл shadow командой:

vi shadow

У вас откроется что-то вроде того:

Теперь посмотрите на картинку ниже, мы удаляем хэш пароля из этого файла:

То есть убираем все то, что между двумя двоеточиями. Выходим из файла, сохранившись.

Теперь все это упаковываем назад, для чего во временной папке (туда надо подняться из /etc) выполняем такую команду (апдейтим архив изменившейся папкой):

tar -czvf local.tgz etc

Если вы используете ESXi Embedded - кладете файл local.tgz на место, откуда брали. Если обычный ESXi - снова апдейтим архив:

tar -czvf state.tgz local.tgz

И также копируем туда, где он лежит:

Перезагружаем сервер и уже загружаемся в VMware ESXi. Видим такую картинку:

Это значит - все получилось. Теперь можем заходить в консоль под пользователем root с пустым паролем. Вот такой незамысловатый способ сброса пароля на хосте VMware ESXi.

Please enable JavaScript to view the

Если вы забыли или потеряли пароль root от хоста ESXi, вы можете потерять контроль над ним и не сможете зайти на его консоль через при наличии проблем с операционной системой или необходимости выполнить диагностику хоста. В этой статье я покажу 4 разных способа сбросить забытый пароль root на хосте VMware ESXi версии 6.7. Способ сброса пароля применим и к версиям ESXi 6.x и 5.x ().

С точки зрения VMWare, единственный правильный способ сброса пароля root на ESXi хосте – переустановка ОС (но это ведет к потере конфигурации и данных на локальных дисках). Все другие способы могут привести к отказу хоста, или переводу систему в неподдерживаемую конфигурацию, т.к. в ESXi отсутствует сервисная консоль и вы не можете сбросить пароль через однопользовательский режим как в Linux.

Допустим, вы забыли пароль root от одного из своих хостов ESXi. При этом возможны 2 сценария:

  1. ваш хост добавлен в vCenter и вы все еще может управляться им
  2. вы забыли пароль от отдельностоящего хоста ESXi (или от бесплатной редакции VMware )

Сброс пароля ESXi с помощью VMware Host Profile

Большинство хостов ESXi в крупных компаниях управляются через vCenter Server. Даже если вы забыли пароль root, vCenter без проблем может управлять настройками хоста, т.к. вы уже привязали хост к vCenter и пароль root вам просто не нужен. Если же вы выведете хост из vCenter (лучше этого не делать) и попробуете добавить его снова, вам понадобится указать root пароль. Поэтому, пока ваш хост управляется vCenter, вы можете сбросить пароль root с помощью профиля хоста VMware (Host Profile).

Host profile – это набор заданных вами параметров ESXi, которые можно применить к любому хосту для его быстрой настройки. Обычно профиль хоста создается после настройки типового хоста ESXi и экспорта его конфигурации в Host profile. Данный профиль администратор может применить к любому другому хосту.

    1. Запустите vSphere Web Client и авторизуйтесь в vCenter.
    2. На домашней странице выберите Host Profile
    3. Нажмите на кнопку Extract Profile from a host, чтобы извлечь профиль хоста ESXi с известным вам паролем root.
    4. Выберите хост ESXi и нажмите Next.
    5. Укажите имя профиля (желательно указать и его описание).
    6. После того, как новый профиль создан, отредактируйте его.

    7. С помощью встроенного поиска найдите параметр с именем root (находится в секции Security and Services -> Security Settings -> Security -> User Configuration -> Root). Выберите опцию “Fixed Password Configuration” и укажите новый пароль root.

    8. Все остальные настройки в профиле нужно отключить. Нажмите Finish.

    9. Теперь нужно привязать этот профиль к вашему ESXi хосту, на котором нужно сбросить пароль. В меню Actions выберите Attach/Detach Hosts.
    10. Выберите ваш ESXi хост (на котором нужно сбросить пароль) и нажмите кнопку Attach .

    11. Перейдите на вкладку Host profile -> Monitor -> Compliance и нажмите кнопку Remediate .

    12. После выполнения проверки новые настройки применятся к хосту и у него появится статус Complaint (т.е. конфигурация хоста соответствует назначенному профилю). В предыдущих версиях ESXi чтобы применить профиль к хосту, его необходимо переводить в режим обслуживания (Maintenance Mode), также потребуется перезагрузка хоста.
    13. На этом все, пароль root на хосте был изменен. Не забудьте отвязать профиль от хоста.

Сброс пароля root с помощью Active Directory и vCenter

Также вы можете сбросить пароль root на хосте ESXi, если с помощью vCenter добавить ваш хост в домен Active Directory. После того, как вы включите ESXi в домен, вы сможете авторизоваться на нем с помощью доменной учетной записи и сбросить пароль локального пользователя root.

Запустите оснастку Active Directory Users and Computers и создайте новую с именем ESX Admins (именно такое имя группы). учетку пользователя, пароль которого вам известен.

Теперь нужно добавить хост в домен. В консоли vCenter выберите хост, перейдите в раздел Configure -> Authentication Services -> Join Domain. Укажите имя домена и учетную запись с правами добавлять компьютеры в домен.

Теперь откройте веб интерфейс вашего хоста ESXi и авторизуйтесь на нем под учетной записью, которую вы добавили в (имя учетной записи нужно задать в формате User@Domain или Domain\User).

После этого можете исключить ESXi из домена (Leave Domain).

Чтобы применить изменения, перезагрузите хост.

Сброс пароля root на отдельном хосте ESXi

В этом разделе мы покажем, как сбросить пароль root на отдельно стоящем ESXi сервере, который не добавлен в vCenter. Этот способ сброса пароля потребует перезагрузки хоста и выключения всех запущенных на нем виртуальных машин. Для сброса на понадобиться загрузочный диск, например, iso образ Ubuntu GNOME. Данный образ нужно записать на USB флешку, которую можно сделать .

Затем нужно загрузить ESXi с этой флешки, подключить локальное хранилище с хоста ESXi, распаковать архив и изменить файл с паролями. Потом нужно заменить файл, перезагрузить хост и попробовать авторизоваться на ESXi под учетной root с пустым паролем.

Сброс пароля ESXi в файле shadow

Из соображений безопасности хост ESXi хранит пароль в зашифрованном виде в shadow. Нам нужно изменить пароль root в этом файле. Среди всех разделов на хосте ESXi нам нужен только /dev/sda5 (/bootbank). Именно в этом разделе диска хранится образ и конфигурация ОС.

После того, как вы загрузились с загрузочной флешки, выполните команду:

Выведем список дисков:

# fdisk –l | grep /dev/sda*

Нам нужен раздел /dev/sda5 размером 250 Мб. Создайте точку монтирования:

# mkdir /mnt/sda5

Создайте временны каталог:

Смонтируйте раздел /dev/sda5:

# mount /dev/sda5 /mnt/sda5

Нам нужен архивный файл с именем state.tgz (внутри него находится нужный нам файл local.tgz):

# ls -l /mnt/sda5/state.tgz

Распакуйте файлы state.tgz и local.tgz:

Файлы архивов теперь можно удалить:
# rm /temp/.tgz

Во временном каталоге должен появиться файл shadow. Откройте файл с помощью любого текстового редактора:
# vi /temp/etc/shadow

Вот как выглядит содержимое файлы shadow. Как вы видите, в нем содержаться все локальные учетные записи и их пароли (зашифрованные):

Чтобы сбросить пароль root на пустой, достаточно удалить все между двумя первыми двоеточиями и сохраните файл.

Перейдите в каталог: # cd /temp

Теперь нужно упаковать файл shadow в обратном порядке:

# tar -czf local.tgz etc

Теперь переместите новый архив в оригинальный каталог с образом ESXi:

# mv state.tgz /mnt/sda5/

Отмонтируйте раздел:

# umount /mnt/sda5

Теперь можно перезагрузить хост:

При загрузке ESXi распакует архив local.tgz и скопирует файлы конфигурации (в том числе shadow) в каталог /etc/. Попробуйте авторизоваться на сервере через DCUI без пароля. Система укажет, что пароль root не задан и в целях безопасности его нужно изменить.

Выберите пункт меню Configure Password и укажите новый пароль.

Замена пароля в файле shadow

Как один из вариантов рассмотренного выше способа сброса пароля на хосте ESXi, вы можете не сбрасывать, а заменить файл shadow файлом с другого хоста ESXi (с известным паролем). Вы можете shadow с другого хоста ESXi на свою загрузочную USB флешку.

Загрузите ваш ESXi хост со своего загрузочного USB диска (в моем примере это Ubuntu GNOME). И выполните следующие команды:

Выведем список дисков:

# fdisk –l | grep sd

Создадим две временные папки.

# mkdir /mnt/sda5
# mkdir /mnt/sdb1

Смонтируйте раздел с образом ESXi и ваш USB диск, на котором находится скопированный с другого хоста файл shadow:

# mount /dev/sda5 /mnt/sda5
# mount /dev/sdb1 /mnt/sdb1

Создайте временные каталоги:

# mkdir /temp
# mkdir /mnt/sdb1/save

Найдите нужный файл в архиве:

# ls -l /mnt/sda5/state.tgz

Скопируйте архив:

# cp /mnt/sda5/state.tgz /mnt/sdb1/save

Распакуйте архивы:

# tar -xf /mnt/sda5/state.tgz –C /temp/
# tar -xf /temp/local.tgz –C /temp/

Убедитесь, что вы распаковали каталог /etc.

Удалите архив local.tgz.

# rm /temp/local.tgz

Замените оригинальный файл shadow на тот, который вы скопировали с другого хоста:

# cp /mnt/sdb1/shadow /temp/etc

Можете посмотреть содержимое файла shadow.

# vi /temp/etc/shadow

Удалите лишние учетные записи, которые вам не нужны (кроме стандартных учеток). В моем примере я удалю пользователя Test. Сохраните файл shadow.

Упакуем содержимое каталога /etc.

# tar -czf local.tgz etc

# tar -czf state.tgz local.tgz

Скопируйте архив state.tgz на раздел с образом ESXi:

# mv state.tgz /mnt/sda5/

Отмонтируйте раздел sda5:

# umount /mnt/sda5

Перезагрузите хост:

Коллеги, рад сообщить вам, что 26 июня этого года планируется встреча сообщества VMware, в Москве.

Кроме того, стараемся чтобы эта встреча была удобна просто для общения - чтобы была возможность обсудить что и как делается у коллег, это бывает очень полезно.А из пары-тройки сотен приходящих (в том числе приезжающих из других городов) обычно удается найти подходящего собеседника.

Встреча бесплатна для участников, требуется регистрация (форма регистрации ниже).

Важно! - мы учли опыт и отзывы прошлого года, и теперь мы кардинально сократили число спонсоров и спонсорских докладов, на которые было больше всего нареканий.

Программа, как водится, еще в процессе устаканивания, но предварительно уже есть понимание кто и про что хочет рассказать:

Обязательно будет Антон Жбанков. Прошлогодний доклад "Планировщик процессора VMware ESXi 5.1" однозначно признан "самым зубодробительным и поэтому интересным" докладом прошлой встречи (реально, я по работе встречаюсь с человеком, общаемся общаемся, съезжаем на неформальные темы и тут он мне "А вот знаете такого Антона, он еще ацкий доклад делал в том году...").
В этот раз накал зубодробительности должен повыситься, без ущерба для полезности.

Добавлю больше деталей ближе к закреплению договоренностей, кратко:
-) детали и опыт с Virtual SAN;
-) дискуссия и обсуждение во главе с человеком, внедряющим "облака" своими руками.
-) остальное уточняется