Не удалось выбрать подходящий плагин: плагин nginx не работает;


Обработка /etc/letsencrypt/renewal/api.shunhinggaoke.com.conf

Сертификат не подлежит обновлению, но имитирует обновление для пробного запуска. Не удалось выбрать подходящий подключаемый модуль: подключаемый модуль nginx не работает; могут быть проблемы с вашей существующей конфигурацией. Ошибка была: NoInstallationError () Попытка обновить сертификат (api.shunhinggaoke.com) из /etc/letsencrypt/renewal/api.shunhinggaoke.com.conf вызвала непредвиденную ошибку: подключаемый модуль nginx не работает; могут быть проблемы с вашей существующей конфигурацией. Ошибка была: NoInstallationError (). Пропуская. Все попытки продления не удались. Следующие сертификаты не могут быть обновлены: /etc/letsencrypt/live/api.shunhinggaoke.com/fullchain.pem (сбой)


** СУХОЙ ЗАПУСК: имитация 'обновления сертификата' близко к истечению срока действия сертификата ** (тестовые сертификаты ниже не были сохранены.)

Все попытки продления не удались. Следующие сертификаты не могут быть обновлены: /etc/letsencrypt/live/api.shunhinggaoke.com/fullchain.pem (сбой) ** СУХОЙ ЗАПУСК: имитация «обновления сертификата» близко к истечению срока действия сертификата.

** (Сертификаты испытаний выше не были сохранены.)

1 сбой при обновлении, 0 сбоев при синтаксическом анализе


person ray0324    schedule 30.04.2018    source источник


Ответы (1)


Я только что наткнулся на ваш вопрос и не знаю, осталась ли у вас проблема. Вам нужно разместить более подробную информацию. Вы даже не указываете, на какой платформе у вас проблема. Я предполагаю, что это на машине с Linux. Если да, то выполняете ли вы команду certbot renew --dry-run из командной строки или из сценария cron?

Вышеупомянутая проблема указывает на проблему среды, скорее всего, на проблему с PATH, и я предполагаю, что вы получите это только при запуске скрипта через cron. Я также предполагаю, что вы добавили его в свой crontab с помощью команды crontab -e или sudo crontab -e.

Обычно предлагаемое решение - установить PATH в самом файле crontab и повторить попытку. Это означает, что не выполняйте (sudo) crontab -e, но убедитесь, что он установлен либо в системном crontab в файле / etc / crontab, либо в файле crontab для certbot.

Для меня в Ubuntu 16.04 это /etc/crond.d/certbot, и это выглядит так:

#lots of commented lines preceding ...
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e'sleep int(rand(43200))' && certbot -q renew

Ходит два раза в день. Вы можете протестировать это, добавив еще одну строчку вроде этой:

 * * * * * root /usr/bin/certbot renew --quiet --dry-run

а затем просмотрите журнал своего Certbot. Вероятно, он находится в /var/log/letsencrypt/letsencrypt.log и защищен от чтения. Сделайте

sudo tail -f  /var/log/letsencrypt/letsencrypt.log

и посмотрите, что у вас получится. Вы должны получить no renewal failures в конце цикла, если все работает нормально. Сценарий запускается каждую минуту, поэтому отключите его после получения журналов.

person Renato    schedule 10.07.2018
comment
Голосование за подсказку PATH - person Fo.; 26.10.2018