Configurar um arquivo de configuração ssh:
~/.ssh/config
Esse arquivo ajudará de várias maneiras, mas, no final, permitirá que você faça tudo isso com apenas uma etapa.
Primeiro, configure aliases para cada máquina
Host bridge
User username
Host final
User username
Agora você pode usar "ssh -X bridge" para conectar-se à primeira máquina.
Para o próximo passo, você precisará do netcat em cada máquina (tente "which nc") para verificar. Então, use um ProxyCommand com sua configuração de máquinas 'final' para que ele leia:
Host final
User username
ProxyCommand ssh -CAYq bridge exec nc %h %p
Este comando envia o que você quiser através da máquina central para hospedar% h na porta% p (ou seja, se você quiser enviar outros dados do aplicativo através de portas diferentes, desde que esta conexão esteja aberta)
Se você tiver as chaves configuradas, não haverá prompts de senha, se não: você será solicitado para a primeira ponte, depois para a final.
Agora "ssh final" deve funcionar, assim como:
scp -r final:/.../directory .