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 サーバーに渡します。
乾杯