有効期限が切れたサーバ証明書を使うとどうなるか? - Apache 2.4系でHTTP/2対応サーバを構築してみるテスト。
してみるテストロゴ
Apache 2.4系でHTTP/2サーバを構築してみるテスト。

有効期限が切れたサーバ証明書を使うとどうなるか?

Webサーバの証明書の期限が切れると、ブラウザにはどう表示されるのでしょうか?

Webサーバの証明書の期限が切れたり、クライアント(PC/スマートフォン)の時計がずれていると、このページで紹介しているようなエラー表示となります。

コンピュータ自体は、コンピュータの時計が狂っているのか、あるいは、サーバの証明書の有効期限が切れたのかを、判断することができないので、どちらが原因で、この画面のようなエラーメッセージがでたのかは、人間が判断しなければなりません。

以下の3つのブラウザについて、実際の画面とともに説明します。

Google Chromeの場合

サーバ証明書の期限が切れた(あるいは、クライアント(PC/スマートフォン)の時計がずれた)まま、Webサイトを開こうとすると、

この接続ではプライバシーが保護されません
www.example.com では、悪意のあるユーザーによって、パスワード、メッセージ、クレジット カードなどの情報が盗まれる可能性があります。詳細
NET::ERR_CERT_DATE_INVALID

アクセスしたページの URL、システム情報、およびページのコンテンツの一部を Google に送信して、Chrome セキュリティの改善にご協力ください。

と表示されます。

図:Chromeの警告画面

さらに、「詳細設定」をクリック/タップすると

このサーバーが www.example.com であることを確認できませんでした。セキュリティ証明書の期限が昨日で切れています。原因として、設定が不適切であるか、悪意のあるユーザーが接続を妨害していることが考えられます。パソコンの時計は現在 2020年1月30日木曜日 に設定されています。この時刻が正しくない場合は、システムの時計を修正して、このページを更新してください。
図:Chromeの警告画面(詳細)

と表示されます。

ここで、もうひとつの可能性である、クライアント(PC/スマートフォン)の時計がずれている可能性が言及されます。このエラーメッセージには、クライアントの時計の現在の時間も表示されています。時計の時間を確認し、ずれていたら修正してください。

時計が正しければ、サーバの証明書の有効期限が切れている可能性が高いです。

サーバの管理者に新しい有効期限のサーバ証明書の更新するよう伝えて、安全な暗号通信を確保してください。

ちなみに、「 www.example.comにアクセスする(安全ではありません)」をクリック/タップすると、有効期限切れですが、Webサーバにアクセスして、コンテンツを表示します。

Microsoft Edge(Chrimum base)の場合

サーバ証明書の期限が切れた(あるいは、クライアント(PC/スマートフォン)の時計がずれた)まま、Webサイトを開こうとすると、

接続がプライベートではありません
攻撃者が、www.example.com から個人情報 (パスワード、メッセージ、クレジットカードなど) を盗み取ろうとしている可能性があります。
NET::ERR_CERT_DATE_INVALID

と表示されます。おそらく英語のメッセージは、上記Google Chromeと同じだろうと思われますが、日本語訳が微妙に異なっているようです。

図:Edge(Chromium base)の警告画面

さらに、「詳細設定」をクリック/タップすると

このサーバーは www.example.com であることを証明できませんでした。セキュリティ証明書が最終日で有効期限切れになっています。構成に誤りがあるか、接続が攻撃者によって妨害されている可能性があります。コンピューターのクロックは現在 2020年1月30日木曜日 に設定されています。これが正しくないと思われる場合は、システム クロックを修正してからこのページを更新してください。

	www.example.com に進む (安全ではありません)
図:Edge(Chromium base)の警告画面(詳細)

と表示されます。

ここで、もうひとつの可能性である、クライアント(PC/スマートフォン)の時計がずれている可能性が言及されます。このエラーメッセージには、クライアントの時計の現在の時間も表示されています。時計の時間を確認し、ずれていたら修正してください。

時計が正しければ、サーバの証明書の有効期限が切れている可能性が高いです。

サーバの管理者に新しい有効期限のサーバ証明書の更新するよう伝えて、安全な暗号通信を確保してください。

ちなみに、Google Chrome同様、「 www.example.comにアクセスする(安全ではありません)」をクリック/タップすると、有効期限切れですが、Webサーバにアクセスして、コンテンツを表示します。

Mozilla Firefoxの場合

サーバ証明書の期限が切れた(あるいは、クライアント(PC/スマートフォン)の時計がずれた)まま、Webサイトを開こうとすると、

警告: 潜在的なセキュリティリスクあり

Firefox Developer Edition は問題を検知したため、www.example.com への接続を中止しました。このウェブサイトの設定が不適切、またはあなたのコンピューターの時刻設定に誤りがあります。

ウェブサイトの証明書が有効期限切れの可能性があるため、安全な接続ができません。このサイトを訪問すると、パスワードやメールアドレス、クレジットカードの詳細情報を攻撃者に盗み取られる恐れがあります。

どうすればいいですか?

あなたのコンピューターの時刻は 2020/1/30 に設定されています。正しい日付と時刻、タイムゾーンをコンピューターに設定して、www.example.com を再読み込みしてください。

すでに正しい時刻が設定されている場合は、ウェブサイトに問題があるため、あなたにできることはありません。ウェブサイトの管理者に問題を報告するのもよいでしょう。
図:Firefoxの警告画面

と表示されます。

ここで、ChromeやEdgeと違って、いきなり、クライアント(PC/スマートフォン)の時計がずれている可能性が言及されます。さらに、時間まで表示されて至れり尽くせりです。「詳細設定」を押すまでも無く、このエラーメッセージが見られて、ある程度確認できるのは便利ですね。時計の時間を確認し、ずれていたら修正してください。

時計が正しければ、サーバの証明書の有効期限が切れている可能性が高いです。

サーバの管理者に新しい有効期限のサーバ証明書の更新するよう伝えて、安全な暗号通信を確保してください。

ちなみに、「詳細情報」をクリック/タップすると

エラーの説明...

ウェブサイトは一定期間有効な証明書で同一性を証明します。www.example.com の証明書は 2020/1/29 に期限が切れました。
 
エラーコード: SEC_ERROR_EXPIRED_CERTIFICATE
 
証明書を確認
図:Firefoxの警告画面(詳細)

と、有効期限が切れている旨が表示されます。

さらに、上記2つのブラウザに無い機能として、「証明書を確認」をクリック/タップすると、証明書の内容を確認できます。これは、便利です。

ちなみに「危険を承知で続行」をクリック/タップすると、有効期限切れですが、Webサーバにアクセスして、コンテンツを表示します。

なぜ、有効期限が大事なのか?そして対処法

なぜ時計がずれたり、有効期限が切れると、エラー表示がされるのでしょうか?

それは、サーバ証明書が、公開鍵とよばれる技術を使っているためです。

サーバが、公開鍵を含むサーバ証明書を利用するには、秘密鍵と呼ばれるサーバ管理者しか知らない情報が必要です。

ところが、この秘密鍵、実は、サーバ証明書の公開鍵から、第三者が力業の計算で、求めることができてしまうのです。秘密鍵がばれてしまえば、誰でも公開鍵(=サーバ証明書)を使えることになってしまいます。

とはいえ、力業といっても、いまの、コンピュータの能力でも、何年もかかるので、有効期限を適切に設定すれば、安全な通信に影響しません。

そのため、サーバ証明書には、有効期限が設定されています。

つまり、サーバ側とクライアント(PC/スマートフォン)側の、双方の時計が正確であって、サーバ証明書を有効期限内に限って利用することで、Web上の安全な暗号通信を実現します。

ちなみに、コンピュータ自体は、コンピュータの時計が狂っているのか、あるいは、サーバの証明書の有効期限が切れたのかを、判断することができないので、どちらが原因で、この画面のようなエラーメッセージが出たのかは、人間が判断しなければなりません。

このページで紹介するような画面を見かけたら、パソコンなどの時計の時間を直したり、サーバの管理者に新しい有効期限のサーバ証明書の更新するよう伝えて、安全な暗号通信を確保してください。

NEXT >> トップページに戻る

©Copyrights 2015-2020, non-standard programmer

このサイトは、あくまでも私の個人的体験を、綴ったものです。 軽く参考程度にご利用ください。