Transferir um arquivo de um servidor para outro servidor, iniciado a partir de um terceiro computador

Transferir um arquivo de um servidor para outro servidor, iniciado a partir de um terceiro computador

Estou tentando fazer uma transferência de site para site com a seguinte configuração. Tenho um servidor antigo (servidor-A), o novo servidor (servidor-B) e minha estação de trabalho (wks), na qual gostaria de iniciar a transferência.

A troca de chaves SSH foi feita entre semanas e o servidor A/B.

O servidor A e o servidor B não têm chaves trocadas.

Eu tentei o seguinte comando na minha estação de trabalho

scp -r root@server-A:/path/to/source/ root@server-B:/destination/path

mas não funciona. Pelo que entendi, o servidor A tenta se conectar ao servidor B e, como não há troca de chaves, ele falha.

Alguma ideia de como fazer a transferência de arquivos funcionar para esta configuração específica?

Responder1

Transferir arquivos usando uma conexão direta entre o servidor A e o servidor B é o método preferido. Isto é o que scpestá tentando fazer. A parte relevanteman 1 scp:

-3
As cópias entre dois hosts remotos são transferidas através do host local. Sem esta opção os dados são copiados diretamente entre os dois hosts remotos. Observe que esta opção desativa o medidor de progresso.

Você está certo ao dizer que sem a -3opção "servidor-A tenta se conectar ao servidor-B". Meus testes indicam que mesmo que o servidor-B permita autenticação baseada em senha, interagir com tty (enquanto a senha é solicitada) provavelmente será o problema. Nesse casoeste comentárioparece útil:

sshno servidor A, inicie o scpservidor A (um comando). Evita copiar os arquivos duas vezes.

Depois de entrar explicitamente sshno servidor-A, scpinvocado, não deverá haver problemas ao interagir com o tty ao solicitar a senha do servidor-B. Alternativamente, você pode sshentrar no servidor-B e invocar scplá.

Se for impossível (chave necessária, senha não permitida), use scp -3na sua estação de trabalho. Obviamente, isso usará sua máquina local como uma espécie de proxy, de modo que os dados fluirão para baixo e para cima em suas conexões de rede.

Nem todas scpas implementações suportam -3.

informação relacionada