踏み台サーバを経由して、最終接続先サーバへSSHコマンドで接続する方法です。
踏み台サーバで再度SSHを実行する方法
踏み台サーバに接続後、そこで再度 sshコマンドを実行して最終接続先サーバへ接続する方法です。
sshコマンドは、接続後に実行するコマンドを指定できますが、そこに最終接続先サーバへ接続する為の ssh を実行します。
次の書式で実行すると、踏み台サーバを経由して、最終接続先サーバに接続します。
ssh -t 踏み台サーバ ssh 最終接続先サーバ
踏み台サーバ、最終接続先サーバの順で認証になります。
なお、最終接続先で exit すると、最終接続先と一緒に踏み台サーバも接続が終了します。
-t オプション無しだと
Pseudo-terminal will not be allocated because stdin is not a terminal.
とエラーが出て接続できないので注意。
ProxyCommand指定による接続
踏み台サーバは OpenSSH5.4以降が必要です。
CentOS6 は5.3なのでこの方法は使えません。
OpenSSH のバージョンを確認するには、sshコマンドで -V オプションを付けます。
$ ssh -V OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8, OpenSSL 1.0.1f 6 Jan 2014
次の書式で実行すると、踏み台サーバを経由して、最終接続先サーバに接続します。
ssh -oProxyCommand="ssh -W %h:%p 踏み台" 最終接続先
踏み台サーバ、最終接続先サーバの順で認証になります。
なお、最終接続先で exit すると、最終接続先と一緒に踏み台サーバも接続が終了します。
「踏み台サーバで再度SSHを実行する方法」とこの方法の違いは、踏み台サーバで別途 sshコマンドが実行されない点です。
参考
sshで踏み台経由時のショートカット – Qiita
多段 ssh / rsync するために ProxyCommand を使ってみる – daily dayflower
SSH力をつけよう
コメント