Let's Encrypt自動更新
先月25日に行ったLet’s Encrypt対応。
仕上げに証明書の自動更新手順を試行錯誤していたところ、
The rate limit is 5 certs in 7 days per domain
と怒られた。どうやら1ドメインにつき週に5証明書しか発行できない制限があるらしく、wwwとmailの2サーバを設定した結果、速攻で上限に引っかかったようだ。
…という不手際で間が空いてしまったが、letsencrypt-auto renew一撃で証明書が更新できる事が確認できたので、apacheのrestartまでセットにしたスクリプト /usr/local/bin/letsencrypt-renew を作成。
yano@vps:~$ cat `/usr/local/bin/letsencrypt-renew`
#!/bin/sh
/opt/letsencrypt/letsencrypt-auto renew --force-renew \
--webroot --webroot-path=/var/www/html --no-self-upgrade;
/usr/sbin/apachectl restart;
yano@vps:~$
最後に毎月末の11時59分に証明書を自動更新するよう/etc/cron.d/letsencrypt を設定。
yano@vps:~$ cat `/etc/cron.d/letsencrypt`
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
59 11 28-31 * * root if [ $(date -d 'tomorrow' +\%d) -eq 1 ]; then `letsencrypt-renew` > /dev/null;fi
yano@vps:~$
なるほど、「明日が1日」という条件は"目から鱗"だったよ。
これでひと安心。
参照
INTERNET Watch http://internet.watch.impress.co.jp/
- 証明書を無料で発行、HTTPSの導入を支援する「Let’s Encrypt」2015年夏開始 2014年11月19日
- ファーストサーバ、無料SSL証明書「Let’s Encrypt」の取り扱いを開始 2016年2月24日
Let’s Encrypt https://letsencrypt.org/
- Let’s Encrypt Launch Schedule 2015年6月16日
Let’s Encrypt 総合ポータル https://letsencrypt.jp/
Qiita http://qiita.com/
- testコマンドとcronを組み合わせ、月末にバッチを動かす 2013年6月7日
GitHub - letsencrypt/letsencrypt https://github.com/letsencrypt/