Skip to content
EN

CAA violation: сертификат не авторизован

Коротко:

CAA (Certificate Authority Authorization) violation — DNS CAA-запись домена не разрешает указанному CA выпускать cert. Let's Encrypt, DigiCert и другие CAs проверяют CAA перед issuance. Если CAA указывает "только digicert.com", а вы запрашиваете у Let's Encrypt — refuse. Исправление: добавить CA в CAA или убрать CAA запись.

Ниже: причины, исправление, FAQ.

Проверить SSL своего сайта →

Причины ошибки

  • DNS CAA разрешает только конкретный CA (e.g. digicert.com), а вы используете Let's Encrypt
  • CAA wildcard (issuewild) не разрешает CA для wildcard certs
  • iodef CAA с неверным email — CA не может уведомить
  • CAA с ; в value — syntax error, эффективно "no CA allowed"
  • Propagation не завершился — старая CAA всё ещё cached

Пошаговое исправление

  1. Проверьте текущий CAA: Enterno DNS → тип CAA
  2. Добавьте CA в CAA: example.com. IN CAA 0 issue "letsencrypt.org"
  3. Для wildcard: example.com. IN CAA 0 issuewild "letsencrypt.org"
  4. Полный пример: CAA research
  5. Wait 24 часа после CAA обновления (propagation)

Проверить SSL-сертификат →

Смежные SSL-ошибки

Ошибка CAA violation — сертификат не авторизован: краткий обзор

Ошибка CAA violation указывает на то, что сертификат SSL не был выдан авторизованным центром сертификации (CA), что может привести к проблемам с безопасностью вашего веб-сайта. Для решения этой проблемы необходимо проверить настройки записи CAA (Certification Authority Authorization) вашего домена. Убедитесь, что запись CAA разрешает использование конкретного CA для выдачи сертификатов для вашего домена.

Понимание записи CAA и ее роли в безопасности

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

Записи CAA могут выглядеть следующим образом:

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

В этом примере только Let's Encrypt имеет право выдавать сертификаты для домена example.com. Если вы попытаетесь установить сертификат от другого CA, вы получите ошибку CAA violation.

  • Формат записи CAA:
  • example.com. CAA 0 issue "your-ca.com"
  • example.com. CAA 0 issuewild "your-ca.com" — для поддоменов

Чтобы избежать ошибок, всегда проверяйте, что записи CAA соответствуют центру сертификации, который вы используете.

Практическое решение проблемы CAA violation

Рассмотрим ситуацию, когда вы столкнулись с ошибкой CAA violation при установке сертификата от центра сертификации DigiCert. Чтобы исправить эту ошибку, выполните следующие шаги:

  1. Проверьте текущие записи CAA: Используйте команду dig для проверки существующих записей CAA вашего домена.
  2. dig example.com CAA
  3. Добавьте или измените запись CAA: Если запись CAA не включает DigiCert, добавьте ее с помощью интерфейса управления DNS вашего хостинг-провайдера. Запись может выглядеть так:
  4. example.com. CAA 0 issue "digicert.com"
  5. Подождите обновления DNS: Изменения в DNS могут занять некоторое время для распространения. Обычно это происходит в течение 30 минут до нескольких часов.
  6. Проверьте обновления: Снова выполните команду dig для проверки новых записей CAA и убедитесь, что они корректны.

После внесения изменений попробуйте снова установить сертификат. Если все сделано правильно, ошибка CAA violation должна исчезнуть.

Ошибка CAA violation: краткий ответ

Ошибка CAA violation указывает на то, что сертификат SSL не был выдан авторизованным центром сертификации (ЦС), указанным в записи CAA вашего домена. Чтобы решить эту проблему, необходимо проверить настройки записи CAA в DNS и убедиться, что выбранный ЦС включен в список разрешенных. Для этого используйте команду dig CAA ваш_домен в терминале, чтобы получить текущие записи CAA и при необходимости обновить их.

Как настроить записи CAA для правильной работы SSL-сертификатов

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

Проверка текущих записей CAA

Используйте команду dig CAA ваш_домен для получения списка текущих записей CAA. Например:

dig CAA example.com

Вывод может выглядеть следующим образом:

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

В этом случае только Let's Encrypt имеет право выдавать сертификаты для домена example.com.

Добавление или изменение записей CAA

Если ваш текущий SSL-сертификат был выдан другим ЦС, вам необходимо добавить его в записи CAA. Например, если вы используете DigiCert, добавьте следующую запись:

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

После внесения изменений в записи CAA, подождите некоторое время, чтобы обновления вступили в силу. Обычно это занимает от нескольких минут до нескольких часов, в зависимости от времени жизни (TTL) ваших DNS-записей.

Проверка корректности установки сертификата

После того как вы внесли изменения, проверьте, что сертификат установлен правильно, используя команду:

openssl s_client -connect ваш_домен:443 -servername ваш_домен

Это даст вам информацию о текущем сертификате и его соответствии записям CAA. Убедитесь, что в выводе нет ошибок, связанных с CAA violation.

Рекомендации по безопасности

  • Регулярно проверяйте ваши записи CAA, особенно после изменения ЦС или обновления сертификатов.
  • Используйте несколько записей CAA для разных ЦС, чтобы избежать проблем с доступностью.
  • Обновляйте записи CAA при смене провайдеров услуг SSL.

Таким образом, правильная настройка записей CAA является важным шагом в обеспечении безопасности вашего домена и предотвращении ошибок CAA violation при установке SSL-сертификатов.

СертификатСрок, издатель, домены (SAN)
ЦепочкаПроверка промежуточных и корневых CA
TLS-протоколВерсия TLS и набор шифров
УязвимостиHeartbleed, POODLE, слабые шифры

Почему нам доверяют

TLS 1.3
поддержка
Полная
цепочка CA
<2с
результат
30/14/7
дней до истечения

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

1

Введите домен

2

Проверка цепочки TLS

3

Дата истечения и уязвимости

Что проверяет SSL-тест?

SSL/TLS — протокол шифрования, который защищает данные между браузером и сервером. Наш инструмент анализирует сертификат, цепочку доверия, версию TLS и известныеуязвимости.

Детали сертификата

Издатель, срок действия, алгоритм подписи, покрываемые домены (SAN) и тип валидации (DV/OV/EV).

Цепочка доверия

Проверка полной цепочки: от конечного сертификата через промежуточные до корневого CA.

Анализ TLS

Версия протокола (TLS 1.2/1.3), набор шифров, поддержка Perfect Forward Secrecy (PFS).

Оповещения об истечении

Создайте монитор — получайте уведомления в Telegram и email за 30/14/7 дней до истечения.

DV vs OV vs EV сертификаты

DV (Domain Validation)
  • Подтверждение только владения доменом
  • Выдаётся за минуты автоматически
  • Бесплатно через Let's Encrypt
  • Подходит для большинства сайтов
  • Самый распространённый тип
OV / EV
  • Проверка организации (OV) или расширенная проверка (EV)
  • Выдаётся за 1-5 рабочих дней
  • Стоимость от $50 до $500/год
  • Для финансов, e-commerce, госсайтов
  • Повышает доверие пользователей

Кому это нужно

DevOps

мониторинг SSL-сертификатов

Безопасность

аудит TLS-конфигурации

SEO

HTTPS как фактор ранжирования

E-commerce

доверие покупателей

Частые ошибки

Истёкший сертификатБраузеры блокируют сайт с истёкшим SSL. Настройте автопродление или мониторинг.
Неполная цепочка сертификатовБез промежуточного CA некоторые браузеры и боты не смогут верифицировать сертификат.
Mixed content на HTTPS-сайтеHTTP-ресурсы на HTTPS-странице — замок в браузере пропадает, снижается доверие.
Использование TLS 1.0/1.1Устаревшие версии TLS содержат известные уязвимости. Используйте TLS 1.2+ или 1.3.
Несовпадение домена в сертификатеСертификат должен покрывать все домены сайта, включая www и поддомены.

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

Настройте автопродлениеLet's Encrypt + certbot с cron — сертификат обновляется автоматически каждые 60-90 дней.
Включите HSTSЗаголовок Strict-Transport-Security заставляет браузер всегда использовать HTTPS.
Используйте TLS 1.3TLS 1.3 быстрее (1-RTT handshake) и безопаснее — убраны устаревшие шифры.
Мониторьте срок действияСоздайте монитор на Enterno.io — получайте уведомления задолго до истечения.
Проверяйте цепочку после обновленияПосле обновления сертификата убедитесь, что промежуточные сертификаты установлены.

Получите больше с бесплатным аккаунтом

Мониторинг SSL-сертификатов, история проверок и уведомления за 30 дней до истечения.

Зарегистрироваться (FREE)

Больше по теме

Источники

Часто задаваемые вопросы

Мне НЕ нужен CAA — что делать?

Удалите все CAA records. Тогда любой CA может issue. CAA опционален — по умолчанию никаких ограничений.

Кто проверяет CAA?

CA перед issuance (обязательно для public CA с 2017). Browsers не проверяют CAA.

iodef CAA — обязателен?

Нет. iodef — email для уведомления при попытке мiss-issuance. Полезно, но опционально.

Как проверить CAA?

<a href="/dns">Enterno DNS</a> → CAA type. Или <code>dig CAA example.com</code>.

Запустить инструмент, который описан в этой статье

Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.