Когда браузер доверяет HTTPS-сертификату, он доверяет не просто одному файлу, который прислал сайт. Обычно существует цепочка от сертификата сайта через промежуточный центр сертификации к корневому центру, которому доверяет система.
Упрощённая цепочка
Сертификат сайта
↓
Intermediate CA
↓
Root CA
Сертификат сайта
Он выпущен непосредственно для вашего домена или набора доменов.
Intermediate CA
Центры сертификации обычно не подписывают каждый публичный сертификат прямо главным root-ключом. Используются промежуточные центры.
Root CA
Корневые сертификаты находятся в trust store операционной системы, браузера или приложения.
Почему сервер не отправляет root
Клиент должен уже иметь доверенный root. Отправленный сервером root сам по себе не создаёт доверие.
Что сервер должен отправить
Обычно:
- сертификат сайта;
- необходимые intermediate certificates.
Ошибка incomplete chain
Администратор устанавливает только сертификат домена, забывая intermediate.
Некоторые браузеры могут достроить цепочку самостоятельно, а другие клиенты — нет.
Почему «у меня работает» недостаточно
Ваш компьютер мог уже иметь нужный intermediate в кеше.
У нового клиента его нет — и он получает ошибку.
fullchain
В конфигурациях Let's Encrypt часто используется файл вида:
fullchain.pem
Он содержит серверный сертификат вместе с нужной цепочкой для отправки клиенту.
Для nginx
Типовая идея:
ssl_certificate fullchain.pem;
ssl_certificate_key privkey.pem;
Не копируйте конфигурацию вслепую
Пути и механизм управления сертификатами зависят от вашей системы.
Как увидеть цепочку
openssl s_client \
-connect example.com:443 \
-servername example.com \
-showcerts
Verify return code
Внизу вывода openssl можно увидеть результат проверки цепочки.
Почему старое устройство не доверяет сайту
В его trust store может отсутствовать нужный root CA.
Это особенно заметно на старых ОС
Современный сайт работает на новых устройствах, но очень старая система не может построить доверенную цепочку.
Сертификат от корпоративного proxy
В организациях HTTPS-трафик иногда проходит через inspection proxy, который устанавливает собственный корпоративный CA.
На управляемом устройстве он доверенный, на другом — нет.
Цепочка и self-signed
Самоподписанный сертификат не имеет публичной доверенной цепочки, если соответствующий root специально не установлен у клиента.
Как NexIP помогает
SSL Checker должен показывать не только дату окончания, но и issuer, цепочку и ошибки валидации.
Что делать при проблеме
- Проверить сертификат сайта.
- Проверить intermediate.
- Проверить fullchain.
- Перезапустить конфигурацию сервера.
- Проверить с внешней машины.
FAQ
Почему Chrome работает, а curl ругается?
У них может различаться trust store или способность достроить недостающую цепочку.
Нужно устанавливать root на сервер?
Для отправки клиенту обычно важны leaf и intermediate; доверенный root должен находиться у клиента.
Цепочка влияет на шифрование?
Она прежде всего обеспечивает проверку доверия к тому, с кем установлено защищённое соединение.
Диагностика NexIP
Продолжите реальной проверкой
Откройте полный раздел диагностики и проверьте сайт, домен или сетевые параметры.
Читайте дальше
Материалы по теме
Как узнать срок действия SSL-сертификата
Как проверить срок SSL/TLS-сертификата: notBefore, notAfter, OpenSSL, curl, ACME, автоматическое продление и мониторинг истечения.
ЧитатьЧто такое SSL-сертификат
Полное руководство по SSL/TLS: как работает HTTPS, сертификаты, SAN, wildcard, цепочка доверия, SNI, OpenSSL и диагностика через NexIP.
ЧитатьПочему браузер пишет «Подключение не защищено»
Сообщение «Подключение не защищено» не обязательно означает, что сайт заражён или вас прямо сейчас взламывают. Оно означает, что браузер не смог нормально подтвердить защищённость HTTPS-соединения. Причин несколько — от банально…
ЧитатьСертификат SSL не соответствует домену: почему так бывает
Ошибка «сертификат не соответствует имени сайта» означает буквально то, что написано: браузер подключился к серверу, получил сертификат, но не нашёл в нём домен, который пользователь открыл. Простой пример Открываем: api.example.com а…
Читать