Ошибки · Решение
OpenSSL X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: unable to get issuer certificate
Сертификат был найден локально при построении цепочки, но сертификат его издателя найти не удалось. В OpenSSL 3.6 это отличается от X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY, ко…
Короткий ответ
X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT означает: unable to get issuer certificate. OpenSSL не смог найти сертификат издателя для сертификата, который был найден локально при проверке цепочки; обычно это указывает на неполный набор доверенных сертификатов.
Что означает ошибка
Сертификат был найден локально при построении цепочки, но сертификат его издателя найти не удалось. В OpenSSL 3.6 это отличается от X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY, который относится к отсутствующему issuer для untrusted certificate.
Возможные причины
- В trust store есть промежуточный или иной локально найденный сертификат, но отсутствует его issuer.
- Набор trusted certificates неполон для построения цепочки до допустимого trust anchor.
- Ожидается завершение цепочки на промежуточном сертификате, но политика проверки не разрешает partial chain.
Что проверить
- Запустите `openssl verify -show_chain` и определите сертификат и depth, на котором возникает ошибка.
- Проверьте, какие сертификаты реально загружены в trust store процесса, а не только системное хранилище в целом.
- Не путайте эту ошибку с X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: в OpenSSL 3.6 у них разные условия возникновения.
Безопасные шаги
- Добавьте недостающий issuer или корректный trust anchor в доверенное хранилище, которое использует приложение.
- Если политика действительно допускает завершение цепочки на доверенном промежуточном сертификате, отдельно оцените X509_V_FLAG_PARTIAL_CHAIN вместо подмены корневого доверия.
- Повторите `openssl verify` с теми же CAfile/CApath параметрами, которые использует реальный процесс.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- Если локально найденный сертификат и его предполагаемый issuer присутствуют, но OpenSSL всё равно не строит цепочку, передайте sanitized chain, error depth и параметры trust store специалисту по PKI.
Похожие ошибки
- /errors/openssl-unable-to-get-crl/
- /errors/openssl-cert-signature-failure/
- /errors/openssl-cert-not-yet-valid/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.