- ベストアンサー
SSLアクセラレータ使用時の動作について
- SSLアクセラレータを使用したロードバランサの動作について教えてください。
- ロードバランサ上でhttpsからhttpに変換されるため、復号処理はロードバランサで行われます。
- ロードバランサとWEBサーバの間の通信はhttp(port:80)で行われます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 まず、「SSLアクセラレーション」というのは Webサーバで OpenSSLが処理している機能を「代行」していることになります。 用語でいえば「SSL(HTTPS)通信の終端」がロードバランサということです。 Webサーバで SSL終端をおこなう場合には、CSR発行→申請→証明書登録という作業をおこないます。 ロードバランサでも同じです。(CSR発行はロードバランサ上である必要はありませんが) このような作業をおこなわないと、アクセラレーション機能は使えない。ということです。 >追加の質問なのですが、該当ホスト名宛ての通信だけが、 >SSLアクセラレーションで処理されるとすると、 >IPアドレスを直接指定した場合等はhttpsで通信に行くと何もされないのでしょうか。 いいえ、https://(IPアドレス)でも SSL通信はされます。 ただし、アクセス時に「この証明書は信頼できるものではありません」といったメッセージが表示されると思います。 こんな画面です。 https://www.verisign.co.jp/basic/alert/ie/01.html これは、SSL証明書の「役割」によります。 SSL証明書は「ホスト名(FQDN名)の身元が正しいことを証明する」ものとなっています。 つまり、「この名前は正しいものですよ」というお墨付きを与えています。 もう一つ「暗号化」という機能がありますが、この機能自体は動きます。 ただし、その鍵が名前をもとにしていることもあり、上記のようなメッセージが出ることになります。 SSLの話+ロードバランサの話という構造になっているので、 まずはSSLの内容をしっかり押さえていくことがポイントだと思います。
その他の回答 (1)
- naniwacchi
- ベストアンサー率47% (942/1970)
以下、ちょっと長いですが。 >この場合、インターネットから来る全てのhttpsでの接続はロードバランサ上で >復号処理がされるのでしょうか?(質問(1)) 「すべて」ではありません。 ロードバランサでは「仮想サーバ」という入り口を設けますが、 この入り口にSSLアクセラレーションの機能を持たせるかどうかで変わります。 たとえば、以下のような構成ができます。 A) 仮想サーバ:VS1は、HTTPS通信を受けて、SSLアクセラレーション有 B) 仮想サーバ:VS2は、HTTPS通信を受けるが、SSLアクセラレーション無 質問(3)の内容ともかぶりますが、この構成だと通信プロトコルは以下のようになります。 A) クライアント~ロードバランサ間は HTTPS、ロードバランサ~WEBサーバ間は HTTP B) クライアント~ロードバランサ~WEBサーバ間は、すべて HTTPS (つまり、WEBサーバ上に証明書をおかなければならない) >また、この場合、WEBサーバ上でSSLのサービス(OpenSSL等)が >起動されていても、復号処理はロードバランサで行われるため、 >WEBサーバ上のSSLのサービスは使用されないのでしょうか?(質問(2)) 上記A)の場合に該当するので、WEBサーバ上のSSLサービスは使用されません。 >ロードバランサで復号されるということは、ロードバランサと >WEBサーバの間の通信はhttp(port:80)で行われるのでしょうか?(質問(3)) 質問(1)の回答を参照してください。 SSL証明書はアクセスするホスト名(FQDN名)に紐付いた形で取得されると思います。 ですので、 ホスト名(FQDN名) ⇔ 仮想サーバのIPアドレス という関係にあります。 そのホスト名宛ての通信だけが、ロードバランサ上でのSSLアクセラレーションにて処理されることになります。
お礼
ご回答ありがとうございます。 >「すべて」ではありません。 > ロードバランサでは「仮想サーバ」という入り口を設けますが、 > この入り口にSSLアクセラレーションの機能を持たせるかどうかで変わります。 ロードバランサがSSLアクセラレータ機能を持っているというだけでは、 ロードバランサ上でSSL通信が行われるというわけではなく、 仮装サーバ(ホスト)毎に、SSLアクセラレータ機能を有効にする/しないの設定をして、 使用するという理解で合っていますでしょうか。なんとなく分かりました。 >上記A)の場合に該当するので、WEBサーバ上のSSLサービスは使用されません。 やはり、WEBサーバ上のSSLサービスは使用されないのですね。 スッキリしました。 >質問(1)の回答を参照してください。 WEBでも色々検索してみましたが、ロードバランサ~WEBサーバ間は HTTPで通信される様ですね。 スッキリしました。 ただし、ポートは80以外を使用することもできるみたいですね。 >そのホスト名宛ての通信だけが、ロードバランサ上でのSSLアクセラレーションにて処理されることになります。 追加の質問なのですが、該当ホスト名宛ての通信だけが、SSLアクセラレーションで処理されるとすると、 IPアドレスを直接指定した場合等はhttpsで通信に行くと何もされないのでしょうか。 #的外れな質問でしたらすみません。
お礼
再度のご回答ありがとうございます。 > もう一つ「暗号化」という機能がありますが、この機能自体は動きます。 > ただし、その鍵が名前をもとにしていることもあり、上記のようなメッセージが出ることになります。 なるほど。 理解致しました。 まずはSSL単体についてもっと知る必要がありそうです。