Web サーバーと Web ブラウザー間で HTTPS プロトコルを実装するにはどうすればよいですか?

Web サーバーと Web ブラウザー間で HTTPS プロトコルを実装するにはどうすればよいですか?

HTTPS プロトコルを実装するための要件は何ですか? 証明書を含む HTTPS サーバーが必要なことはわかっています。 HTTPS を実装するためのガイドを教えてください。

答え1

Web サーバーによって異なります。通常は、次のものが必要です。

  • 仮想サイトでポート 443 (または使用しているポート) が開いていること (Apache の場合は構成ファイルの VirtualHost セクションの Listen ディレクティブ、IIS の場合はホスト ヘッダーを追加する必要があります)
  • 有効なセキュリティ証明書
  • これを公開 Web サイトに使用していて、ブラウザーからセキュリティ警告が表示されないようにしたい場合は、信頼できる発行機関 (Verisign、Thawte、RapidSSL など)
  • 一意の IP アドレス (または、使用している IP/ポートの組み合わせが最終的に Web サイトを提供する必要があります)
  • ファイアウォールのポートが 443 (または使用しているポート)に開いていること

答え2

mod_ssl をインストールし、/etc/httpd/conf.d/ssl.conf (Red Hat / CentOS) で証明書などを設定することで、Apache などの HTTP サーバーを HTTPS を提供するように設定できます。

または、nginx のようなソフトウェア リバース プロキシ / SSL オフローダーを使用して、HTTP サーバーに SSL ターミネーションを提供することもできます。この場合、証明書はプロキシ上に存在し、SSL ネゴシエーションなどを実行し、トラフィックを HTTP サーバーに proxy_pass します。

または、F5 の BIG-IP のようなハードウェア リバース プロキシ / SSL オフローダーを使用することもできます。これは、SSL 終了に加えてローカル トラフィック管理を行う専用デバイスです。nginx と同様に、証明書はデバイス上に存在し、トラフィックを HTTP サーバーに渡します。

乾杯

関連情報