iptablesを使用したREST APIリクエストとレスポンスの転送

iptablesを使用したREST APIリクエストとレスポンスの転送

私が所有しているLinuxノードが特定のパッケージ(正確にはREST APIパッケージ)の「ルーター」として機能するようにしたいと思います。

全体的な状況はこんな感じです。私はweb-uiプログラムを作成しました。このプログラムはクライアント(Node-Aと呼ばれる)になり、クライアントは私が持っているサーバー(Node-Bと呼ばれる)にREST APIリクエストを送信します。 ...私は、ノードBのドメイン名はもちろん、ノードBについては何も知りたくありません。ノードBが存在するという事実さえ知らせたくありません...その理由は、ノードBが私にとって非常に重要だからです。まだありません。安全性に満足する段階に達しました。

だから私はノードAからノードBに接続を渡すために中間ノード(node-intと呼ばれる)として持っている別のサーバーを使用することを考えました。

クライアントノードAがノードBに要求を渡し、ノードBから応答を受け取り、再びノードAに転送するノードintにREST API要求を実行しようとしています。

唯一の問題は、iptablesを使用してこれを行う方法を知りません。フィルタテーブル(FOWARDチェーン)、パケット自体を変更するためのマングルテーブル、またはnatテーブルを使用する必要がありますか?

私はこの仕事に何が一番良いのかわかりません。だから、経験豊富な誰かが私に最善のアプローチを導くことができることを願ってここに質問することです。

ありがとうございます。

答え1

これを行うためにIPテーブルを使用する必要はありませんが、httpサーバー構成を使用するだけです。

  • 2 つの http サーバーを設定します。 1つは公的に表示され(node-int)、もう1つはLAN内にあり、外部世界(node-B)からはアクセスできません。
  • パブリックサーバーでプロキシを有効にし、ここで処理されるURL、ノードBに送信されるURL、他のサーバーに送信されるURLを定義します。

もちろん、正確な設定ステートメントはhttpサーバーによって異なりますので、Apacheでは次のように実行されます。 https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html

他のhttpサーバーにも同様のことがあります。

関連情報