через серверАудит SSL / TLS
Цепочка сертификатов, сроки, отзыв, доверие и security-заголовки — проверки с оценками и понятными исправлениями. Бесплатно, без регистрации.
Как работает эта проверка
Мы открываем TLS-соединение с хостом снаружи вашей сети — ровно так же, как это делает браузер, — и читаем то, что отдаёт сервер: цепочку сертификатов, версии протоколов и наборы шифров, на которые он соглашается, и заголовки безопасности в ответе. Ничего не устанавливается, доступы не нужны: всё проверяемое и так публично.
Отзыв проверяется у самого удостоверяющего центра, а не только по файлу сертификата: прикреплённый OCSP-ответ, OCSP-респондер центра и список отзыва (CRL). Это единственная поломка, которую не видно по сроку действия: отозванный сертификат остаётся внутри срока и проходит TLS-рукопожатие, а браузеры отказываются открывать сайт с ошибкой ERR_CERT_REVOKED.
Каждая проверка получает pass, warn или fail, а итоговая оценка — по худшей из них. Warn обычно означает, что конфигурация работает сегодня, но выстрелит позже: сертификат истекает в ближайшие 30 дней, HSTS без поддоменов, TLS 1.0 всё ещё включён ради клиента, которого давно нет.
Оценка состоит из двух уровней. F означает, что браузеры отказываются открывать сайт прямо сейчас: сертификат истёк, отозван, самоподписан, выдан недоверенным центром или не покрывает этот домен. Ничем другим это не компенсируется. Всё, что ниже F, считается по очкам: проваленная проверка весит как три предупреждения, а сумма сдвигает букву от A до D.
Проверка что-то меняет на моём сервере?
Нет. Выполняется обычное TLS-рукопожатие и один HTTPS-запрос — такой же трафик создаёт любой посетитель. Ничего не записывается, соединение закрывается сразу после получения заголовков ответа.
Сертификат действителен, но браузер пишет ERR_CERT_REVOKED. Что случилось?
Удостоверяющий центр отозвал сертификат раньше срока — из-за компрометации ключа, перевыпуска или прекращения обслуживания клиента. В файле сертификат по-прежнему выглядит нормально и TLS-рукопожатие проходит, поэтому большинство инструментов считают его валидным. Этот аудит спрашивает у самого центра — через OCSP или CRL, — поэтому отозванный сертификат виден как проваленная проверка с датой и причиной отзыва. Лечится только выпуском нового сертификата: отзыв отменить нельзя.
Почему у сайта оценка F, если провалена всего одна проверка?
F — это не сумма баллов, а состояние: браузеры отказываются открывать сайт. К нему приводят только пять находок: истёкший сертификат, отозванный, самоподписанный, недоверенный издатель или сертификат, не покрывающий домен. В каждом случае посетитель видит вместо сайта предупреждение во весь экран, и идеальная настройка TLS вокруг этого ничего не меняет. Исправьте эту проверку — и оценка сразу вернётся в диапазон A–D.
В браузере сертификат валиден, а здесь ошибка. Почему?
Почти всегда — неполная цепочка. Браузер кэширует промежуточные сертификаты с других сайтов, поэтому сервер, забывший отдать промежуточный, работает у вас и ломается у нового клиента: мобильного приложения, curl, соседнего сервиса. Отдавайте полную цепочку — проверка пройдёт.
Оценка B из-за заголовков безопасности. Это проблема TLS?
Нет, и именно поэтому они показаны вместе. Сертификат может быть идеальным, а сайт при этом отдаваться без HSTS и без Content-Security-Policy. Это правки в одну строку на стороне сервера, которые сразу поднимают оценку.
Как часто перепроверять?
При каждом обновлении сертификата и после любых изменений обратного прокси или CDN. И то, и другое — типичные источники сюрпризов: обновление, потерявшее промежуточный сертификат, или прокси, тихо вернувший старый протокол.
Можно проверить внутренний хост?
Нет. Проба идёт из публичного интернета, поэтому хост должен резолвиться и отвечать публично. Это сделано намеренно: инструмент, способный дотянуться до внутренних адресов, был бы сканером чужой сети.
Смежные инструменты: Security-заголовки, HTTP-заголовки и Здоровье DNS.