Como fazer ssh e scp diretamente através de um servidor?

Como fazer ssh e scp diretamente através de um servidor?

Eu me conecto ao server2 da seguinte maneira:

home$ ssh server1
server1$ ssh server2
server2$

Às vezes também preciso fazer scp desta forma, o que leva algum tempo extra:

home$ ssh server1
server1$ scp server2:file .
server1$ exit
home$ scp server1:file .

Existe uma maneira de fazer isso com um comando em casa? Estou usando autenticação de chave pública, mas seria bom se funcionasse também com senhas.

Responder1

Sugiro usar o MobaXterm: basta

  • baixe aqui:http://mobaxterm.mobatek.net/download-home-edition.html
  • Clique em “Nova sessão” e escolha “ssh”
  • Especifique o nome do computador ou endereço IP "servidor2" no campo "Nome do host remoto"
  • Especifique o nome do computador ou endereço IP do seu "servidor1" no campo "SSH saltando (conecte através de um servidor ssh de gateway)"

Isso iniciará um novo comando SSH, diretamente no seu computador “servidor2”. À esquerda da janela, você também terá acesso a uma ferramenta gráfica de transferência de arquivos SFTP que também estará conectada diretamente ao "servidor2".

Responder2

Você pode usar o tunelamento SSH desta forma:

ssh -f server1 -L 8888:server2:22 -N

Isso abre um soquete em sua máquina local, na porta 8888 (assumindo que nenhum outro processo esteja usando essa porta), que encapsula a conexão com o servidor2 (assumindo que o SSH esteja sendo executado na porta 22) através do servidor1. Os sinalizadores -Ne -fdizem ao SSH para passar para segundo plano (você terá que encerrar o processo se quiser interromper o túnel).

Agora você pode scp arquivos do server2 apenas fazendo

scp -P 8888 localhost:file

Responder3

home$ server1 "ssh server2"

mas quando envolve mais servidores, escapar da sequência de comandos será doloroso.

Responder4

Use SOCKS5 com um túnel dinâmico

Crie um túnel SSH dinâmico para a primeira máquina. Em seguida, use a primeira conexão como proxy SOCKS5 para chegar ao segundo host na rede remota.

Isso é fácil de configurar via putty. Você pode reutilizar o proxy quantas vezes quiser. Alguns programas suportam SOCKS5 diretamente. Como massa e ssh.

No Linux, proxychains podem ser usados ​​para fazer proxy de programas que não suportam SOCKS5 nativamente. No Windows, gosto do Proxycap. Funciona bem com RDP.

Para configurar isso usando Putty:

Na primeira página de configurações do host, em túneis:

  • criar um túnel dinâmico
  • Defina a porta para 9050.
  • Deixe a parte de destino em branco, pois é dinâmica.
  • Salve suas configurações. (Feito na página da sessão.)

Então, na configuração do segundo host, em proxy:

  • Selecione SOCK55.
  • Altere o nome do host do proxy para 127.0.0.1
  • Defina a porta para 9050
  • Em seguida, configure o resto da sua sessão normalmente
  • Salve suas configurações

Para se conectar ao segundo host. Primeiro você terá que se conectar e fazer login no primeiro host. Então você poderá se conectar ao segundo host por meio da conexão ssh proxy,

Você também pode fazer isso na linha de comando com uma entrada ssh_config: http://www.undeadly.org/cgi?action=article&sid=20070925181947

informação relacionada