GCPでLet’s EncryptのSSL証明書の設定したのに有効期限が切れてしまったので自動更新にしてみた

GCPでLet’s EncryptのSSLを設定したんだけど、証明書の有効期限が90日間。証明書の自動更新を設定しようとしていたけど、忘れていて期限切れしてしまった。。

なので、自動更新を設定しよう!というやってみたメモです。

それでは都度更新ではなく自動更新にしてみようと思います。

まずは、cerbotをインストールする必要があるの?
certbotインストール使用とするもパーミッションなのかインストールできないんだけど。。

macでは、パーミッションでインストールできなかった。
コンパネでフルディスクアンセクスきってもcertbotインストールできなかった。。

あ、自分のマシンに入れるんじゃないんだ。。。
GCPでSSH接続してコマンド打つんだ。。

Let’s EncryptのSSL接続にする


GCPのVMインスタンス画面で、SSHボタンをクリック


コンソールでcertbotをインストール。初回にインストールした気もするけど。。
wget https://dl.eff.org/certbot-auto && chmod a+x certbot-auto


./certbot-auto certonly –webroot -w /var/www/html/ -d 自分のドメイン.com
/etc/letsencrypt/live/自分のドメイン.com/privkey.pem
後で使うので証明書がインストールされている場所を覚えておく


sudo nano /etc/apache2/sites-available/default-ssl.conf
の中身を確認したら、編集してた形跡があったので、

SSLCertificateFile “/etc/letsencrypt/live/example.com/cert.pem”
SSLCertificateKeyFile “/etc/letsencrypt/live/example.com/privkey.pem”
SSLCertificateChainFile “/etc/letsencrypt/live/example.com/chain.pem”
とかね。

で、
sudo a2ensite default-ssl
sudo a2enmod ssl
sudo service apache2 restart

を実行して、apacheを再起動。

httpsでアクセスしても表示されなかったので、一度インスタンスを停止して再度開始してみたら、https接続復活した。。!
Let’s Encryptのhttps接続は有効期限が3ヶ月なので、自動更新の設定をします。

証明書の自動更新設定で引き続きHTTPS接続にする

では、自動更新の設定です。
certbotをletsencryptディレクトリに移動します。


sudo mv certbot-auto /etc/letsencrypt/
ls /etc/letsencrypt/

で移動されているか確認。

crontabを開きます。
sudo crontab -e

crontabに週一回実行されるスクリプトを追加します。


45 2 * * 6 cd /etc/letsencrypt/ && ./certbot-auto renew && /etc/init.d/apache2 restart

はい、自動更新の設定が完了しました。。!

GCPでLet’s EncryptのSSLを設定したのに、
証明書の有効期限が切れてHTTPS接続が出来なくなってしまった人は、
初回以降もこれで自動更新になりますね。

コメント

タイトルとURLをコピーしました