Skip to content

Решение ошибок ACME при выпуске SSL-сертификата

При включении HTTPS-режима для виртуального хоста панель BeAdmin запрашивает SSL-сертификат у Let's Encrypt и добавляет его в конфигурацию Nginx. Запрос идёт по протоколу ACME — публичному стандарту автоматического выпуска сертификатов.

Чтобы выпустить сертификат, Let's Encrypt должен убедиться, что вы действительно владеете доменом. Для этого Let's Encrypt отправляет проверочный запрос на домен с публичной стороны — если DNS, Nginx или сетевые порты настроены некорректно, проверка не проходит, и панель сообщает об ошибке.

Включение HTTPS

HTTPS включается переключателем «Подключение по HTTPS (порт 443)» при создании или редактировании виртуального хоста — панель запрашивает сертификат сразу же. Подробнее о форме виртуального хоста — в статье Nginx. Работа с виртуальными хостами, про устройство выпуска и ручной перевыпуск — в Выпуск SSL-сертификата. Эта статья — справочник по конкретным сообщениям об ошибках.

Если выпустить сертификат не удалось — панель покажет подробную ошибку. Конкретные сообщения и что с ними делать — ниже.

Сообщения об ошибках

Сообщения ниже панель выводит при ошибке выпуска. Для каждого: что произошло на стороне Let's Encrypt и что нужно поправить.

DNS-записей для домена нет

Не удалось выпустить SSL-сертификат: DNS-записи для домена не найдены.

Let's Encrypt не нашёл вообще никаких DNS-записей по доменному имени — домен либо не делегирован на DNS-серверы провайдера, либо записи ещё не добавлены.

Что делать:

  1. Проверьте, что домен делегирован на DNS-серверы вашего регистратора или провайдера.
  2. Создайте A- или AAAA-запись, указывающую на IP-адрес сервера. Как настраивать DNS — см. Настройка DNS-записей для почтового сервера (раздел про A-запись применим к любому сайту).
  3. Подождите, пока изменения распространятся (обычно несколько минут, иногда до часа), и повторите выпуск сертификата.

Нет A или AAAA-записи

Не удалось выпустить SSL-сертификат: DNS-записи типов А или АААА для домена не найдены.

Какие-то DNS-записи у домена есть (например, MX или TXT), но нет A (IPv4) или AAAA (IPv6). Без них Let's Encrypt не знает, по какому IP обращаться к серверу.

Что делать:

  1. Добавьте A-запись с IP-адресом вашего сервера или AAAA-запись, если используете IPv6.
  2. Дождитесь распространения и повторите выпуск.

DNS указывает на другой сервер

Не удалось выпустить SSL-сертификат: DNS-записи указывают на другой сервер.

A или AAAA-запись существует, но ведёт не на тот сервер, где работает BeAdmin. Запрос Let's Encrypt пришёл на чужой IP, и проверка владения провалилась.

Что делать:

  1. Сравните IP-адрес сервера в панели с A-записью домена.
  2. Поправьте A-запись у регистратора или DNS-провайдера. Если запись правильная, но добавлена недавно — подождите распространения.
  3. Если используете прокси (например, Cloudflare), на время выпуска отключите проксирование — в Cloudflare переключите облако с оранжевого на серое.

Бесконечные редиректы при проверке

Не удалось выпустить SSL-сертификат: бесконечные редиректы при попытке подтвердить владение доменом.

Сервер отвечает Let's Encrypt серией редиректов, которая зацикливается. Чаще всего это случается, когда Nginx перенаправляет HTTP на HTTPS, а HTTPS-сертификата ещё нет — Let's Encrypt не может пройти проверку через http://.

Что делать:

  1. Временно уберите принудительный редирект с HTTP на HTTPS на стороне сайта или CMS.
  2. Дождитесь успешного выпуска сертификата, после чего верните редирект.
  3. Если редирект делает CDN или внешний прокси — отключите его на время выпуска.

Превышен лимит запросов Let's Encrypt

Слишком много запросов на выпуск SSL-сертификата.

Слишком много запросов на выпуск SSL-сертификата, следующая попытка доступна через {diff} ({human}).

Let's Encrypt ограничивает количество выпусков для одного домена в неделю — лимит общий на весь домен и его поддомены. Чаще всего сюда попадают, когда несколько раз подряд пытались выпустить сертификат, не починив исходную проблему.

Что делать:

  1. Дождитесь снятия лимита. Если в сообщении указано конкретное время — ориентируйтесь на него; иначе ждите до 7 дней.
  2. Перед повторной попыткой убедитесь, что DNS, порт 80 и редиректы настроены корректно — повторная ошибка сбросит таймер заново.
  3. Если сайт срочно нужен с HTTPS, временно используйте сертификат другого центра сертификации или переведите сайт в HTTP-режим.

Порт 80 закрыт или занят

Не удалось выпустить SSL-сертификат: порт 80 на сервере закрыт или занят другим сервисом.

Let's Encrypt подтверждает владение доменом по протоколу HTTP-01: отправляет проверочный запрос на сервер по порту 80. Если этот порт закрыт фаерволом, занят другим процессом или перенаправлен — проверка не проходит.

Что делать:

  1. Откройте порт 80 в фаерволе сервера и у хостинг-провайдера.
  2. Проверьте, что Nginx слушает порт 80 — это стандартное поведение BeAdmin.
  3. Если на 80-м порту работает другой сервис, освободите его — на время выпуска порт нужен Nginx.

Тайм-аут проверки

Не удалось выпустить SSL-сертификат: Let's Encrypt не получил ответ от сервера за отведённое время.

Запрос Let's Encrypt дошёл до сервера, но сервер не ответил за отведённое время — типично для перегруженного сервера, медленной сети или внешней проблемы с маршрутизацией.

Что делать:

  1. Подождите несколько минут и повторите выпуск.
  2. Проверьте, отвечает ли сервер по HTTP с другого устройства — например, командой curl http://yourdomain.com/.well-known/acme-challenge/test.
  3. Если проблема устойчивая — обратитесь к хостинг-провайдеру.

Некорректный ответ при проверке

Не удалось выпустить SSL-сертификат: сервер вернул некорректный ответ при подтверждении владения доменом.

Сервер ответил Let's Encrypt, но в ответе оказался не тот контент, который ожидался. Чаще всего так происходит, когда виртуальный хост перехватывает запросы к /.well-known/acme-challenge/ — например, через WordPress, CMS-роутер или общий location /.

Что делать:

  1. Убедитесь, что виртуальный хост создан в BeAdmin через стандартную форму — панель добавляет нужный location для ACME автоматически.
  2. Если в конфиг Nginx добавляли свои правила вручную — проверьте, что /.well-known/acme-challenge/ не блокируется ими.
  3. Отключите плагины безопасности CMS, перехватывающие неизвестные URL.

Запрет в CAA-записи

Не удалось выпустить SSL-сертификат: CAA-запись домена запрещает выпуск через Let's Encrypt.

У домена есть CAA-запись, которая ограничивает список центров сертификации, имеющих право выпускать сертификаты. Если в этом списке нет Let's Encrypt — выпуск заблокирован на стороне DNS.

Что делать:

  1. Проверьте CAA-записи домена — например, командой dig +short CAA yourdomain.com.
  2. Добавьте CAA-запись с letsencrypt.org либо удалите ограничивающие записи, если они вам не нужны.
  3. Дождитесь распространения и повторите выпуск.

Прочая ошибка Let's Encrypt

Не удалось выпустить SSL-сертификат из-за ошибки Let's Encrypt.

Let's Encrypt вернул ошибку, для которой у панели пока нет специального разбора. В сообщении показывается общий текст, детальное описание можно увидеть в логах сервера.

Что делать:

  1. Откройте лог BeAdmin — точный текст ошибки от Let's Encrypt поможет понять причину.
  2. Сверьте сообщение с актуальным статусом Let's Encrypt — иногда сбой связан с недоступностью CA, а не с вашим сервером.
  3. Если разобраться не удаётся — напишите в поддержку и приложите текст из лога.

Полезные ссылки

BeAdmin © 2025. Все права защищены.