Ошибка проверки SSL-сертификата: unable to get local issuer certificate
Симптом
В логах компонентов появляется ошибка:
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
unable to get local issuer certificate
Причины
Не удалось проверить цепочку доверия SSL-сертификата.
Возможные причины:
- Отсутствие поля Subject Alternative Name (SAN) в сертификате сервера.
- Отсутствие данных о поставщике (центр сертификации, CA) в сертификате сервера.
Диагностика
Проверьте наличие 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 -E SSL_CERT=/path/server.crt SSL_KEY=/path/server.key SSL_CERT_CA=/path/ca.crt ./install.sh