web-dev-qa-db-ja.com

他のポートではなくメインポート80のhsts

サイトのドメインにhsts http://server.mydom.tld:8 を設定したので、ブラウザはポートに移動します https://server.mydom.tld =ポート443で

ただし、他のポートで実行されている他のWebサーバーも使用しています。 http://server.mydom.tld:8888 に移動すると、 https://server.mydom.tld:8888 に転送されますが、そのサーバーはhttpsを実行しないため、リクエストは失敗します。

仕様通りですか?

http://mydom.tld または http://www.mydom.tld でhstsを実行していないことに気付きましたが、これはおそらく間違いです。

何をすべきか?

7
Lenne

はい、これは意図的なものです。 RFC 6797 状態:

     The UA MUST replace the URI scheme with "https" [RFC2818], and

     if the URI contains an explicit port component of "80", then
     the UA MUST convert the port component to be "443", or>>

     if the URI contains an explicit port component that is not
     equal to "80", the port component value MUST be preserved;
     otherwise,

     if the URI does not contain an explicit port component, the UA
     MUST NOT add one.

     NOTE:  These steps ensure that the HSTS Policy applies to HTTP
            over any TCP port of an HSTS Host.

別のドメインでプレーンHTTPサービスを実行するか、さらには、HTTP + TLSサーバーを内部プレーンHTTPサービスへのリバースプロキシとして使用する必要があります。

12
argure

別のサービスでhttpsを実行したくない場合は、DNSにエイリアスを追加できます。つまり、 https://server.domain.tld および http:// service .domain.tld:8888 は同じIP /サーバー上にあります

次に、リダイレクトを http://service.domain.tld および https://service.domain.tld から http:/に追加できます。 /service.domain.tld:8888

0
Lenne

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

0
Somebody