Temos a seguinte situação:
- Minha maquina
- Uma máquina de gateway
- A máquina alvo
Não tenho direitos de root nos dois e três. Também não consigo realmente armazenar informações (no máximo 200 MiB) na máquina nº 2 (já que é um gateway para o restante da rede, não mais que isso). Na máquina nº 3, há uma pasta com aproximadamente 3 GiB de tamanho que eu quero copiar para o local. Não consigo SSH de 1 a 3, mas posso SSH a 2 e depois a 3. Também não é possível configurar um par de chaves público-privado entre os nºs 2 e 3, mas existe um par de chaves instalado entre os nºs 1 e 2.
Normalmente eu uso a combinação de SSH e tar para fazer isso:
ssh name@host "tar cf - folder" > folder.tar
Mas, neste caso, isso exigiria algum tipo de aninhamento, e parece que não consigo fazer isso.
Então, qual seria uma boa maneira de obter os dados de # 3 para # 1?
ProxyCommand
essh -W
os doisssh
comandos podem ser combinados em uma única linha de comando. Se você possui uma versão muito recente do cliente OpenSSH, há um argumento que permitirá fazer tudo isso com um únicossh
comando.