web-dev-qa-db-ja.com

ポート80を閉じ、ポート443を開いたままにする方が安全ですか?

この質問は 次の質問と重複していないと思います。 これは、この質問に対する回答がユーザーエクスペリエンスにのみ焦点を当てているのに対し、私の質問は純粋にセキュリティに焦点を当てているためです。


シナリオ:私は小さなウェブサイトを運営していますが、これは私と数人の友人が使用することのみを目的としています。 HTTPSを使用してWebサイトに接続していますが、ポート80をブロックしたままにしています。すべての正当なユーザーは、ウェブサイトがhttps://アドレスの前面にあり、誰もが義務を負うことなくこれを受け入れ、誰もこれに関して問題を抱えていませんでした。 Webサイトでは、ユーザーが何かにアクセスする前に、最初から直接ログインする必要があります。つまり、接続の最初からSSLが必要です。 HSTSはまだ利用できませんが、サーバーでのHSTSの実装も計画されています。

質問:ポート80をブロックすると、Webサイトのセキュリティが向上しますか?私はGoogleで結果を探していましたが、すべてが純粋にユーザーエクスペリエンスに焦点を当てています(たとえば、ユーザーがhttps://リンクの前に配置しないと、Webブラウザーが接続しません。)


2
vakus

理論的には、ポート80を閉じるとシステムの安全性が高まる可能性があります。たとえば、ポート80でリッスンしている脆弱なバージョンのサーバーを実行し、ポート443で別の脆弱でないバージョンを実行した場合。同じソフトウェアをただし、どちらのポートでも、特定のポートでのみ機能する特定のバグがない限り、違いが生じることはほとんどありません。ほとんどのWebサーバーソフトウェアは、どのポートでもリッスンできるように作成されているので、抜本的に異なるコードパスが使用されることはほとんどありません(結局のところ、ポート80でHTTPSを実行することは一般的ではありませんが)。

一般的な原則は、世界に公開されるポートの数を最小限に抑えることです。ポート80を開くことの主な利点は、この場合には当てはまらないと言った使いやすさを支援することであるため、ポートを開く意味はほとんどありません。

3
Matthew

正直なところ、すべての要求をHTTPSのみにリダイレクトするようにサーバーを構成する必要があります。そうすれば、ユーザーが何を入力しても、HTTPSのままであることを自動的に確認します。これがFacebookなどの多くのサイトで行われていることです。そのため、サイトにアクセスするときにHTTPSを入力する必要がないのはこのためです。ポート80を無効にすることに関しては、私はそれを関係なくそうするでしょう

0
James

HTTPを無効にすると、ユーザーは常にhttps:// URLを使用するようになると主張できます。http://は単に機能しないためです。これにより、中間者攻撃に対してサービスをより安全にすることができます。

0
Sjoerd