ConoHa WINGでBasic認証を設定していると、無料独自SSL(Let’s Encrypt)が自動更新されないことがある

WebサイトをHTTPS化する際、無料SSL証明書のLet’s Encryptがよく用いられると思います。
今回、その証明書の自動更新設定でトラブルがあったため、解消方法を記事として残します。

目次

ConoHaから証明書更新失敗のメールが届く

当ブログでも活用しているレンタルサーバーのConoHa WINGですが、先日サーバー証明書の自動更新に失敗した旨のメールが届きました。

[コモンネーム]部分には、どのドメインに問題があったかが書かれているのですが、
今回は動作検証用に構築したWebサイトの表示に用いていたサブドメインの記載がありました。

更新失敗の原因はBasic認証(ディレクトリアクセス制限)であることが判明

証明書の更新について、公式に解説があったのでそちらも参考にしつつ原因の特定を進めます。

ConoHaサポート
無料独自SSLの更新について|ConoHa WINGサポート ConoHa WINGのご利用ガイド、よくある質問などの各種サポート情報をご案内しています。ConoHa WINGは便利なご利用ガイドと専任スタッフのサポートで安心してご利用いただけ...

検証用のWebサイトのため、一般の方に見られないようrobot避けとBasic認証(ディレクトリアクセス制限)の設定を行っていました。

Google for Developers
noindex を使用してコンテンツをインデックスから除外する | Google 検索セントラル  |  ドキュメント  |  ... noindex(ノーインデックス)とは、ページを Google のインデックスから除外し、検索結果に表示されないようにするためのメタタグです。noindex の実装方法について説明し...
ConoHaサポート
ディレクトリアクセス制限の設定をする|ConoHa WINGサポート ConoHa WINGのご利用ガイド、よくある質問などの各種サポート情報をご案内しています。ConoHa WINGは便利なご利用ガイドと専任スタッフのサポートで安心してご利用いただけ...

robot避けはあくまでGoogleにインデックスされないための物なので、証明書の更新には影響はなさそう…と思い原因から除外。

DNSレコードの設定も全く変更を加えていないので問題なし。
残る原因はBasic認証かなぁと考え、調べてみたところ…

Let’s Encryptの証明書の更新にあたっては、ドメイン配下のwell-knownというディレクトリにhttpリクエストできなければいけないことが判明。
Basic認証が掛かってしまっていることで、httpリクエストが阻害されていることが分かりました。

あわせて読みたい
動作の仕組み - Let's Encrypt - フリーな SSL/TLS 証明書 Let’s Encrypt と ACME プロトコルの目標は、HTTPS サーバーのセットアップと、ブラウザが信頼する証明書の自動的な取得を、人間の仲介なしに可能にすることです。 ...

Basic認証を解除したところ、自動更新をONにすることに成功

ConoHaの管理画面にログインし、一旦Basic認証(ディレクトリアクセス制限)を解除。
その上で自動更新設定を試みたところ、無事成功しました!

数分待って確認したところ証明書も更新されており、無事解決しました。

最後に

検索してみたところ、どうやらBasic認証を掛けたままで証明書を更新することも可能なようです。
今度はそちらの方法も試してみたいと思います!

目次