inicia a conexão ssh do servidor para o cliente

8

Podemos nos conectar facilmente via ssh à máquina remota com IP público.

Mas agora tenho uma máquina remota sem IP público e preciso conectá-la a partir da minha máquina que tem IP público. Assim, a máquina remota deve iniciar essa conexão (adicionar um cliente).

Eu preciso disso porque há meu avô no computador sem IP público e ele precisa de ajuda com o sistema dele às vezes.

Em situação semelhante no Windows eu usei conexão VNC (por TightVNC), o servidor TightVNC tem uma opção "Adicionar um cliente": o usuário acabou de inserir o IP do cliente (ou seja, meu IP público), meu cliente já está em "modo de escuta" ", e quando" servidor "adiciona um cliente, a conexão é inicializada.

Então, é possível realizar o mesmo truque com a conexão SSH?

    
por Dmitry Frank 28.05.2014 / 10:29

1 resposta

10

Por definição, o cliente é aquele que inicia a conexão.

Para o seu problema, acho que uma solução simples seria construir um túnel reverso.

No computador sem IP público:

ssh -R 2222:localhost:22 loginOfServerWithPublicIP@publicIP

Isso se conecta ao servidor por SSH e cria um encapsulamento do servidor com IP público na porta 2222 para o computador sem IP público na porta 22 (SSH).

E depois no servidor:

ssh -p 2222 loginOfComputerWithoutPublicIP@locahost

A conexão é redirecionada da porta 2222 do servidor para a porta 22 do computador pelo primeiro túnel. Você pode querer usar a ferramenta como autossh para tornar o túnel mais resiliente (ou seja, reinicie-o automaticamente quando ele for desligado).

    
por 28.05.2014 / 10:51