letsencryptの証明書自動更新(cron)とちょっとだけSlack連携
やること
letsencryptの証明書を自動更新させるのを長らく忘れていたのでshellとcronで設定します。
やらないこと
- letsencryptのインストール・・・pythonエラーがちょっと面倒だった記憶が。。。
- letsencryptのオブションの説明・・・色々あるので。。。
環境
- さくらvps
- CentOS6系
- letsencrypt
ShellScript
shellをかきます。 shellの保存場所は適宜設けてください。
/letencrypt-autoまでのパスは適宜指定。 オプションについて同様です。(これが結構面倒な気がします。。。)
cron登録
crontab -eでcron登録します。
注意:証明書の発行数制限
cronの実行確認のテストで証明書更新しまくっていたら、「更新リクエスト多すぎやめちくり〜」というエラーがでました。
「制限に引っかかったら月曜日まで待たないといけないようです。
週に20個の証明書までOKだそうなので、それを超えないようにテストしましょう。
crontabでちょっと気になった記事
所感
更新には時間がかからないようですが、nginxを一度停止する必要があるのでサービス環境によってその辺り考慮する必要はある気がします。 作成したshellにSlack APIたたいて更新通知投げるのもいいと思いました。 ただエラーをどうやってキャッチすればいいかわからないです_| ̄|○
あった→Let's Encryptで自動更新したらSlackに通知したかった
普通にif文でかけばいいみたいです。
というわけでやっつけでshellをつくりました。 更新完了か失敗か通知を送るだけです。更新日時等の出力はしません。
letsencrypt.sh
所感
letsencryptありがたや