Melhor maneira de transferir arquivos de um servidor para outro usando um terceiro servidor

5

Este é o cenário:

                   ssh  +------------+
                  +---->|  Server 2  |
 +------------+   |     +------------+
 |  Server 1  +---+
 +------------+   |     +------------+
                  +---->|  Server 3  |
                   ssh  +------------+

Eu tenho acesso SSH de Server 1 para Server 2 e Server 3 (mas não de Server 2 para Server 3 nem o contrário).

Eu quero transferir um arquivo bastante grande de 2 para 3 e gostaria de saber qual é a maneira mais rápida de fazer isso, tendo 1 agindo como o orquestrador.

UPDATE : tenho conectividade entre os dois servidores, mas não credenciais SSH de / para os servidores.

    
por kolrie 11.05.2012 / 21:25

2 respostas

5

você pode fazer a transferência diretamente entre os dois servidores:

no servidor que você deseja transferir, inicie o nc no modo de escuta em alguma porta aleatória:

ssh dst-server 'exec 1>/tmp/bah; nc -l -p 34001'

no servidor do qual você deseja fazer o download, transfira com nc no modo cliente. você pode usar a compactação para, basta criar um gzip pipe:

ssh source-server 'nc dst-server 34001 < ./bah'

você encontrará seu arquivo em / tmp / bah

    
por 11.05.2012 / 21:49
6

Você poderia usar 'scp':

No servidor 1, faça algo assim:

scp  user1@server2:/path/filename user3@server3:/path 

Mais informações com man scp .

    
por 11.05.2012 / 21:28

Tags