Запись CAA (авторизация центра сертификации)

Электронная почта и безопасность
Запись DNS, указывающая, каким центрам сертификации разрешено выпускать сертификаты для домена.
← Вернуться к глоссарию

Что такое CAA-запись?

CAA (Certification Authority Authorization) ограничивает удостоверяющие центры, которым разрешено выпускать сертификаты для домена. Запись снижает риск ошибочной выдачи, но не заменяет защиту DNS и контроль аккаунта.

Почему CAA важна

CAA позволяет явно указать разрешённые CA и канал отчётности. Отсутствие CAA обычно означает, что CA не ограничен этой политикой.

Как работает CAA

Обязательная проверка CA

CA должен проверить CAA перед выпуском и отказать, если его идентификатор не разрешён. Ошибка DNS или неизвестный ответ требует отдельного разбора.

Формат CAA-записи

example.com.    IN    CAA    0 issue "letsencrypt.org"

Теги свойств

Чаще всего используются issue, issuewild и iodef. Значение определяет CA или URI для отчёта.

ТегНазначениеПример
issueРазрешить CA для всех сертификатовissue "letsencrypt.org"
issuewildРазрешить CA для wildcard-сертификатовissuewild "digicert.com"
iodefСообщать о несанкционированных попыткахiodef "mailto:[email protected]"

Примеры CAA-записей

Один CA (только Let's Encrypt)

Разрешите конкретный CA и отдельно решите, допускаются ли wildcard-сертификаты.

example.com.    CAA    0 issue "letsencrypt.org"

Несколько CA

Добавьте только подтверждённых поставщиков, иначе политика может быть шире ожидаемого.

example.com.    CAA    0 issue "letsencrypt.org"

example.com. CAA 0 issue "digicert.com"

example.com. CAA 0 issue "sectigo.com"

Ограничение wildcard

issuewild можно использовать для отдельного контроля wildcard-выпуска.

example.com.    CAA    0 issue "letsencrypt.org"

example.com. CAA 0 issuewild "digicert.com"

Запрет всех сертификатов

Пустое значение issue запрещает выпуск, пока не добавлена явная политика исключения.

example.com.    CAA    0 issue ";"

С отчётностью

iodef указывает URI для уведомлений, но не гарантирует доставку расследований.

example.com.    CAA    0 issue "letsencrypt.org"

example.com. CAA 0 iodef "mailto:[email protected]"

Распространённые идентификаторы CA

Сверяйте точный идентификатор с документацией CA, учитывая регистр, формат и актуальную политику.

CAИдентификатор
Удостоверяющий центр Let's Encryptletsencrypt.org
Удостоверяющий центр DigiCertdigicert.com
Удостоверяющий центр Sectigo (Comodo)sectigo.com
Удостоверяющий центр GlobalSignglobalsign.com
Удостоверяющий центр GoDaddygodaddy.com
Удостоверяющий центр Amazonamazon.com
Удостоверяющий центр Google Trust Servicespki.goog

Внедрение CAA-записей

Через DNS-провайдера

Создайте CAA в авторитетной зоне, проверьте TTL, делегацию и результат из нескольких резолверов.

Через файл зоны

Синтаксис должен соответствовать зоне, serial нужно увеличить, а изменения проверить до удаления старой политики.

; Allow Let's Encrypt and DigiCert

@ IN CAA 0 issue "letsencrypt.org"

@ IN CAA 0 issue "digicert.com"

@ IN CAA 0 iodef "mailto:[email protected]"

Наследование CAA

CAA действует по правилам DNS-зоны и может распространяться на имена без собственной записи. Проверяйте точный hostname и wildcard отдельно.

example.com.        CAA    0 issue "letsencrypt.org"     ; Applies to all

api.example.com. CAA 0 issue "digicert.com" ; Override for api

Проверка CAA-записей

Используйте dig, RDAP, authoritative NS и документацию CA, сохраняя timestamp и полный ответ.

dig example.com CAA

; ANSWER SECTION:

example.com. 300 IN CAA 0 issue "letsencrypt.org"

curl "https://domscan.net/v1/health?domain=example.com"

# Reports hasCAA in security details

Лучшие практики CAA

Документируйте владельца, используйте минимальный список CA, настройте отчётность, мониторьте изменения и тестируйте продление сертификатов.

Частые проблемы CAA

Ошибки включают неверный идентификатор, отсутствующий issue, конфликт wildcard, stale cache, DNSSEC/SERVFAIL и непроверенный URI отчёта.

Применяйте эти знания на практике

Используйте API DomScan для проверки доступности доменов, их состояния и многого другого.