「自社サイトが突然見れなくなった…」
「Google検索からアクセスすると『このサイトにアクセスできません』と表示される…」
もしあなたのサイトで ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY
という見慣れないエラーに遭遇したら、この記事がきっと役に立ちます。この記事では、Web担当者やサイト運営者向けに、エラーの根本原因から具体的な解決策までを、順を追って分かりやすく解説します。
サーバー側の問題から、意外な落とし穴であるウイルス対策ソフトの問題まで、すべてを網羅。さあ、一緒に解決していきましょう!
そもそもこのエラー、何が原因なの?
このエラーメッセージ、長くて難しそうに見えますよね。一言でいうと、こうです。
あなたのサイトのサーバーセキュリティ設定が古いため、最新の通信ルール(HTTP/2)の安全基準を満たせず、ブラウザが表示をブロックしている状態
ウェブサイトを高速で安全に表示するための新しい通信ルールが「HTTP/2」です。これを利用するには、通信を暗号化するための強力なセキュリティ(TLS 1.2以上や、特定の強固な暗号化方式)が必須とされています。この基準を満たしていないと、Google Chromeなどのモダンなブラウザは「安全ではない」と判断し、アクセスを拒否してしまうのです。
【最重要】まずは原因を切り分けよう!
焦って設定をいじる前に、まず問題がどこにあるのかを特定しましょう。原因は大きく分けて「サーバー側」か「あなたのPC側」のどちらかです。
複数の異なる環境から、問題のサイトにアクセスしてみてください。
(例:社内の別のPC、自分のスマートフォン(Wi-Fiオフで)、家族のPCなど)
【A】どの端末から見てもエラーになる
→ サーバー側の問題の可能性大
または
【B】特定のPCだけでエラーが出る
→ PC側のウイルス対策ソフトなどが原因の可能性大
切り分けができましたか?では、結果に応じてそれぞれのパートに進んでください。
Part 1:【A】全ての環境でエラーが出る → サーバー側の問題を解決する
この場合、サーバーのSSL/TLS設定がHTTP/2の要件を満たしていないことが根本原因です。サーバー管理者に以下の対応を依頼するか、ご自身で設定を見直しましょう。
一般的なサーバーでの解決策 (Nginx / Apache)
サーバーの設定ファイルで、古いTLSバージョンや弱い暗号化方式(暗号スイート)を無効化し、強固なものだけを有効にします。
Nginxの場合 (`nginx.conf`など)
# TLS 1.2と1.3のみを有効化
ssl_protocols TLSv1.2 TLSv1.3;
# 強力な暗号スイートを指定
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
# サーバー側の暗号スイートを優先
ssl_prefer_server_ciphers on;
Apacheの場合 (`ssl.conf`など)
# TLS 1.2と1.3のみを有効化 (古いプロトコルを無効化)
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
# 強力な暗号スイートを指定
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
# サーバー側の暗号スイートを優先
SSLHonorCipherOrder on
注意:設定変更後は、必ずNginxやApacheなどウェブサーバーの再起動が必要です。
【レンタルサーバ(共有サーバー)編】
共有サーバーでは上記のような設定ファイルを直接編集できません。しかし、ご安心ください。簡単な方法があります。
コントロールパネルから無料SSLを再設定することで、サーバー側で推奨される最新のセキュリティ設定が自動的に適用され、問題が解決するケースがほとんどです。
- サーバーコントロールパネルにログインします。
- 左メニュー「ドメイン/SSL設定」から、該当ドメインの「変更」ボタンを押します。
- 「SSL証明書の登録」で「無料SSL(Let’s Encrypt)を利用する」を選択し、設定を完了します。(すでに利用中の場合は、一度別の証明書に切り替えてから再度設定し直すと効果的です)
もしこれで解決しない場合は、サーバー自体に問題がある可能性も考えられるため、レンタルサーバのサポートに問い合わせてみましょう。
設定の最終チェック
設定が正しくできたか、無料の診断ツールで確認しましょう。Qualys SSL Labs でドメインを診断し、総合評価が「A」以上、TLS 1.2 / 1.3が有効になっていることを確認してください。
Part 2:【B】特定のPCだけでエラーが出る → ウイルス対策ソフトを疑う
「自分のPCだけ見れない」「特定の社員からエラー報告が来た」という場合は、そのPCにインストールされているウイルス対策ソフトが原因である可能性が非常に高いです。
なぜウイルス対策ソフトが原因?
多くのソフトには、暗号化された通信(HTTPS)を監視する「HTTPSスキャン」機能があります。これは、サイトとあなたのPCの間に入って通信の中身をチェックする便利な機能ですが、このソフト自体の暗号化の仕組みが古いと、ブラウザが「安全ではない!」と判断してエラーを出してしまうのです。
解決策:ウイルス対策ソフトの設定を変更する (ノートンの例)
ここでは代表的なソフト「ノートン(Norton)」を例に解説しますが、他のソフト(ESET, カスペルスキー, ウイルスバスターなど)でも同様の機能と設定があります。
推奨される解決策は「対処法2:サイトの除外設定」です。セキュリティレベルを下げずに問題を解決できます。
対処法1:【一時確認用】機能を無効にする
原因を特定するために、一時的に機能をオフにします。
- ノートンの「設定」→「ファイアウォール」→「侵入防止とブラウザ保護」タブを開きます。
- 「SSL/TLSハンドシェイク保護」をオフにします。
- サイトが表示されるか確認し、確認後は必ず設定をオンに戻してください。
対処法2:【推奨】サイトを監視対象から除外する
安全だと分かっている自社サイトなどを、監視の対象から外す設定です。
- 上記と同じ「SSL/TLSハンドシェイク保護」の項目の横にある「設定」をクリックします。
- 「除外リスト」の画面で「サイトを追加」をクリックします。
- エラーが起きるサイトのドメイン(例:
www.example.com
)を入力して追加します。
これで、セキュリティレベルを維持したまま、問題のサイトを正常に閲覧できるようになります。
まとめ
ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY
エラーに遭遇したら、慌てずにまずは原因を切り分けましょう。
- 全端末でエラー → サーバーが原因。SSL/TLS設定を見直すか、さくらサーバーなら無料SSLを再設定。
- 特定PCでエラー → ウイルス対策ソフトが原因。HTTPSスキャン機能からサイトを除外設定する。
このエラーは、インターネット全体のセキュリティが向上している証拠でもあります。これを機に、自社サイトのセキュリティ設定を再確認し、訪問者がいつでも安心してアクセスできるサイトを維持していきましょう!
※参考にされる場合は自己責任でお願いします。