Ошибка проверки SSL-сертификата: unable to get local issuer certificate
Симптом
В логах компонентов появляется ошибка:
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
unable to get local issuer certificate
ПричинаПричины
Не удалось проверить цепочку доверия SSL-сертификата.
ОднойВозможные изпричины:
Диагностика
Проверьте наличие SAN:
openssl x509 -in /path/to/server.crt -noout -ext subjectAltName
Норма: вывод содержит DNS: или IP: записи.
Ошибка: пустой вывод или No extensions in certificate — SAN отсутствует.
Решение
Решением
Перевыпуститьявляется сертификатперевыпуск сертификата с полем SAN. В SAN указать все адреса сервера:
DNS:server.example.com
DNS:server
IP:10.0.0.1
Проверьте наличие данных о поставщике сертификата.
В Windows откройте данные по сертификату, перейдите во вкладку «Путь сертификации» и обратите внимание на цепочку: сертификат сервера должен быть вторым от CA-сертификата. Если CA-сертификата в цепочке нет - возникнет ошибке проверки сертификата сервера.
Решением является перевыпуск сертификата с корректной цепочкой сертификации (наличие данных о центре сертификации).
После перевыпускаперевыпуска, переустановитьнужно внедрить сертификаты методом обновления Мониторинга и\или ПринтМенеджера.
Пример офлайн обновления с новымуказанием сертификатом:переменных для установки собственных сертификатов:
sudo curl -L https://s3.printum.io/box/monitoring/install.sh | \
sudo -E SSL_CERT=/path/server.crt \
SSL_KEY=/path/server.key \ SSL_CERT_CA=/path/ca.crt bash -s agent./install.sh
