ssh -W ホスト:ポート
対象(ホスト:ポート)に ssh 先から TCP 接続した上で、それを自プロセスの stdin/out に繋げる。
それを -N
(remote command を実行しない), -T
(pseudo-terminal をセットアップしない), ExitOnForwardFailure, ClearAllForwardings の設定下で行う。
つまりは接続先で nc
する、みたいなことをやるためのオプション。
SSH Proxy Command でよく使われる。
SSH Proxy Command
SSH の本質は SSH Protocol (電文) をしゃべること。 ProxyCommand は、そのコマンドの stdin/out が SSH プロトコルをしゃべる何かしらに繋っている、と ssh は期待して、電文を pipe していく。
ProxyJump
ProxyCommand='ssh -W %h:%p bastion'
の syntax sugar なオプションっぽい。
SSH over HTTP
CONNECT メソッドを利用して、 HTTP プロキシ経由で SSH すること。
SSH のポートフォワーディング
TCP か unix domain socket をフォワーディングできる。
-L
: ローカルで listen し、コネクションが来たら、リモート側へ飛ばす。
-R
: リモート側で listen.
Teleport (by Gravitational)
SSH などの権限を一括管理し、かつその接続も行えるようなできる OSS ソフトウェア