![SSHポート転送のようなWindows Serverのポート転送](https://rvso.com/image/1618342/SSH%E3%83%9D%E3%83%BC%E3%83%88%E8%BB%A2%E9%80%81%E3%81%AE%E3%82%88%E3%81%86%E3%81%AAWindows%20Server%E3%81%AE%E3%83%9D%E3%83%BC%E3%83%88%E8%BB%A2%E9%80%81.png)
多くの VM インスタンス (HyperV を使用して実行) を持つ Windows Server 2019 があります。各 VM には独自のプライベート IP があり、内部で実行され、ポート経由で公開されるいくつかのアプリがあります。
次のようになります:
VM1: 実行中のアプリ nodejs ポート 3000、プライベート IP: 10.10.10.1
VM2: 実行中のアプリ PHP ポート 3001、プライベート IP: 10.10.10.2
今、同僚がインターネットに公開することなく各 VM 内のアプリにアクセスできるように安全な接続を設定したいのですが、どうすれば実現できますか?
UbuntuサーバーとSSHがある場合は、この記事のように動的ポート転送を使用します。
Windows には代替手段がありますか?
たくさんのチュートリアルをやりましたけど、私にはうまくいかないようです。
答え1
Windows についてはよくわかりませんが、この目的のためには、ホストとゲストの間に NAT を構成する必要があります。Hyper-V にはこの機能があります。
各ゲスト (仮想マシン) はポート 22 で内部的に応答し、ホストは、たとえば、各仮想マシンのポート 2222、2223、2224 から 22 にトラフィックをリダイレクトします。
その後、同僚は自分のマシンから SSH トンネルを開始できます。
ssh -L localhost:3001:10.10.10.1:3001 -p 2222 user@<windowserverip>
その後、ユーザーは自分のマシンで por 3001 上のアプリケーションにアクセスできるようになります。