155月/121

サーバー設定:SSHを利用したトンネリングについて

前回の投稿では、「SSHポートフォワーディング」としてたけど、トンネリングという方が適切かな、、、とも思うので変更。

※前回の投稿
うっちゃんねる» Blog Archive » サーバー設定:SSHポートフォワーディングを行う
http://truering.info/?p=576

今回は、リモート拠点にプライベートIPを持つサーバーがあり、そこにアクセスしたい場合の話。(しかもリモート拠点にはグローバルIPを持つサーバーが無いという状況)
なので、リモート拠点にあるサーバーから、こちらのグローバルサーバーへ接続してもらい、そのセッション/トンネリングを経由して接続しに行く、という形になる。

コマンド形式は以下の通り。
serverB2> ssh -N -f -A -t -g userA@serverA -R portA:serverB1:portB

xxxxxA(userAとかserverA、portA)がローカル拠点、xxxxxB(serverB1とかportB)がリモート拠点の各種情報となる。

具体的な値を例にすると、
192.168.0.10> ssh -N -f -A -t -g root@10.0.0.1 -R 8023:192.168.0.1:23
となる。
※ローカル拠点側のグローバルIPを10.0.0.1とする。

リモート拠点側の192.168.0.10上で上記コマンドを実行すると、10.0.0.1と192.168.0.10間でセッション/トンネリングが張られ、10.0.0.1上の8023で待ち受け(LISTEN)ている状態となる。
そこでローカル拠点のPCから、telnet 10.0.0.1 8023とすると、リモート拠点にある192.168.0.1にtelnet接続ができる。

なお、デフォルトの状態では、上記コマンドを投入しただけでは、10.0.0.1上で、localhost(127.0.0.1)の8023でのみ待ち受け状態となる。
なので、sshd_configに以下の項目を設定する必要があるようだ。(コメントかされてて、noになっていた)

—– /etc/ssh/sshd_config
GatewayPorts yes
—–

Tags: , , ,

One Response to “サーバー設定:SSHを利用したトンネリングについて”

  1. utsuma より:

    SSH力をつけよう
    ttp://www.slideshare.net/tohakushi/ssh-13118950

    分かり易い。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です