2015-12-05 10 views
22

私は、私は多くのことを探索したが、単にHSTSに関するいくつかの説明を思い付いているNon-Authoritative-Reason : HSTS非権威理由ヘッダフィールド[HTTP]

レスポンスヘッダを持っている場合、それが何を意味するのか見つける難しさを抱えている(リダイレクトHTTPからHTTPSへ)。誰もそれで私を助けることができますか?ところで、私はChromeを使用しています。

おかげ

答えて

39

あなたと接続しようとしているサーバーにのみ、このサイトではなく、デフォルトのhttpで使用されているHTTPSを確保するために厳格な輸送・セキュリティ(HSTS)を使用しています。

つまり、http://www.servername.comと入力すると、Chromeは自動的にこれをhttps://www.servername.comに変換します。

これは暗号化されておらず、ハッカーによって読み取られ変更される可能性のあるhttpの使用を防止するセキュリティ機能です。これは、HSTSを使用することをChromeに(要求に応じて送信される特別なHTTPヘッダーを介して)伝えるサーバーによって設定できます。この設定は、そのヘッダーのmax-age値で定義されている一定の時間、Chromeによってキャッシュされます。さらに、サイト所有者は、Chromeに自動的に含まれるプリロードリストにサイトを送信することができます。これは、最初に訪問しても、通常はサイトを訪問してこれを有効にするためにヘッダーを受け取る必要があるためです。

Chromeがネットワークタブでこれを示す方法は、httpsバージョンのアドレスにリダイレクトするダミー307レスポンスを作成することです。しかし、これは偽のレスポンスであり、サーバーによって生成されません。実際には、要求がサーバーに送られる前にChromeが内部的に行ったものです。

サイトのこの設定を消去するには、ChromeのURLフィールドに「chrome://net-internals/#hsts」と入力し、サイトを検索して削除します。また、これをトップレベルドメインに設定し、サブドメインを含めることができますので、そこから削除する必要があります。あるいは、サーバーの設定を変更して、最大年齢が0のヘッダーを公開し、これをクリアするためにサイトを再訪し、ヘッダーの公開をやめることができます。これは、これをクリアするのが簡単ではない他のブラウザーにとって役立ちます。

この設定は、Webブラウザのコードに埋め込まれているため、プレロードリストにある場合はクリアできません。サイト所有者はプリロードリストから削除するリクエストを送信できますが、これはChromeのリリースサイクルを通過するまでに数か月かかり、他のブラウザのタイムラインは定義されていません。 Chromeでは、セキュリティ上の理由から、プリロードされた設定を上書きする方法もありません。

+0

はサイトがこれをトリガしたのクロームのキャッシュをクリアする方法はありますか? Apacheリバースプロキシ設定をデバッグしています。 – gogowitsch

+0

私の答えに詳細を追加しました。 –

+0

次のプリロードリストがあります。https://hstspreload.org/ –

1

BazzaDPの答えにいくつかの追加情報...

応答で返さNon-Authoritative-Reason : HSTSには、設定したものではありませんが、むしろ自分自身クローム。 Chromeは要求を乗っ取るので、Chromeはこの特定のヘッダーを追加して、HSTSが有効になっていることを通知します。ネットワークタブを見ると、このヘッダーが設定された偽の307応答が表示されます。

これはすべてからにサーバーのStrict-Transport-Securityヘッダーが含まれているために行われます。

あなたがすべてで行きたい場合は、ここでHSTS preload list

関連する問題