SFTP através de vários computadores

1

Eu quero copiar um arquivo de A para D. O computador só pode acessar os arquivos próximos a ele.

+---------------------------------------------------------+
| Computer A <-> Computer B <-> Computer C <-> Computer D |
+---------------------------------------------------------+

Agora, eu copio de A para B com SFTP, depois ssh para B, copio para C, ssh para C e assim por diante. Quando terminar, volto e fecho cada sessão do ssh e apago os arquivos.

Existe uma maneira fácil de enviar o arquivo de A para D de maneira mais eficiente? Neste momento, o arquivo deve ser baixado por completo para todos os computadores da fila, para depois ser deletado. Não, usar disquetes e andar não é mais eficiente.

    
por Micha Ingo 15.07.2018 / 21:14

1 resposta

0

Usando o LocalPortForwarding para definir uma porta local ouvindo e servindo como serviço SSH de destino.

+---------------------------------------------------------+
| Computer A <-> Computer B <-> Computer C <-> Computer D |
+---------------------------------------------------------+

Em [ComputerC], crie um ouvinte no socket localhost: 2022 servido como SSH do ComputerD, encaminhando o tráfego para o ComputerD: 22

$ ssh -L2022:ComputerD:22 ComputerD

Em [ComputerB], crie um ouvinte no socket localhost: 2022 servido como SSH do ComputerD encaminhando o tráfego para localhost: 2022 de ComputerC

$ ssh -L2022:localhost:2022 ComputerC

Em [ComputerA], crie um ouvinte no socket localhost: 2022 servido como SSH do ComputerD encaminhando o tráfego para localhost: 2022 de ComputerB

$ ssh -L2022:localhost:2022 ComputerB

Usando a porta 2022 no ComputerA como o serviço SSH do ComputerD, para copiar o arquivo

$ scp -P2022 file localhost:/path/
    
por 16.07.2018 / 03:41