Let’s encryptの自動更新[cron]

SSL更新を自動化するためにcronにコマンドの登録を行った。

まず crontab -eで編集画面を開いて、次の1行を打ち込んだ。

# 日曜(0)の0時0分に更新
0 0 * * 0 /usr/bin/sudo /usr/bin/certbot renew

少しハマったところとしては、/usr/bin/sudoのところ。他のブログでは/usr/bin/rootとしていたのに、筆者の環境では動かなかったのだ。

ちなみにデバッグの時には、以下のコマンドを使った。このコマンドを使うと、正常終了した時の出力が /tmp/log.log として、以上終了した時は、/tmp/log-err.logとして吐き出される。

touch /tmp/log.log && touch /tmp/log-err.log

sudo crontab -e

0 0 * * 0 /usr/bin/sudo /usr/bin/certbot renew >>/tmp/log.log 2>>/tmp/log-err.log

「AWSによるサーバーレスアーキテクチャ」は、動画サイト作成を例に、LambdaやS3などを駆使し、サーバレスなエコシステムを構築する手順がわかりやすく示されているのでお勧めです。

Pocket