Ошибки

Certbot: DNS problem: NXDOMAIN looking up A — у имени нет записи

Let’s Encrypt спросил DNS, на какой IP-адрес ведёт имя, и получил ответ «такого имени нет». Добавьте для этого имени A-запись — для www тоже — или уберите его из команды.

Обновлено 10.10.2026≈ 6 мин чтения
Содержание 11

Что сделать прямо сейчас

  1. Посмотрите, какое имя не прошло проверку, — шаг 1.
  2. Проверьте, есть ли у него запись, — шаг 2.
  3. Добавьте A-запись или уберите имя из команды — шаг 3.
  4. Повторите выпуск сертификата — шаг 4.

Что значит это сообщение

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for example.com and www.example.com

Certbot failed to authenticate some domains (authenticator: nginx). The Certificate Authority reported these problems:
  Identifier: www.example.com
  Type:   dns
  Detail: DNS problem: NXDOMAIN looking up A for www.example.com - check that a DNS record exists for this domain; DNS problem: NXDOMAIN looking up AAAA for www.example.com - check that a DNS record exists for this domain

Hint: The Certificate Authority failed to verify the temporary nginx configuration changes made by Certbot. Ensure the listed domains point to this nginx server and that it is accessible from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

NXDOMAIN — ответ DNS «такого имени нет». Let’s Encrypt спрашивает у DNS сразу два адреса: A-запись (IPv4) и AAAA-запись (IPv6). Когда ни той ни другой нет, обе ошибки стоят в одной строке через точку с запятой.

Здесь example.com проверку прошёл, а www.example.com — нет. Имена, которые прошли, в сообщение не попадают. Причины бывают такие:

  • A-запись заведена только для example.com, а в команде есть и -d www.example.com;
  • опечатка в имени после -d;
  • записи добавлены не в той панели — не там, где на самом деле обслуживается DNS домена.

Вместо example.com в примерах подставьте свой домен. Адрес 203.0.113.10 в примерах — условный, у вас в сообщении будет IP-адрес из DNS вашего домена.

Шаг 1. Посмотрите, какое имя не прошло

Имя стоит в строке Identifier (в Certbot из пакетов Ubuntu 24.04 — Domain) и повторяется в строке Detail после слов looking up A for. Сравните его по буквам с тем, что вы писали после -d.

Шаг 2. Проверьте запись

На своём компьютере откройте терминал (Как открыть терминал) и спросите DNS об этом имени:

nslookup www.example.com

Если записи нет, в ответе будет строка:

** server can't find www.example.com: NXDOMAIN

Если вместо неё есть строка Address: с IP-адресом вашего сервера, запись уже появилась — переходите к шагу 4. Как читать ответ и как спросить NS-сервер домена напрямую, разобрано в инструкции Как проверить DNS-записи.

Шаг 3. Добавьте запись

Есть два пути.

Если www нужен. Добавьте A-запись с именем www и тем же IP-адресом, что у основного домена. Записи меняют в панели того, кто обслуживает DNS домена: регистратора или хостера. Где именно, подсказано в шаге 2 статьи A-запись, как добавить запись — в шаге 3.

Новая запись видна не сразу. Повторяйте команду из шага 2, пока вместо NXDOMAIN не появится адрес сервера.

Если www не нужен. Уберите -d www.example.com из команды Certbot — тогда сертификат будет только на example.com. Если позже понадобится www, добавьте для него A-запись и выпустите сертификат заново с обоими именами.

Шаг 4. Повторите выпуск

Сначала проверьте на тестовом сервере Let’s Encrypt — так не тратится лимит неудачных проверок. Все команды на этой странице вводятся на сервере: подключитесь к нему по SSH (как подключиться) и набирайте их в том же окне.

sudo certbot certonly --nginx --dry-run -d example.com -d www.example.com

Если в конце строка The dry run was successful., выпустите сертификат:

sudo certbot --nginx -d example.com -d www.example.com

Другие ответы DNS

Что в DetailЧто это значит
SERVFAIL looking up A for … - the domain's nameservers may be malfunctioningNS-серверы домена ответили ошибкой. Проверьте, что у домена указаны верные NS-серверы и они отвечают, — шаг 4 инструкции
query timed outNS-сервер домена не ответил вовремя. Повторите позже и проверьте NS-серверы так же
no valid A records found for …Имя есть, но A-записи у него нет — или в ней внутренний адрес вроде 192.168.… или 127.0.0.1. Укажите внешний IP-адрес сервера из панели провайдера
CAA record for … prevents issuance (Type: caa)Запись нашлась, но CAA-запись домена не разрешает Let’s Encrypt — см. CAA-запись

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

nslookup для каждого имени из команды показывает IP-адрес сервера, а Certbot с ключом --dry-run пишет The dry run was successful.

Похожие ошибки

СообщениеЧем отличается
Timeout during connectЗапись есть, но к серверу по этому адресу не подключиться
Invalid response from … 404Запись есть, но ведёт на другой сервер или по ней отвечает не тот сайт
DNS_PROBE_FINISHED_NXDOMAINТа же причина, но в браузере: сайт не открывается по имени

Тексты сообщений сверены с исходным кодом Certbot 5.8.0 — эта версия ставится через snap, как в инструкции Бесплатный SSL-сертификат, — и сервера Let’s Encrypt. В Certbot 2.9.0 из пакетов Ubuntu 24.04 вместо Identifier: стоит Domain:, а некоторые строки могут немного отличаться.

Источники

Сверено 10 октября 2026 года.

Что почитать дальше

Проверено и обновлено: 10.10.2026