#Что происходит и когда применима инструкция
После настройки HTTPS Nginx пишет предупреждения об OCSP stapling — например, не удаётся найти адрес ответчика, отсутствует сертификат издателя или OCSP-ответ недоступен. Наличие предупреждения не всегда означает отказ HTTPS: сначала проверьте применимость stapling к сертификату данного удостоверяющего центра.
#Основные причины и их признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| В сертификате нет доступного OCSP-ответчикаНекоторые современные сертификаты не предоставляют OCSP URI, и сервер не может запросить ответ. | В журнале «no OCSP responder URL in the certificate» | Проверьте расширение AIA и необходимость stapling. |
| Нет промежуточного сертификата для проверкиДля stapling Nginx должен знать сертификат издателя и доверенную цепочку. | Сообщение «issuer certificate not found» | Проверьте fullchain и ssl_trusted_certificate. |
| DNS или сеть не позволяют запросить ответДля получения OCSP-ответа необходимы DNS и исходящий доступ к сервису УЦ. | В журнале временные ошибки resolve/connect | Проверьте resolver и доступность с сервера. |
#Пошаговая диагностика и устранение
- Уточните точный текст предупрежденияОткройте журнал ошибок Nginx за время запуска или reload. Запишите сообщение полностью, домен и строку конфигурации, не включая закрытые ключи. Различайте предупреждение при старте и ошибки запросов пользователей: HTTPS может продолжать нормально работать.
- Проверьте внешний TLS отдельноС другого компьютера откройте сайт через HTTPS и диагностическую команду, укажите верное SNI. Убедитесь, что сертификат доверен и цепочка полная до изменения OCSP. Не выключайте всю проверку TLS ради устранения строки журнала.
- Терминал с OpenSSL, заменить доменLinux · Терминал (Bash)КомандаТерминал с OpenSSL, заменить домен.
-statusзапрашивает OCSP stapling; отсутствие ответа не всегда означает неисправность HTTPS.openssl s_client -connect example.com:443 -servername example.com -status </dev/null
- Посмотрите URI OCSP в сертификатеНа сервере либо в сохранённом публичном сертификате изучите расширение Authority Information Access. Если URI OCSP отсутствует, не выдумывайте адрес и не назначайте сторонний сервис. Исследуйте документированную политику удостоверяющего центра.
- Linux/OpenSSL, только чтениеLinux · Терминал (Bash)КомандаLinux/OpenSSL, только чтение. Замените путь к публичному сертификату; не открывайте файл закрытого ключа.
openssl x509 -in /path/to/cert.pem -noout -text
- Проверьте настройки NginxВ конфигурации нужного домена найдите
ssl_stapling,ssl_stapling_verify,ssl_trusted_certificate,resolverи путь к цепочке. Настройки могут наследоваться из общих файлов; просмотрите итогnginx -Tтолько в защищённой среде, так как вывод содержит настройки сервера.
- Разберите проблему цепочкиЕсли Nginx сообщает об отсутствии issuer certificate, проверьте наличие нужного промежуточного сертификата в цепочке, а при включённой проверке OCSP — корректный комплект доверенных сертификатов для
ssl_trusted_certificate. Не используйте случайные PEM из форумов.
- Проверьте сетевую доступность ответчикаЕсли URL OCSP действительно указан, выясните, может ли сервер разрешить его имя и отправлять исходящий запрос в разрешённый порт. Учитывайте DNS и прокси окружения. Не открывайте входящие порты или отключайте брандмауэр целиком для решения исходящего запроса.
- Примените обоснованную настройкуЕсли издатель не предоставляет OCSP URI и stapling неприменим, согласуйте отключение только неработающего stapling для данного узла по действующей политике безопасности. Если механизм поддерживается — исправьте цепочку или DNS, сохранив исходный вариант.
- Проверьте синтаксис и повторите диагностикуПроверьте Nginx перед reload, затем сделайте внешний запрос с
-statusи изучите журнал после перезапуска. Убедитесь, что предупреждения исчезли либо отсутствие stapling документированно допустимо, а HTTPS по-прежнему доверен.Linux · Терминал (Bash)КомандаНужен sudoLinux с Nginx; только проверка синтаксиса. Для применения требуется отдельный разрешённый reload.sudo nginx -t
#Проверка результата
Статус HTTPS и доверенная цепочка не ухудшились; предупреждение либо устранено правильной цепочкой/DNS, либо зафиксировано как неприменимое stapling для конкретного сертификата с документированным решением.
#Если решить проблему не удалось
Если клиент выдаёт ошибку сертификата, не ограничивайтесь устранением OCSP-предупреждения: отдельно проверяйте имя SAN, срок, цепочку и время. Не отключайте ssl_stapling_verify лишь ради скрытия ошибки.