Истек сертификат vCenter 8, простой метод устранения

SSL vCenter 8Добрый день! Рад, что вы вновь посетили IT блог Pyatilistnik. В предыдущей статье мы с вами устраняли ошибки на центре сертификации "Active Directory Certificate Services could not publish a Certificate". Сегодня продолжим траблшутить с сертификатами, но уже у другого сервиса, речь пойдет про vCenter 8, где в какой-то момент перестала работать часть функционала, плагинов. Давайте я все подробно вам опишу и поделюсь элегантным методом, от моего коллеги, как выходить из такой ситуаций. Уверен, что в своей практике вам это сильно может пригодиться.

Описание ситуации

У меня в инфраструктуре есть сервер vCenter 8, в какой-то момент при попытке входа на него, он стал отвечать дольше обычного и после попадания в веб-интерфейс стало появляться очень много ошибок.  Первое, что я увидел, это в верхней части:

Authentification failed for one or more vCenter Server system

Authentification failed for one or more vCenter Server system

После этого на главном экране я увидел ряд ошибок, самое главное, там ругалось на сертификат "Certificate status". Зная из своей практики, что если vCenter ругается на сертификат, то его починка это еще то шапито.

Certificate status

Перейдя в соответствующий раздел я понял, что у меня протух мой SSL сертификат и был выпущен новый, но по какой-то причине, что-то пошло не так. В результате чего в разделе "Certificate Management - Trusted Root" висело несколько ошибок и отсутствовали нужные корневые сертификаты. Этот раздел играет важную роль в обеспечении безопасности и аутентификации в среде виртуализации

Error occurred while fetching trusted root certificates: Service not found: com.vmware.vcenter.certificate_management.vcenter.trusted_root_chains

Error occurred while fetching trusted root certificates Service not found

В разделе "Machine SSL", так же висела ошибка, и отсутствовали сертификаты. Раздел Machine SSL в VMware vCenter Server отвечает за управление SSL-сертификатами, которые используются для обеспечения безопасной связи между vCenter Server и другими компонентами инфраструктуры VMware, такими как ESXi хосты, а также клиентами, подключающимися к vCenter.

Error occurred while fetching vmca root cert: Insufficient privileges. Contact the Administrator to get the required privileges.

Error occurred while fetching vmca root cert Insufficient privileges

В целом походив по разным разделам я практически везде получал ошибку:

An unexpected error has occurred

Ошибка работы vCenter 8 An unexpected error has occurred

В ряде разделов вообще пропал функционал, просто пропали права доступа:

You have no privileges to view this object or it does not exist

Пропали права доступа в vCenter 8: You have no privileges to view this object or it does not exist

Если возникают подобные проблемы, то нужно еще проверить все ли службы запустились, для этого есть специальный адрес у vCenter:

https://vcenter.pyatilistnik.org:5480/

Переходим на вкладку "Services" и проверяем, что все службы у которых тип запуска выставлен как автоматический, работают. В моем случае у меня не работали и не запускались службы:

  • Hybrid vCenter Service
  • VMware Certificate Management Service

При попытке их мануально запустить я получал ошибку, в которой предлагали мне скачать архив с support-bundle.

A system error occurred. See logs for details

Не запускаются службы vCenter

Как починить vCenter и выпустить новые сертификаты

  • 1️⃣ Самый простой и быстрый вариант перевыпустить сертификаты на vCenter, это откатить дату на самом виртуальном сервере, на дату старее чем дата истечения сертификата.  В vCenter Server Management перейдите в раздел "Time". Если вы используете NTP сервер, то нужно на время выставить его выключение.

Настройка NTP vCenter

Выберите пункт "Deactivated".

Edit synchronization Settings

Далее подключитесь к vCenter по ssh или sftp. Если будете использовать WinSCP, то можете получить ошибку "Cannot initialize SFTP protocol. Is the host running an SFTP server", как ее устранить можете почитать.

Подключившись в терминал вы можете воспользоваться утилитой "date".

date MMDDhhmm[[CC]YY][.ss] (Например, чтобы установить время на 15:30 1 января 2024 года, выполните: date 010115302024)

так же удостоверьтесь, что NTP в системе выключен, на случай если сбойнул vCenter Server Management. Для этого посмотрим его статус:

systemctl status ntpd

если он работает, то остановим его:

systemctl stop ntpd

далее уберем автоматический запуск службы NTP:

systemctl disable ntpd

Для полной уверенности еще можем закомментировать в файле ntp.conf все NTP серверы:

sudo nano /etc/ntp.conf (вы можете закомментировать эти строки, добавив символ # в начале каждой строки)

#server 0.pool.ntp.org iburst

#server 1.pool.ntp.org iburst

Далее перезагружаемся. После перезагрузки зайдите опять в vCenter Server Management и удостоверьтесь, что у вас запустились все службы с автоматическим стартом. У меня все сразу стало хорошо, после входу на сам vCenter вс ошибки ушли.

Статус служб vCenter

Теперь вам остается только сделать перевыпуск сертификата, выбрав его и нажав "renew SSL". Все поздравляю вы успешно устранили ошибку "Error occurred while fetching trusted root certificates: Service not found: com.vmware.vcenter.certificate_management.vcenter.trusted_root_chains".

renew SSL vCenter

  • 2️⃣Второй метод это использование утилиты lsdoctor.

Скачать lsdoctor у меня или у официального вендора, но там может ее уже и не быть.

Далее вы устанавливаете lsdoctor и запускаете с параметром -t, --trustfix. Использование этих ключей позволит вам выявить проблемы с доверием SSL для различных служб. Утилита попробует для MACHINE_SSL_CERT все проверить и поправить по возможности. Хочу отметить, что это помогает не всегда. так что готовьте бубен.

На этом у меня все. и я надеюсь. что вы починили ваш vCenter. С вами был Иван Сёмин. автор и создатель IT портала Pyatilistnik.org.

Оцените статью
Настройка серверов windows и linux
Добавить комментарий