Назад | Перейти на главную страницу

Certbot-auto не обновляется при работе cron

У меня есть следующие настройки через cron:

/usr/sbin/certbot-auto renew --force-renew --quiet --post-hook "/sbin/service httpd reload" >> /var/log/letsencrypt/letsencrypt.log 2>&1

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

Attempting to renew cert (foo.com) from /etc/letsencrypt/renewal/foo.com.conf produced an unexpected error: The manual plugin is not working; there may be problems with your existing configuration.
The error was: PluginError('An authentication script must be provided with --manual-auth-hook when using the manual plugin non-interactively.',). Skipping.
All renewal attempts failed. The following certs could not be renewed:
  /etc/letsencrypt/live/foo.com/fullchain.pem (failure)

Мне не удалось найти исходную статью, в которой я это настраивал, но я не понимаю, зачем мне использовать --manual-auth-hook, если я пытаюсь сделать это в автоматическом режиме. Может кто-нибудь дайте мне знать, почему появляется это сообщение об ошибке и что мне нужно исправить, чтобы cron запускался автоматически без ошибки? Я предполагаю, что мне нужно добавить какой-то сценарий, который будет аутентифицироваться через dns или http, но я не уверен на 100% в этом.

Я не уверен, почему возникает эта ошибка, но недавно я столкнулся с той же проблемой, и мне пришлось обновить сертификат вручную, используя:

certbot-auto certonly --apache -d foo.com

Сообщение об успешном выполнении, отправленное этой командой, включало фрагмент, в котором конкретно говорилось, что я смогу автоматически обновить этот сертификат в будущем, используя «certbot-auto Renew».

- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/foo.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/foo.com/privkey.pem
Your cert will expire on 2019-02-25. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again. To non-interactively renew *all* of your certificates, run
"certbot-auto renew"

У меня есть задание cron, которое запускает автоматическое обновление certbot один раз в неделю, и если я замечу какие-либо проблемы, я вернусь и обновлю этот ответ. Если вы не получите от меня ответа до 25 февраля 2019 г., значит, сертификат можно было обновить автоматически после продления вручную, описанного выше.