無料診断する

SSL証明書の期限切れで「保護されていない通信」と表示された時の対処法

ある朝サイトを開いたら、アドレスバーに「保護されていない通信」と表示されていた。あるいはお客様から「なんだか警告が出るんですけど」と連絡が来た——。

SSL証明書の期限切れは、前触れなく、ある日突然起きるように見えるトラブルです。実際には期限が近づいていたのですが、それを知らせてくれる人がいなかっただけ、というケースがほとんどです。

幸いなことに、この問題は原因がはっきりしており、対処法も確立されています。この記事では、何が起きているのか、今すぐ何をすればいいのか、そして二度と起こさないための設定を順にご説明します。

「保護されていない通信」とは何が起きているのか

SSL証明書は、「このサイトは本物です」という身分証明書のようなものです。この証明書があることで、訪問者とサイトの間の通信が暗号化され、入力した情報が第三者に盗み見られないようになります。

そしてこの身分証明書には有効期限があります。運転免許証と同じで、期限が切れたものは効力を持ちません。ブラウザは期限切れの証明書を見つけると、「この身元は確認できません」と判断し、訪問者に警告を出します。

表示される文言はブラウザによって異なります。

  • Chrome:「この接続ではプライバシーが保護されません」
  • Safari:「この接続ではプライバシーが保護されません」
  • アドレスバー:「保護されていない通信」「安全ではありません」

問題は、この警告画面が全画面の赤い警告として出ることがある点です。初めて訪れた人がこれを見た場合、まず間違いなく引き返します。サイトが正常に動いていても、実質的にアクセスがゼロになるのと同じ状態です。

なぜ期限切れが起きるのか

「自動更新されるはずでは?」と思われた方も多いと思います。その認識は基本的に正しく、だからこそ失敗に気づけないという問題があります。

原因1:自動更新が途中で失敗している

無料のSSL証明書として広く使われている「Let’s Encrypt」は、有効期限が90日と短く設定されており、通常はサーバーが自動的に更新します。ところが、サーバーの設定変更やドメインの設定変更をきっかけに、この自動更新が静かに失敗することがあります。

失敗しても、多くの場合誰にも通知されません。そのまま90日が経過し、ある日期限切れを迎えます。

原因2:有料証明書の更新忘れ

有料の証明書は1年更新が一般的です。更新の案内メールは届くのですが、制作会社の担当者宛てに送られていて本人に届いていない、あるいは使っていないメールアドレスに送られていた、というケースが少なくありません。

原因3:ドメインの向き先を変えた

サーバーを移転したり、DNS設定を変更したりした際に、証明書の設定が引き継がれていないことがあります。移転直後は問題なく見えても、次の更新タイミングで失敗します。

今すぐ状態を確認する方法

まず、自分のサイトの証明書がいつ切れるのかを確認しましょう。すでに切れているのか、まだ猶予があるのかで対応が変わります。

ブラウザで確認する

自分のサイトを開き、アドレスバー左側の鍵アイコンをクリックします。「この接続は保護されています」→「証明書は有効です」と進むと、有効期限が表示されます。

この方法は確実ですが、毎回手動で確認する必要があり、忘れてしまうのが難点です。

診断ツールで確認する

Site Tuneの無料診断では、URLを入れるだけで「残り何日か」を数字で表示します。残り30日を切っている場合は警告として、14日を切っている場合は危険として表示されるので、状況の緊急度がひと目で分かります。

期限が切れてしまった場合の対処

すでに警告が出ている場合、数時間以内の対応が望ましい状態です。手順は次のとおりです。

  1. サーバーの管理画面にログインする……エックスサーバー、ロリポップなど、契約しているサーバー会社の管理画面を開きます。
  2. SSL設定の画面を探す……多くの場合「SSL設定」「独自SSL設定」といった名称のメニューがあります。
  3. 該当ドメインの状態を確認する……「無効」「エラー」などと表示されていれば、そこが原因です。
  4. 証明書を再発行する……無料SSLの場合、多くは「追加する」ボタンひとつで再発行できます。反映まで数十分かかることがあります。
  5. ブラウザで確認する……この際、必ずシークレットモードで開いてください。通常の画面では以前の状態が残って表示されることがあります。

再発行してもエラーが解消しない場合は、DNS設定に問題がある可能性が高いため、サーバー会社のサポートに連絡するのが最短ルートです。この種の問い合わせは各社とも慣れており、比較的すぐに解決します。

証明書は有効なのに警告が消えない場合

証明書を再発行したのに、まだ鍵アイコンが表示されない。あるいは「一部が保護されていません」という中途半端な状態になる——。これには別の原因があります。

「混在コンテンツ」と呼ばれる状態です。ページ自体はHTTPSで配信されているのに、その中で読み込んでいる画像やファイルの一部がHTTPのままになっているケースを指します。

ブラウザから見ると「玄関は施錠されているのに、窓が一つ開いている家」のような状態です。全体としては安全と言い切れないため、警告が表示されます。

なぜ起きるのか

最も多いのは、SSL化する前に書いた記事が原因です。当時貼り付けた画像のURLが「http://」から始まったまま、記事の中に残っています。

ほかにも、テーマやプラグインが古い形式でファイルを読み込んでいる場合や、外部サービスの埋め込みコードがHTTPになっている場合があります。

どこが原因かを特定する

問題のページを開いた状態で F12 キー(Macは Option + Command + I)を押すと、開発者向けの画面が開きます。「Console」タブに「Mixed Content」という警告が出ていれば、そこに該当するファイルのURLが表示されます。

専門的な画面ですが、読むべきは「http://」で始まっているURLだけです。それが犯人になります。

記事内の画像が原因であれば、その記事を編集して画像を貼り直すだけで解決します。数が多い場合は、URLを一括置換するプラグインを使う方法もありますが、作業前のバックアップは必須です。

二度と起こさないために

SSL証明書の期限切れは、気づく仕組みさえあれば絶対に防げるトラブルです。逆に言えば、仕組みがなければ何度でも繰り返します。

  • 更新通知メールの宛先を自分のアドレスにする……制作会社任せになっていないか確認してください。
  • カレンダーに期限の1ヶ月前を登録する……原始的ですが確実です。
  • 月に一度、証明書の残日数を確認する……習慣にできれば最も確実です。

なお、SSL証明書が有効でも、HTTPでアクセスした人がHTTPSに転送されない設定になっていると、暗号化されないまま閲覧されてしまいます。あわせて確認しておきたい項目です。詳しくはWordPressの保守とは?やらないと起きる7つのリスクでも触れています。

まとめ

SSL証明書の期限切れは、技術的には単純なトラブルです。しかし訪問者から見れば「危険なサイト」以外の何物でもありません。信用の損失という意味では、被害はかなり大きいと言えます。

まずは今の残日数を確認するところから始めてください。数字が分かれば、慌てる必要があるのかどうかもはっきりします。

今のサイトの状態、60秒で確認できます

Site Tuneの無料診断ツールなら、URLを入力するだけでSSL証明書・セキュリティ設定・検索エンジンへの表示設定・表示速度など13項目を自動でチェックします。専門知識は必要ありません。結果は「何が危険で、なぜ問題なのか」を日本語で表示します。

登録不要・完全無料でご利用いただけます