プログラムがあるポートでリッスンして別のポートを使用するように強制しますか?

プログラムがあるポートでリッスンして別のポートを使用するように強制しますか?

当社は、ポート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つのプロキシを設定するよりも少なくなります。

関連情報