Решение проблемы с автоматической геренацией Let’s Encrypt средствами certbot через cron
Столкнулся с проблемой, когда команда на обновление сертификатов Let’s Encrypt через certbot:
1 | /bin/certbot renew --nginx |
Работает при ручном запуске через консоль, а в случае запуска по планировщику задач cron — выдает failed.
Решить данную проблему оказалось достаточно просто, достаточно лишь в правила cron (crontab -e) прописать PATH, например, у меня на CentOS 7 файл с cron задачами выглядит следующим образом:
1 2 3 | PATH=/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 10 6,22 * * * /bin/certbot renew --nginx >> /var/log/le-renew.log |
Возможно, могут быть еще проблемы с обновлением сертификатов в случае, если запускаете не из под root, но на большинстве серверов была проблема именно в переменной окружения PATH