Quando você usa ProxyCommand
, sua máquina local faz a conexão com o host de destino. Como você deseja criar a conexão do meio para o alvo, você não deve usá-lo (ou não deve usá-lo com nc
).
Eu não usaria ForwardAgent
, pois não é totalmente seguro (o usuário root
na máquina do meio pode codificar dados usando sua chave usando ssh-agent
em sua máquina local).
Portanto, uma solução possível é executar o comando ssh
na máquina do meio para segmentar a máquina dentro de seu ProxyCommand
na máquina local. Por exemplo:
ssh bar@doesnt_matter_host_here -o ProxyCommand='ssh foo@middle_server "ssh [email protected] nc localhost 22"'
Você pode configurar um host chamado "www_over_middle" com esse ProxyCommand
no seu ~/.ssh/config
:
Host www_over_middle
User bar
ProxyCommand ssh foo@middle_server "ssh [email protected] nc localhost 22"
E então:
ssh www_over_middle