ここで2つの基本的な質問:
リバースプロキシ(P)を介して3つの異なるサーバー(A、B、C)からSSLコンテンツを提供したい場合、SSLマジックはどこで発生しますか?
各サーバーがSSLのものを処理する責任があり、Xはビットをルーティングするだけだと思いますが、よくわかりません。おそらくこの場合、各マシンA、B、CでX用に署名された同じ証明書を使用します。またはXはすべてのSSL処理を単独で実行しますか?
次に、Windows Server 2008のリバースプロキシに使用するのに最適なWebサーバーは何ですか? IIS、Apacheなど。推奨事項を設定する良い例がある場合は、追加のクレジット。
ご協力いただきありがとうございます!
「リバースプロキシ」とは、プロキシ対DNAT(宛先NAT)として機能するApahceサーバーを意味すると思います。この場合、クライアントは、内部IP(IA、IB、IC)を持つサーバー(A、B、C)を外部またはパブリックIPデバイス(XA、XB、XC)として認識します。
一方、(IA、IB、IC)デバイスを単一の外部IP(XIP)として表現する場合は、複数のサブジェクト代替名を組み込んだSSL証明書を使用する必要があります。実際、パブリックIPが1つだけで、その1つのパブリックIPに対して複数のSSLサイトが必要な場合は、リバースプロキシが実行されているかどうかに関係なく、複数のサブジェクト代替名を持つ証明書を使用する必要があります。この属性は、X.500ランドでは「SubjAltName」と呼ばれます。
このリンクはあなたを助けるかもしれません: http://www.wlug.org.nz/ApacheReverseProxy
DNATがSSL証明書の処理方法を知らない限り、HTTPS接続をDNATすることはできません。基本的にMITM(man-in-the-middle)プロセスを作成しています。 SSLが保護しようとするものの1つです。
私たちの優れたCMSサポート担当者から引用します
「このために考慮する必要があるのは、SSLターミネーションを行う場所です。
言い換えると、リクエストはクライアントからhttpsとしてプロキシし、次にプロキシからApacheにSSLを終了させる内部ボックスへのhttpになります。
または
会話全体がSSLです
会話全体をhttpsとして行う必要が実際にはないため、ApacheにSSLを終了させる最初のオプションをお勧めします。
証明書を仮想ホストディレクティブ内のApacheサーバーに配置し、その要求を内部ボックスにプロキシします。」
言い換えれば、どちらかですが、独自のネットワークで内部的に暗号化することを避ける方が簡単です。
IISは、私が知る限りプロキシをリバースしません(確かに、IIS 6まで)、後でわかりません)。そのため、Apacheです。SQUIDも使用できます。直接の経験はありません。
Apacheの正しい構成については、StackOverflowに関する私の質問( https://stackoverflow.com/questions/283636/Apache-reverse-proxy-set-up-ssl-certificate )も参照してください。
Microsoft ISAサーバーをSSLのリバースプロキシとして設定できます。これにより、トラフィックがポート80を介して別のサーバーにあるIISに転送されます。これワイルドカード証明書を使用したい場合は、ワイルドカード証明書でも機能します。これを使用して、負荷分散も行うことができると思います。