certbot は本当に証明書を更新してくれるのでしょうか?

certbot は本当に証明書を更新してくれるのでしょうか?

を見ると/etc/cron.d/certbot、そうは思えません。そのファイルには次の行が含まれています:

0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew

/usr/bin/certbotそして、私が間違って読んでいない限り、更新は、読み取り可能な実行ファイル(存在する)があり、ないというディレクトリ/run/systemd/system(空ですが存在します)。

それで、私の言うことは正しいのでしょうかcertbot -q renew?ビットは決して実行されないのでしょうか?おそらく、更新をトリガーする他の場所があるのでしょうか?(チェックされているので何かがあるかもしれないと思いましたが/run/systemd/system、言ったように、ありません。好奇心から、なぜする/run/systemd/systemこの小さなスクリプトは、?が存在しないかどうかをチェックします。

これは最新のバージョンcertbot(v1.18.0、昨日インストールしたもの)で実行されています公式の指示) を Ubuntu 18.04 で実行します。

ちなみに、私は以下を実行しました:

test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot renew --dry-run

コマンドラインで root として実行し、終了ステータス 1 で直ちに終了します。

答え1

システムが を使用している場合systemd、時間によってトリガーされる systemd サービスとして実行されます。

実行すると、 systemd からsystemctl status certbot.timerトリガーされるサービスのステータスが取得されますcertbot

このため、マシン上で systemd が検出された場合は、cron スクリプトは更新を実行しないように構成されます。

関連情報