Copiando arquivos através de duas camadas de SSH do Windows

2

O lugar onde trabalho tem um servidor de login e, em seguida, faço login em uma caixa do Linux desse servidor de login. Como em

ssh login@host

ssh computer_name

fornecendo autenticação a cada vez. Se eu estou trabalhando no meu laptop, que está (infelizmente) rodando o Vista, eu corro o putty para entrar no login@host e então efetuo login no computer_name a partir do terminal que ele abre.

Frequentemente terei que obter arquivos locais do meu computador para a caixa do Linux e vice-versa. Normalmente eu uso o WinSCP para transferir para o login@hostname e depois para o scp computer_name, ou o contrário. No entanto, login@hostname tem espaço de armazenamento muito limitado e não consigo arquivos maiores dessa forma. Existe uma maneira de trazer arquivos diretamente entre o computer_name e meu laptop?

    
por CLatham 08.10.2014 / 21:40

2 respostas

1

Configure uma porta para uma porta local. Para o OpenSSH isso significaria:

$ ssh login@host -L 2222:computer_name:22

que faz com que qualquer conexão à porta 2222 on localhost seja encaminhada para a porta 22 on computer_name via - e isso é importante aqui - host . Então siga

$ scp -P 2222 computer_name_user@localhost:remote local

Obviamente, isso também permite que você se conecte a computer_name

$ scp -p 2222 computer_name_user@localhost

O PuTTY é capaz de fazer o encaminhamento de porta (e também tem scp até onde me recordo), embora seja um software vendido, eu sugiro usar o OpenSSH sob o Cygwin, já que isso lhe dá a interface SSH padrão de fato (com todos os sinos e assobios).

Não consegui encontrar rapidamente uma cópia duplicada, mas você provavelmente deseja verificar:

por 09.10.2014 / 00:26
0

A maneira fácil de fazer as coisas através de duas camadas de SSH é ocultar a camada intermediária.

Configure um ProxyCommand para que você possa executar diretamente ssh computer_name do cliente original. Configure a autenticação de chave pública e ative o encaminhamento do agente ( ForwardAgent yes in ~/.ssh/config ), para que você não precise fornecer credenciais explicitamente à máquina intermediária.

Agora que ssh computer_name funciona perfeitamente, use apenas scp ou rsync ou o que você quiser para copiar arquivos.

    
por 09.10.2014 / 02:00

Tags