web-dev-qa-db-ja.com

HSTSが動作しないChrome

HSTSヘッダーを返すようにApacheを設定しました。 Google Chromeから https://lab20.example.com に接続し、開発者ツールで実行すると、次の応答ヘッダーが表示されます。Strict-Transport-Security:max-age=63072000; includeSubdomains;

しかし、それは機能しません。 http://lab20.example.com にアクセスしようとすると、Chromeで許可されます。

Chromeから実行する場合も:chrome://net-internals/#hsts Query domain "lab20.example.com"「応答が見つかりません」を受け取ります。

なぜこれが起こるのか誰かが説明できますか?

2
user2913139

同様の問題が発生している他の人にとっては、ブラウザがまだHTTPS経由でサイトにアクセスしていないことが原因である可能性があります。 HTTPS経由でアクセスしてから、HTTP経由でもう一度アクセスしてみてください。 HSTSが正しく実装されている場合、その最後のリクエストは失敗するはずです。 MDNはそれをうまく説明しています

注:Strict-Transport-Securityヘッダーはブラウザによって無視されますHTTPを使用してサイトにアクセスしたとき。これは、攻撃者がHTTP接続を傍受し、ヘッダーを挿入または削除する可能性があるためです。証明書エラーなしでHTTPSを介してサイトにアクセスすると、ブラウザはサイトがHTTPS対応であることを認識し、Strict-Transport-Securityヘッダーを尊重します。

9
sfarbota

Apacheがexample.comとwww.example.comだけでなく、すべてのサブドメインでSSLを強制するようにサイト構成を構成しましたか?

また、chrome:// net-internals /#hstsは、 https://hstspreload.appspot.com/ を介してプリロードおよび追加されたサイトからの正しいクエリのみを表示すると思います。これは、chrome:// net-internals /#hstsが機能しない理由を説明しています。

0
isdf

これは、PCでNO-SSLが有効または強制されていることが原因である可能性があります。 NO-SSLを無効にできない場合は、PCがNO-SSLの無効化をサポートしていない可能性があります。

0
RailroadHill