多段ポートフォワードでDB接続

目的

以下のようなネットワーク環境を想定し、PCからサーバを2台SSHで越えてDBサーバにDB接続する。

 [PC] 
  ↓
 [踏み台サーバ 10.0.0.1 ]
  ↓                ↑インターネット
 [Webサーバ 10.0.0.2/192.168.0.2] ------------------
  ↓                ↓ローカルネット
 [DBサーバ 192.168.0.3]

上記ネットワーク環境の前提

  • 踏み台サーバにはどこからでもSSH接続出来る。
  • Webサーバには踏み台サーバからしかSSH接続出来ない。
  • DBサーバにはWebサーバからしかSSH接続及びDB接続出来ない。
  • ここでは10.0.0.xはグローバルIPアドレス、192.168.0.xはプライベートIPアドレスとする。

方法

2回ポートフォワードを行う。

 ssh -L 10022:10.0.0.2:22 -fN userA@10.0.0.1
 ssh -L 10023:192.168.0.3:5432 -fN -p 10022 userB@localhost

これでPCのローカルポート10023に接続するとDBサーバの5432ポートに接続出来るようになる。

 psql -U taro -h localhost -p 10023 test_db

注意

  • userAは踏み台サーバ上のユーザ。
  • userBはDBサーバ上のユーザ。

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS