さて今回は、Lightsailで立てたWebサイトにおいてLet’s Encrypt SSL 証明書を更新する話です。
発端
LightsailでWebサイトを立て、https化も成功してしばらく運用していたのだが、ある日急に https がよろしくない的なエラーが出るようになったので解決した話。
しかし、そもそもありがたくて後光が差す Bitmani製のLightsailインスタンスにより Let’s Encrypt SSL 証明書は失効前に自動的に更新されるはずなのだが、これはどうしたことか。想定外の事態です。
エラー画面
ブラウザによっていろいろでしょうが大体次の様な画面です。
原因となる話
ここにわかりやすく書いてありました。
どうやらこの 1% 以下の確率にぶち当たってしまったようです。
さらに情報収集
原因と解決がすっきりまとまっているのはこれかな。
手動で前の証明書を削除し、あらためて証明書を作成する必要があるんだと。
作業してみました
それに沿って作業をしたがどうもうまくいかない。さらに下部のやりとりを見ると、どうやら certificates フォルダー下のファイルを削除し Bitnami HTTPS 設定ツールを再度実行する必要があるらしい。
おや、それでもうまくいかない。
実は certificates フォルダー下のファイルを削除せず tmp にバックアップをとっておいた。それが役立った。バックアップをとっておいてよかった。
バックアップをとる部分からの流れ
certificatesフォルダをフォルダごとバックアップしておいてからファイル群を削除する。
bncert-tool を実行し証明書を作成しようとすると怒られる。
バックアップから certificates ファイル群を戻す。
bncert-toolを実行すると最新版をダウンロードするよう促されるので Yes。その後また bncert-tool を実行。ようやくあたらしい設定を始めることができる。
質問にどんどん答えていきます。この辺は Lightsail 導入時に経験したこと。
参考までに
AWSが提示するSSL更新方法はこちらです。いつか役に立つかも。
「Lightsail インスタンスでホストされている Bitnami スタックで Let’s Encrypt SSL 証明書を更新するにはどうすればよいですか?」うむ、そのものずばりですね。
この中でも分岐がありますが、私の場合 「bncert-tool 使用」が該当。
最後に
1月末ごろ、letsencrypt.org から TLS-ALPN-01によるエラーが発生する恐れがあるので TLS認証をすぐに更新すべしというメールが来ていました。完全に見落としていました。理由:日本語じゃないから。
メールをよく確認していれば慌てふためくこともどぎまぎすることもなかったかもしれないというお話。
余談
ふー、これでようやく開けっぱなしになっていたブラウザタグを閉じることができるぜ。
コメント