TLS / HTTPS

SSL: цепочка сертификатов, HSTS, mixed content и типовые ошибки

Зелёный замок зависит не только от срока сертификата. Проверяем имя, intermediates, протоколы, редиректы, HSTS и каждый ресурс страницы.

Проверено
25 августа 2026
Чтение
≈ 15 минут
Уровень
Владелец + администратор

Цепочка

Сервер должен отдать свой сертификат и промежуточные

Браузер доверяет корневому центру из своего хранилища и строит путь через промежуточный сертификат к сертификату вашего домена. Сервер обычно не должен отправлять корневой, но обязан отдать корректную intermediate chain.

Ошибка может не проявляться на компьютере, где промежуточный сертификат уже закеширован, и ломать Android, телевизор, бот или API‑клиент. Поэтому проверяйте чистыми клиентами и внешним тестом.

  • Имя входит в SAN; wildcard не покрывает домен второго уровня и глубокие поддомены.
  • Срок действия корректен, часы сервера и клиента не сбиты.
  • Отдаётся fullchain в правильном порядке.
  • Приватный ключ соответствует сертификату и защищён правами.
  • SNI и virtual host направляют домен к нужному сертификату.

Перенаправления

HTTP должен быстро и однозначно вести на канонический HTTPS

Выберите одну форму домена — с www или без — и настройте прямой постоянный редирект. Избегайте цепочки http → https → www → slash: она добавляет задержку и усложняет диагностику.

Canonical, sitemap, Open Graph, внутренние ссылки и формы должны сразу использовать HTTPS‑адрес. Проверьте callback и webhook: внешний сервис может продолжать обращаться к старому HTTP URL.

Не включайте HSTS до полной готовности всех поддоменов. После получения заголовка браузер не позволит «пройти дальше» при ошибке сертификата.

HSTS

Начинайте с малого max-age и повышайте после наблюдения

Strict-Transport-Security: max-age=86400

Сначала установите небольшой срок на полностью HTTPS‑готовом домене. Затем увеличивайте до месяцев/года. includeSubDomains добавляйте, только когда каждый текущий и будущий поддомен поддерживает HTTPS. Preload — отдельное долгосрочное решение, откат которого не мгновенный.

HSTS не исправляет сертификат. Он заставляет браузер всегда использовать HTTPS и делает ошибочную конфигурацию жёстче для пользователя.

Mixed content

HTTPS-страница должна загружать все ресурсы по защищённому каналу

Скрипты, CSS, iframe, fetch и шрифты по HTTP браузеры блокируют; часть изображений и медиа может автоматически обновляться до HTTPS. Полагаться на auto-upgrade нельзя: исправьте источники и проверьте доступность HTTPS на их стороне.

Ищите http:// в HTML, CSS, базе CMS, inline‑стилях, письмах и динамическом JSON. Пройдите все шаблоны и административные страницы. CSP upgrade-insecure-requests помогает миграции, но не заменяет исправление URL и HSTS.

Особенно опасны активные ресурсы: изменённый HTTP‑скрипт способен переписать страницу, украсть форму или перенаправить оплату.

Эксплуатация

Автопродление тоже нужно наблюдать

  1. Проверяйте продление в staging и права ACME challenge.
  2. Алертируйте заранее по внешнему наблюдателю, а не только на самом сервере.
  3. После обновления проверяйте новый serial, SAN, срок и fullchain.
  4. Следите за CAA и DNSSEC, если используете, и документируйте аварийный выпуск.
  5. Тестируйте IPv4 и IPv6: AAAA может вести на забытый сервер с другим сертификатом.

Проверяйте конкретный hostname, порт, IP‑семейство и полный набор сертификатов — слово «SSL ошибка» слишком общее для исправления.

FAQ

Частые вопросы

Почему сертификат работает на ПК, но не на телефоне?

Частая причина — неполная цепочка, которую ПК достроил из кэша. Возможны также старое доверенное хранилище, неверные часы или несовместимый TLS.

Нужно ли покупать платный сертификат?

Для обычного публичного HTTPS бесплатный автоматически продлеваемый DV-сертификат может обеспечивать тот же уровень шифрования. Выбор зависит от поддержки, автоматизации и специальных требований.

HSTS ускоряет сайт?

Для повторных визитов он исключает попытку HTTP, но его главная задача — запретить понижение до незащищённого канала.

Можно использовать block-all-mixed-content?

Директива устарела; современные браузеры уже блокируют опасный mixed content. Исправьте URL и при необходимости используйте upgrade-insecure-requests как часть миграции.

Первоисточники

Документы и руководства

  1. MDN: Strict-Transport-Security — поведение HSTS и поддоменов
  2. MDN: Mixed content — классы блокируемых ресурсов
  3. Let’s Encrypt: Chain of Trust — цепочки сертификатов

Дата проверки: 25 августа 2026. Нормы, ставки, интерфейсы ведомств и условия сервисов могут измениться. Перед юридически или финансово значимым решением сверьте актуальную редакцию первоисточника и обстоятельства вашей организации.

Напиши нам