これは、シェルに直接入力すると同じコマンドは機能しますが、ssh構成ファイルのProxyCommandでは機能しない奇妙な状況です。
だからこれはうまくいきます:
$ ssh -A -R 40022:git.some.pt:22 -t -t [email protected] ssh -t -t -R 40022:localhost:40022 [email protected]
しかし、そうではありません:
~/.ssh/configから
Host destination
ProxyCommand ssh -A -R 40022:git.some.pt:22 -t -t [email protected] ssh -t -t -R 40022:localhost:40022 [email protected]
$ ssh destination
Bad packet length 218783296.
Disconnecting: Packet corrupt
どんなアイデアがありますか?
答え1
ssh
どこかでSSHサーバーへのコマンドライン接続を許可する必要があります。既存のProxyCommand
製品はそうしません。どこかにログインできるすべての手段と初期ssh
。
これは私にとって合理的にうまく機能しているようで、私のチェーンが正しいと思います(明らかにあなたが使用するのと同じホスト名でテストするのは難しいです)。ただし、要塞ホストでは使用せず、nc
次を使用することに注意してください。ssh
Host destination.net
User user
ProxyCommand ssh -A [email protected] nc %h %p
ForwardAgent yes
RemoteForward 40022 git.some.pt:22
/usr/sbin/sshd -i
私も提案したように(代わりに)最後に実行することについて考えてきました。ssh -p %p user@%h
nc %h %p
男 ssh_config、しかし、動作させることはできません。たぶんあなたはもっと幸運を味わうでしょう。