SSH でポートフォワード

  SSH で多段接続? ([2004-12-19-1]) の続き.よく考えたらポートフォワードでできた.

- localhost から remotehost1 を経由して remotehost2 に接続

[localhost] -> [remotehost1] -> [remotehost2]

- ポートフォワード

localhost% ssh -l user1 -L 30022:remotehost2:22 remotehost1

- 使い方

localhost% ssh -p 30022 -l user2 -oHostKeyAlias=remotehost2 localhost
localhost% scp -P 30022 localhost:file -oHostKeyAlias=remotehost2:/home/user2
localhost% sftp -oPort=30022 -oHostKeyAlias=remotehost2 user2@localhost

- でもこれじゃ面倒
o /etc/hosts (localhost)

127.0.0.1       localhost       remotehost2

o $HOME/.ssh/config (localhost): OpenSSH の場合

Host *
  ForwardAgent yes

Host remotehost2
  Port 30022
  User user2
  HostKeyAlias remotehost2

o $HOME/.ssh2/ssh2_config (localhost): SSH Communications Security の SSH の場合

remotehost2:
  Port 30022
  User user2

  以上を設定して楽をする.

  これで,通常どおりいける.

localhost% ssh remotehost2
localhost% scp file remotehost2:/home/user2

- 参考
o ssh ポート転送(ポートフォワード)
  http://www2.i-e-c.co.jp/ssh16.html