Windows10標準リモートデスクトップの多段アクセス

PortFowerderを使う

PortForwarder Home

Windows10標準リモートデスクトップ接続ソフトはポート3389を使用するみたい.

自分のどこかのポート(3389かな?)から出て,ポート22(SSH)を通ってサーバのポート3389に繋ぐ. つまり,外部からアクセスするのであれば,事前にルータのポート設定で22番をポートフォワーディングしておく必要がある. ちなみに22番を通して通信しているので,3389番は設定しなくてもOK.

PortFowerderの設定ファイルはこんな感じ.

Host 1台目(好きなように)
HostName グローバルIP or ドメイン名など
User ユーザ名(1台目のマシンに登録したアカウント)
LocalForward 13389 localhost:3389
Compression yes(データの圧縮)

Host 2台目(好きなように)
HostName グローバルIP or ドメイン名など
User ユーザ名(こちらも1台目のマシンに登録したアカウント)
LocalForward 13389 アクセスしたいマシンのローカルIP:3389
Compression yes(データの圧縮)

これでポートフォワードして,リモートデスクトップソフトに"localhost:13389"と打つと接続できる.

ちなみに"localhost:3389"だと自分に繋がってエラー吐くので,テキトーに13389とかにしてる.

自分の理解

"localhost:13389"は20番を通して1台目に接続される.ここでポートフォワードで1台目(localhost)の3389番または,2台目(ローカルIP指定)の3389番に接続される.イイ感じ.

後日,一箇所詰まった.記載してあるが,これらのユーザ名の設定は,どちらも1台目のマシンに登録したアカウントを記載する必要がある.アカウント名が同じ場合は問題ないが,異なる場合に誤って個別に設定してしまった.すると,繋がらない.

なぜかというと,ポートフォワードする際に,踏み台である1台目に接続するため,そちらでの認証が必要なのである.その後,リモートデスクトップソフトから"localhost:13389"に繋ぐ際に目的地である2台目のアカウントでログインする.