はじめに
Let's Encryptは無料で利用できて商用利用可能な証明書発行サービスです。https化に必要なSSL証明書が無料で発行されるなんて、良い時代になりましたね。
しかし証明書の有効期限は90日なのでその度に、更新作業は面倒なので、自動化してしまいましょう。
導入手順
環境はCentOS、WebサーバはNginxを想定しています。
Lets's Encryptの導入
git clone https://github.com/certbot/certbot ~/
cd ~/certbot
sudo ./certbot-auto --debug
※yumで導入したパッケージが自動でアップデートされるのでご注意ください
SSL証明書発行
sudo ./certbot-auto certonly
指示に従ってすすめていきます。
Webサーバ(Ngninx)の設定
/etc/nginx/nginx.conf
ssl_certificate /etc/letsencrypt/live/ドメイン名/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ドメイン名/privkey.pem;
その他のSSLの設定はお使いの環境に合わせて設定してください。
sudo service nginx restart
cronで自動更新の設定
SSL証明書の有効期限が90日なので自動更新の設定をします。
#毎月1日の1時に強制的に更新をします。
0 1 1 * * root /ホームディレクトリのパス/certbot/certbot-auto renew --force-renewal && service nginx restart
これで設定終了です。簡単なのでサクッとやってしまいましょう。