У меня есть следующие настройки через 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 г., значит, сертификат можно было обновить автоматически после продления вручную, описанного выше.