次の図をご覧ください。
これはどのように機能する必要がありますか?
リモートがhttp:// myhost.com:8080/*を要求する場合、要求はループバックインターフェイスのポート8008でリッスンするhttpサーバーに転送される必要があります。これは簡単な部分です。
リモートユーザーがhttp:// myhost.com:8080/specialurl ..を要求したとき.
アプリケーションレベルゲートウェイとして機能するプログラムは、暗号化されたセッションへの接続をアップグレードできる必要があります(ポートを変更せずに)
リモートブラウザとの暗号化されたセッションを確立した後、ループバックインターフェイスのポート8000でリッスンするCプログラムに要求を転送する必要があります
私の質問は:
厳しい制限:
ソフト制限:
製品はアプリケーションゲートウェイまで試行されました(成功しませんでした)
関連するRFC
すべてを支配する1つのポート は、誰かが少なくともJavaの世界でそれを実装したことを示しています。
このようなソリューションを実稼働環境に展開したことがありますか?
私はしていません-また、それを行うことをお勧めしません。コンサルタントとして、私はクライアントに標準化された実績のあるテクノロジーを使用するように勧めています。 Edgeの場合を除いて、これらのRFCを適切に実装しているシステムはないようです。これは、私が提案またはサポートしたいことではありません。
Apacheはここでは役に立ちません。特定のポートでHTTPまたはHTTPS接続(両方ではない)のみをリッスンできます。
私の知る限り、この機能を実装する「成熟した製品」はありません。ネットワーク管理者にファイアウォールに別の穴を開けてもらうか、複数のリスニングポートを設定できる外部エンドポイントへのVPNまたはSSHトンネルを設定してください。