ターゲットには踏み台から来る TCP 接続が見えますが、認証を行う SSH クライアントは依然としてワークステーション上で動作しています。

Host behind-bastion
    ProxyCommand ssh -W %h:%p bastion

ここでは補助プログラムが踏み台にログインし、その SSH サーバーにターゲットへの転送接続を要求します。ワークステーション側の外側の SSH クライアントが、そのストリームを通じてターゲットの SSH プロトコルをやり取りします。踏み台は転送を提供するだけで、ターゲット向けの SSH クライアントを起動したわけではありません。

この区別はホストベース認証で重要です。OpenSSH の ssh-keysign 補助プログラムは、必要な署名を生成するためにローカルのホスト鍵にアクセスします。踏み台のネットワーク送信元アドレスであることは、ワークステーションが踏み台のホスト鍵で署名することを意味しません。

次と比較してください:

ssh -t bastion ssh target

これは踏み台上で別の SSH プログラムを起動します。そのローカル設定と利用可能なホスト鍵はそのマシンに属するため、踏み台からターゲットへの既存のホストベース信頼関係に参加できます。ただしターゲット側の対応する許可と名前の確認は依然として必要です。

2 番目の形はセッションの仕組みも変えます。リモートコマンドを実行し、端末を使います。あらゆる SSH ファイル転送や自動化の転送に対する透過的な代替ではありません。送信元アドレスが十分に見えるようにサーバーの信頼確認を弱めるのではなく、どのマシンがターゲットに対して認証すべきかに応じて構成を選んでください。

関連記事