以前 2.(gateway で netcat を ssh 経由で実行することによる転送)はよくわからないけど失敗 多段 rsync がめんどくさい - daily dayflower と書きましたが,なんとなく仕組みがわかってきたので書きます。 2年前くらいに流行ってたネタなので今更感満点。 まとめ 単純に到達できない場所に ssh でつなぐために ProxyCommand という [http://www.openbsd.org/cgi-bin/man.cgi?query=ssh_config:title=ssh_config] の設定子が使える ProxyCommand とは ssh クライアントと標準入出力でやりとりする 多段 ssh をする際に ProxyCommand で指定すると有用なものとして下記のものがある nc (netcat) OpenBSD や RedHat 系には(お
sshを使っていると、図のようにsshの接続先のホストから更に別のホストにsshコマンドを実行して接続する事があるかも知れない。接続先でまたsshコマンドを叩くのは骨が折れるが、sshにはこのような使い方をサポートしてくれる機能がある。それがProxyCommandだ。 ProxyCommandが指定されると、sshはまずProxyComamndを実行して、入出力を手元のホストのsshコネクションに直結させる。つまりProxyCommandで踏み台となるホストを経由して目的のホストに接続することができれば、sshコマンド1発で目的のホストとの多段接続を行うことができるのだ。 ProxyCommndを使った多段接続には、これまでnetcatいわゆるncが使われてきた。しかし、最近のsshは-Wオプションをサポートしており、ncを併用することなく、多段接続を実現することができるようになっている
さーて,どんどんこんらんさせていきますよ。 高度な例 (3) - 多段 ssh 要件は*1 host:gw1 に user:foo というアカウントがある host:gw2 に user:bar というアカウントがある host:target に user:baz というアカウントがある user:dayflower が host:local から host:gw1, host:gw2 を経由して host:target に user:baz で アクセスしたい ProxyCommand をカスケードして指定していけばなんとでもなります。実行例は下記のとおり((コマンドラインから実行する場合,実用上の理由から %h や %p などの展開は利用していません))。 local% ssh -o "ProxyCommand ssh -o 'ProxyCommand ssh -l foo -i fo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く