#Что происходит и как отличить проблему
Веб-сервер может отправлять только сертификат сайта, без необходимого промежуточного сертификата центра. В результате часть браузеров получает ошибку недоверенной цепочки, хотя листовой сертификат действителен. Исправление выполняет администратор сервера: нужно установить правильную полную цепочку именно для используемого домена, не подменяя корневые сертификаты у посетителей.
#Возможные причины
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Неполный файл цепочкиВ серверном файле только один PEM-блок листового сертификата. | Разные клиенты по-разному доверяют одному сайту. | Получить fullchain из официального клиента или центра. |
| Неверный порядок или чужой промежуточный сертификатСервер отдаёт промежуточный сертификат другой линии выпуска. | На независимой проверке цепочка не строится. | Переустановить правильную цепочку в заданном порядке. |
#Пошаговая проверка и устранение
- Запишите конкретную ошибку браузераНа двух устройствах откройте точно один HTTPS-адрес и сравните наличие предупреждения. Не нажимайте «Продолжить». В панели сертификата посмотрите имя, срок и центр выпуска. Это помогает не спутать отсутствие промежуточного сертификата с неправильным именем или просроченным листовым сертификатом.
- Посмотрите, какие сертификаты отдаёт серверЕсли у вас Linux/macOS с установленным OpenSSL, откройте «Терминал» и выполните echo | openssl s_client -connect example.com:443 -servername example.com -showcerts, заменив оба example.com собственным доменом. Права администратора не нужны; -connect задаёт сервер и порт, -servername — SNI, -showcerts выводит переданные PEM-сертификаты. Если команда недоступна, используйте панель хостинга либо попросите администратора выполнить её. Наличие нескольких блоков не гарантирует правильность цепочки; проверьте также ошибку Verify return code.
- Найдите официальный комплект цепочкиВ панели центра сертификации или ACME-клиента найдите файл fullchain.pem (если он предусмотрен): обычно это листовой сертификат и промежуточные сертификаты в нужном порядке. Не скачивайте промежуточные сертификаты с случайного сайта и не публикуйте приватный ключ. Если хостинг управляет сертификатами автоматически, исправьте выпуск/привязку через его штатную панель.
- Проверьте настройку сервера до перезагрузкиЕсли используется nginx и вы администратор, сохраните резервную копию конфигурации и сертификата. Убедитесь, что директива ssl_certificate указывает на правильную цепочку для нужного server_name, а ssl_certificate_key — на соответствующий закрытый ключ. После изменения выполните sudo nginx -t на сервере; права администратора нужны, -t проверяет конфигурацию без применения. Только при успешной проверке выполните штатную перезагрузку конфигурации через панель или сервисный менеджер.
- Повторите независимую проверку цепочкиОткройте сайт в разных браузерах и из другой сети. Повторите команду openssl s_client для того же домена, проверьте число и порядок переданных сертификатов и отсутствие ошибок построения цепочки. Если ошибка осталась, верните резервную конфигурацию и проверьте промежуточный сервер CDN или балансировщик, который мог отдавать другую цепочку.
- Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
#Проверка результата и дальнейшие действия
Сервер должен предоставлять полный набор промежуточных сертификатов, соответствующий листовому; браузеры доверяют цепочке без ручного импорта новых корневых сертификатов. Окончательно проверить результат надо на реальном домене после применения.