ポート転送パスに従う方法

ポート転送パスに従う方法

ここに根本的な誤解があると言いますが、nginxのようなものを使わずにポートフォワーディング、URLフォワーディングのようなことをしようとします。

ポート8182からデータベース(Neptune)に接続できるリモートLinuxインスタンス(EC2)があります。このインスタンスだけがNeptuneに接続でき、localhostから直接接続することはできません。また、localhostポート8182に接続して機能するデータベース用のUIツール(GraphExp)があり、UIツールをリモートインスタンスを介してデータベースに接続したいと思います。

ユーザーインターフェイス --> localhost:8182 --> ec2-instance.amazonaws.com:8182 --> neptune-db.amazonaws.com:8182/gremlin

問題は、データベースを照会するにはデータベースをパスに送信する必要があることです/gremlin

たとえば、SSHを介してEC2インスタンスに接続すると、次のようにデータベースを正常にクエリできます。

curl -X POST -H 'Content-Type:application/json' https://db-cluster-url-name.region.neptune.amazonaws.com:8182/gremlin -d '{"gremlin":"g.V().groupCount().by(label)"}'

一方、UIツールはパスなしでポート8182にのみ要求を送信します。次のようにポート転送を設定してみました。

ssh -vL 8182:db-cluster-url-name.region.neptune.amazonaws.com:8182 -i key.pem [email protected]

ただし、要求はパスdb-cluster-url-name.region.neptune.amazonaws.com:8182がない場所に転送されます/gremlin

ローカルポート8182への要求がデータベースのポート8182に転送されるように、これらのサーバー間の関係を設定するにはどうすればよいですか?追加パスを含める

理想的には、NGinXなどの重い技術を避けるために、パッケージマネージャに付属のプレインストールまたはunixコマンドを含むソリューションが必要です。しかし、私は何でも効果があることから始めます。乞食はセレクタにはできません。 :-)

ご協力ありがとうございます!

ベストアンサー1

おすすめ記事