こんにちは。サイオステクノロジーの木村です。
テレワークが推進される中、在宅での仕事でポートフォワードをする機会が増えている人もいるのではないでしょうか。
ポートフォワードで多段接続する場合、何度もsshコマンドを入力するのは面倒ですよね。
そんな時は.ssh/config(SSH接続ファイル)を使うととでも便利です。
今回は以下のように踏み台を2つ経由してRDP接続をする方法を例にご紹介します。
上記の構成の接続をするためには、.ssh/configに以下のように記載します。
・踏み台Aへの接続設定
Host hostA
HostName <hostAのアドレス>
User <hostAのユーザー名>
IdentityFile <hostAの鍵>
・踏み台Bへの接続設定
Host hostB
HostName <hostBのアドレス>
User <hostBのユーザー名>
IdentityFile <hostBの鍵>
ProxyCommand ssh -W %h:%p hostA
LocalForward 13389 <Windowsサーバーのアドレス>:3389
※proxyCommandを指定するとSSHコマンドを実施する前にproxyCommandで指定してコマンドを実施し、標準入力を開きます。以降のSSHコマンドはその標準入力経由で行われます。そのため、上記のように設定すると、踏み台Bへ接続する前に、踏み台Aへ接続して標準出力にて踏み台Bに接続することができます。
※LocalForwardにて、13389ポートにWindowsサーバーの3389ポートを飛ばすよう設定します。
<例>
上記の設定をした上で、以下のコマンドを実行します。
$ ssh -fN hostB
あとは、RemoteDesktopでlocalhost:13389ポートに接続すると、Windowsサーバーに接続することができます。