Como copiar um arquivo com scp através de outro servidor

0

Eu tenho três máquinas. A máquina local L, Server1 A, Server2 B.
L é capaz de se conectar a um
A é capaz de se conectar ao B
L não é capaz de se conectar a B

Eu quero copiar um arquivo de L para B sem dar o passo extra para fazer o login em A para copiar os dados.

Isso é possível com o scp? Se sim, como?

    
por merando 17.12.2014 / 16:25

1 resposta

1

L não é capaz de se conectar a B, mas B pode se conectar a L? Você não disse, mas eu vou assumir não.

Se A for a sua única maneira de se comunicar entre B e L, você definitivamente precisará fazer login em A em algum momento. E também, os dados fluirão de uma forma ou de outra (o que pode ser importante se A estiver em uma conexão lenta).

Você pode estabelecer um túnel SSH através de A de duas maneiras diferentes para ir de L para B. Por exemplo:

# From L
ssh -L 2222:B:22 -Nf A

Agora, adicione a configuração a seguir em ~/.ssh/config on L como uma conveniência para se conectar a B pelo túnel:

Host B
    HostName localhost
    HostKeyAlias B
    Port 2222

Então você pode se conectar a B através do túnel:

scp file B:

Existem outras opções para configurar este túnel, incluindo ferramentas para estabelecer automaticamente o túnel em segundo plano.

    
por 17.12.2014 / 16:54

Tags