Что делать когда не выпускается SSL-сертификат от LE
Что делать когда не выпускается SSL-сертификат от LE¶
Сертификат не выпускается, без возникновения каких-либо ошибок¶
Проблема с заданием periodic¶
Проверяем, всё ли в порядке с заданиями periodic
## ISPmanager periodic tasks handler (ispmgr)
* * * * * /usr/local/mgr5/sbin/cron-ispmgr sbin/mgrctl -m ispmgr periodic >/dev/null 2>&1
Делаем так
tail -f /usr/local/mgr5/var/ispmgr.log|grep periodic
Если видим строки вида
Apr 29 12:58:01 [11852:939] core_module INFO Request [mgrctl][root] 'func=periodic&out=text'
Apr 29 12:58:01 [11852:941] core_module EXTINFO Internal [][] 'func=letsencrypt.periodic'
Apr 29 12:59:01 [11852:943] core_module INFO Request [mgrctl][root] 'func=periodic&out=text'
Apr 29 12:59:01 [11852:945] core_module EXTINFO Internal [][] 'func=letsencrypt.periodic'
Если нет, проверяем всё ли впорядке с crond
systemctl status crond
systemctl start crond
После чего ждём 5-15 минут, за это время таски на выпуск сертификатов должны отработать.
Проблема слишком старой версии плагина LE¶
Бывает, что панель очень старая, и плагин LE в ней не соответствует текущим требованиям к клиентам протокола ACME для выпуска сертификатов Let's Encrypt. В таком случае сертификаты начинают обновляться только после обновления панели.
Версия плагина LE зависит от версии панели.
Выполняем
/usr/local/mgr5/bin/core ispmgr -F
/usr/local/mgr5/bin/core ispmgr -v
чтобы получить информацию о версии панели. Смотрим на (странице)[https://www.ispsystem.ru/software/ispmanager/changelog] актуальная ли версия панели используется на сервере. Если нет, обновляем панель из раздела **Возможности⇾Обновить" отметив пункт "Обновить ПО", или вручную(с помощью указания нужной версии в /etc/yum.repos.d/ispsystem.repo и обновления с помощью yum).
Принудительно обновляем серт LE на ISPManager 5 в ситуациях, когда нет времени ждать, пока отработает periodic¶
Запускаем задание на обновление сертификата командой
/usr/local/mgr5/sbin/mgrctl -m ispmgr letsencrypt.check.update force_update=yes, cert_name=${cert_name}, user_name=${username}
- cert_name – название сертификата
- username – имя пользователя, на учётной записи которого расположен сертификат.
Сертификат не выпускается из-за ошибки — подробностей в логах нет¶
Подробности пишутся в лог /usr/local/mgr5/var/letsencrypt.log. Но, с настройками логирования ошибок по умолчанию подробности в него не пишутся, да и в логе /usr/local/mgr5/var/ispmgr.log инфомрации о проблеме минимум.
Необходимо включить расширенное логирочание модулей, от работы которых зависит плагин LE, чтобы получить подробный лог.
Переходим в раздел "Настройки → Настройка логирования", выделяем модули ssl, rpc и core_modules. Нажимаем на пиктограмму "Максимальный".
Сертификат не выпускается — ошибки в логе присутствуют¶
Ошибка выпуска сертификата может возникать по причине: * временных проблем серверов LE, ответственных за выпуск сертификата * превышения лимита на запросы для выпуска сертификатов для домена * по причинам, связанным с не корректно указанными DNS-серверами для домена * проблеме, вызванной переопределением альяса .well-known/acme-challenge/ в конфигурационных файлах веб-сервера * не корректно установленным правам доступа на каталог /usr/local/mgr5/www/letsencrypt.
Временные проблемы на серверах LE¶
Проявляется проблема редко. В таких случаях нужно просто ждать.
Превышение лимита на запросы на выпуск сертификатов¶
Тоже ждать.
Не корректно настроен DNS¶
Указаны сторонние, или не корректные, DNS-сервера для домена¶
Если подтверждение при выпуске серфтиката осуществляется через DNS(была отмечена соответствующая галочка при выпуске сертификата), проверяем что у нас указаны верные DNS-сервера для домена
whois domain.name
так как запись, добавляемая плагином LE, со сторонних DNS-серверов не будет отдаваться. И её нужно добавить в таком случае вручную(последние версии панели предупреждают об этом в подобных случаях), или сменить DNS-сервера для домена.
Указана не корректная А/AAAA-запись для домена¶
При потверждение домена через запрос к файлу http://domain.name/.well-known/acme-challenge/<какой-то файл> сервера LE могут столкнуться с тем, что для домена в A/AAAA–записях указаны адреса, не указанные в свойствах WWW-домена, или ведущие на другой сервер. Плагин LE делает запрос, запрос не доходит до нужного сервера, или приходит на другой сервер из-за ошибки в А/AAAA–записях, и завершается неудачей. В таких случаях нужно внимательно проверить какие IP-адреса указаны в соответствюущих записях домена
dig +short +noshort A @8.8.8.8
dig +short +noshort AAAA @8.8.8.8
и если они отличаются от указанных в свойствах WWW-домена, исправить соответствюущие записи. После чего дождаться обновления зоны DNS домена в кэше интернет-провайдеров, и последующего за этим выпуска сертификата.
Переопределён альяс .well-known/acme-challenge/¶
Провремя конфигурационные файлы веб-сервера, убеждаемся что альяс ведёт к /usr/local/mgr5/www/letsencrypt и он указан в одном глобальном конфигурационном файле /etc/nginx/vhosts-includes/letsencrypt.conf. Если это не так, убираем лишние блоки с альясом из конфигурационных файлов, перезапускаем nginx и повторяем выпуск сертификата.
Установленны не корректные права на каталог /usr/local/mgr5/www/letsencrypt¶
Смотрим
ls -lhd /usr/local/mgr5/www/letsencrypt
lsattr /usr/local/mgr5/www/letsencrypt