2016年8月17日水曜日

Certbotクライアントで、Let’s Encrypt SSL証明書を自動更新する


https://certbot.eff.org
https://letsencrypt.org/getting-started/
Let’s Encryptのクライアントが新しくなり、Certbotとなりました。

環境:CentOS6, nginx

Certbotクライアントをインストール
$ git clone https://github.com/certbot/certbot
$ cd certbot/
$ sudo yum update openssl
$ sudo ./certbot-auto --debug

SSL証明書を発行
ドメイン:my.domain.com
ルートディレクトリ:/usr/share/nginx/html
メールアドレス:me@gmail.com
$ ./certbot-auto certonly --webroot \
-w /usr/share/nginx/html -d my.domain.com \
-m me@gmail.com \
--agree-tos
$ sudo ls /etc/letsencrypt/live/my.domain.com
cert.pem  chain.pem  fullchain.pem  privkey.pem

DHパラメータファイルを作成
$ sudo openssl dhparam 2048 -out /etc/letsencrypt/live/my.domain.com/dhparam.pem
これで、証明書ファイルが揃いました。

証明書の更新
いちど生成したSSL証明書は、コマンドオプションがファイルに記録されています。
renewと打つだけなので楽。

更新コマンド
$ ~/certbot/certbot-auto renew --force-renew 
cron設定
$ crontab -e

# Renew Let's Encrypt SSL
0 0 1 * *  /home/myuser/certbot/certbot-auto renew --force-renew && service nginx reload