cronでLet’s EncryptのSSL証明書の更新が失敗する

Linuxサーバー

Let’s Encryptのcertbot-autoをrootで手動実行すると、正常にSSL証明書が更新できますが、cron経由で実行すると下記エラーが発生しました。

 Certbot has problem setting up the virtual environment
 You are using pip version 8.0.3, however version 9.0.1 is available

この問題を解決するには、cron処理の先頭にexprot HOME=/rootを追加する必要がありました。
/root/.local/share/letsencrypt以下のライブラリを参照できるようにする必要があるようです。
また、certbot-auto自身の更新が起きると、下記パッケージ及び依存パッケージの更新が求められる場合があり
自己アップグレードは抑制した方が良いようです。

 mod_ssl
 openssl
 openssl-devel

正常に動作するcron記述の例になります。

 30 2 * * * export HOME=/root; /root/bin/certbot-auto renew --quiet --no-self-upgrade

参考
https://github.com/certbot/certbot/issues/4033

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です