当社は、ポート80でリッスンするレガシープログラムを使用しています。 (ファイアウォール)httpポートにプロキシされるHTTPS要求をサポートするために、NGINXを前に配置してセキュリティ要件を満たそうとしました。
現在の問題は、レガシープログラムにもhttpポート80を指すハードコーディングされたURLがあることです。これらのhttpリクエストをキャプチャしてhttpsにリダイレクトするポート80にリダイレクトを設定したいのですが、古いプログラムがポート80にバインドされているため、これを行うことはできません。
古いプログラムのデフォルトのバインディングポートを再設定できません。プログラムがポート80をバインドするように要求したときに他のポートに強制的にバインドする方法はcentosにありますか?
私はCentos 6.9(私が言ったようにレガシーシステム)で実行しています。
答え1
マシンAには、ポート80でマシンBにHTTP要求を行うクライアントプログラムがあります。そしてマシンBには、ポート80でHTTP要求をリッスンするサーバープログラムがあります。
A = Bの場合、クライアントとサーバー間のパケットがネットワークに到達しないため、HTTPSは意味がありません。したがって、唯一の有用なケースはA≠Bです。
AでHTTP-HTTPSプロキシを実行し、BでHTTPS-HTTPプロキシを実行します。 Aのプロキシはポート80でリッスンし、ポート443(または必要な他のポート)を介してBに要求を送信します。 Bのプロキシはポート443(または希望するポート)から要求を受信し、ローカル要求をポート80に送信します。ポート間の競合はありません。
AとBのインスタンスが1つしかない場合、SSHトンネルの設定は2つのプロキシを設定するよりも少なくなります。