Вместе с VMware vSphere 5.5 компания VMware выпустила также виртуальный модуль (Virtual Appliance) сервера управления VMware vCenter Virtual Appliance 5.5 (vCVA или, он же, vCSA), который позволяет развернуть уже готовую виртуальную машину для управления виртуальной инфраструктурой.
Как часто бывает, улучшения новой версии в плане безопасности обернулись геморроем для администраторов - оказалось, что в дефолтном варианте (если вы не меняете своевременно пароль root или не увеличиваете срок устаревания пароля) виртуальный модуль (а точнее, аккаунт root) блокируется через 90 дней после начала использования. А так как эти 90 дней для многих закончились именно сейчас, после праздников, то эта проблема стала весьма актуальной.
Итак, если эти 90 дней у вас еще не прошли, и виртуальный модуль еще не залочен, то можно сделать следующее:
1. Можно продлить срок устаревания пароля.
Зайдем в консоль vCSA как root и выведем содержимое файла безопасности /etc/shadow:
# more /etc/shadow
Пятый аргумент (выделено красным) - это число дней, через которое происходит устаревание пароля root - в данном случае установлено 1095 дней (3 года). Чтобы такое получить, нужно выполнить команду:
# passwd –x 1095 root
Следующие 3 года можно будет не беспокоиться вопросом устаревания пароля root на vCSA.
То же самое можно сделать и через веб-интерфейс настройки vCSA (https://<адрес вашего vCSA>:5480):
2. Можно отключить блокировку root на VMware vCenter Server Appliance по окончанию срока устаревания пароля.
Для этого открываем файл /etc/cron.daily/pass-expiration и меняем там фрагмент:
# disable the password if it's time and not already done.
# don't rely on the pam account facility. prepend an x in the shadow file.
if [ $TODAY -ge $DEADLINE ] && ! grep -q 'root:x' $SHADOW; then
sed -e 's/^root:\(.*\)/root:x\1/' $SHADOW -i
fi
На вот такое:
# force a password change for root if we've reached the password expiration date.
# pam.unix2 doesn't do this the way we would like, so we do this instead.
if [ $TODAY -ge $DEADLINE ]; then
chage –d 0 root
fi
Из комментария понятно, что теперь вместо блокировки root-аккаунта, мы получим запрос о смене пароля по окончании срока действия пароля.
3. Если 90 дней уже прошло, и аккаунт root залочен.
В этом случае делаем следующее:
При загрузке VMware vCSA нажимаем пробел, чтобы предотвратить автозагрузку.
Если загрузка происходит слишком быстро, и вы не успеваете нажать пробел - посмотрите сюда.
Далее нажмите клавишу <p> и введите пароль загрузчика GRUB. По умолчанию это "vmware" или, если вы меняли пароль root, сам пароль пользователя root и есть.
На пункте VMware vCenter Server Appliance нажмите клавишу <e>:
Выберите второй пункт для установки kernel boot parameters:
Далее снова нажмите клавишу <e> и в появившейся строке ввода напишите:
init=/bin/bash
Далее нажмите <Enter>.
Затем клавишу <b>, чтобы начать процесс загрузки.
Произойдет загрузка в однопользовательском режиме.
Напишите команду:
passwd root
Перезагрузите vCSA командой reboot.
Процесс также описан в KB 2069041. Обратите также внимание, что наличие включенного однопользовательского режима Linux тоже является потенциальной дыркой безопасности.