hostprofi.ru
Подобрать хостинг
Термин·буква C

CAA-запись

краткое определение

CAA-запись (Certification Authority Authorization) — тип DNS-записи, ограничивающий список удостоверяющих центров, имеющих право выдавать SSL/TLS-сертификаты для домена. Предотвращает несанкционированный выпуск сертификатов сторонними CA.

CAA-запись (Certification Authority Authorization) — ресурсная запись DNS, объявляющая, какие удостоверяющие центры (Certificate Authority, CA) авторизованы выдавать SSL/TLS-сертификаты для данного домена. С 8 сентября 2017 года все CA обязаны проверять CAA-запись перед выдачей сертификата (требование CA/Browser Forum).

Как работает

Пример CAA-записи в DNS:

example.com.    3600    IN    CAA    0 issue "letsencrypt.org"
example.com.    3600    IN    CAA    0 issue "sectigo.com"
example.com.    3600    IN    CAA    0 issuewild "letsencrypt.org"
example.com.    3600    IN    CAA    0 iodef "mailto:admin@example.com"

Теги CAA-записи: issue — разрешает CA выдавать обычные сертификаты; issuewild — разрешает wildcard-сертификаты; iodef — адрес для уведомлений при попытке несанкционированной выдачи. Если CAA-записи для домена нет, любой CA может выдать сертификат.

При попытке CA выдать сертификат для домена с CAA-записью, не разрешающей этот CA, выдача блокируется. Проверка происходит автоматически в ходе процедуры валидации домена (DV). Wildcard-сертификаты требуют отдельного тега issuewild; наличие только issue не достаточно.

История

CAA-запись определена в RFC 6844 в 2013 году. Обязательная проверка CAA со стороны всех CA введена CA/Browser Forum Ballot 187 с 8 сентября 2017 года. Стандарт обновлён RFC 8659 в 2019 году с расширением поддержки параметров. До введения обязательности CAA только крупные CA выполняли проверку добровольно.

Связь с хостингом

Хостинг-провайдеры автоматически выпускают сертификаты Let's Encrypt для клиентских доменов. Если у домена есть CAA-запись, не включающая letsencrypt.org, автоматический выпуск завершится ошибкой. При использовании автоматических SSL на хостинге убедитесь, что CAA-запись включает нужный CA или отсутствует. Для проверки используйте dig CAA example.com или MXToolbox CAA Lookup.

Синтаксис CAA-записи

Формат: domain. CAA 0 issue "letsencrypt.org". Тег issue — CA для обычных сертификатов. Тег issuewild — для Wildcard. Тег iodef — email для уведомлений о нарушениях: 0 iodef "mailto:admin@domain.ru".

Применение CAA

CAA предотвращает выдачу SSL-сертификата неавторизованным CA. С 2017 года CA/Browser Forum требует проверки CAA перед выпуском. Если CAA-записи нет — любой CA может выпустить сертификат. Добавьте CAA для ограничения: только Let's Encrypt или только DigiCert.

Практика настройки

Проверка: dig CAA domain.ru. Для нескольких CA — несколько записей issue. CAA не защищает от компрометации CA самого по себе, но снижает риск несанкционированной выдачи. Рекомендуется для корпоративных доменов как часть политики безопасности.

CAA и автоматическое выпускание сертификатов

Certbot и другие ACME-клиенты автоматически проверяют CAA перед запросом. Если CAA-запись запрещает Let's Encrypt — certbot не выдаст сертификат, вернёт ошибку. При использовании нескольких CA: несколько CAA записей типа issue. Для wildcard через DNS-01: CAA issuewild "letsencrypt.org".

Мониторинг выдачи сертификатов

crt.sh — публичный Certificate Transparency Log с поиском по домену. Настройте уведомления через Facebook CT Monitoring или certspotter — при выдаче нового сертификата для вашего домена придёт email. Это позволяет обнаружить несанкционированную выдачу сертификата.

Другие термины