Suporte remoto: roteando o RDP sobre o túnel ssh?

1

Eu quero substituir o TeamViewer por uma solução FOSS. Eu preciso apoiar alguns computadores remotos. Eu tenho um túnel SSH em funcionamento configurado entre dois computadores usando um servidor intermediário como este:

Kubuntu_laptop--->nat_fw--->Debian_Server<--nat_fw<--Kubuntu_desktop

Este túnel SSH está funcionando agora.

Em seguida, quero me conectar à área de trabalho no "Kubuntu_desktop" do "Kubuntu_laptop" usando o túnel SSH.

Com relação à conexão para esta etapa:

Debian_Server<--nat_fw<--Kubuntu_desktop

Veja como é estabelecido:

autossh -M 5234 -N -f -R 1234:localhost:22 [email protected] -p 22

Não consigo alterar a porta de monitoramento existente (5234) ou o número da porta remota (- R) (1234 neste exemplo). Pode vnc encapsular esta conexão SSH existente? UPDATE: a resposta é no ; Eu preciso configurar um novo túnel SSH para uso com o vnc, conforme descrito aqui.

Com relação à conexão para esta etapa:

Kubuntu_laptop--->nat_fw--->Debian_Server

Eu posso usar qualquer parâmetro SSH necessário.

Não consigo abrir portas nos roteadores / firewalls.

x11vnc server foi recomendado para mim, então estou testando com isso. Ele está sendo executado na área de trabalho e escutando na porta 5900. No entanto, eu não usei nenhuma opção de linha de comando ao iniciar o x11vnc, então provavelmente ele não está configurado corretamente ainda.

O vnc funcionará com essa conexão SSH existente? Observe que não há portas 5900 definidas. E note que não posso alterar o número da porta para a opção -R como mencionei acima.

Eu tenho muitas perguntas sobre como fazer isso funcionar, mas uma é se o vnc pode escutar na porta existente (-R 1234 no exemplo acima). E se assim for, ainda posso ssh nessa caixa como faço agora?

Veja o que tentei até agora:

Na área de trabalho remota (onde o servidor x11vnc está instalado):

tester@Kubuntu_desktop:~> autossh -M 5234 -i ~/.ssh/my_id_rsa -fNR 1234:localhost:5901 [email protected]

verifique se o servidor x11vnc está sendo executado na porta 5901:

tester@Kubuntu_desktop:~> x11vnc -autoport 5901

No meu laptop:

sudo ssh -NL 5901:localhost:1234 -i ~/.ssh/admin_id_rsa [email protected]

conecte o cliente vnc local à porta localhost 5901

Abra o KRDC no Kubuntu_laptop e conecte-se ao (vnc)

localhost:5901

Estou com uma falha na conexão - server not found .

    
por MountainX 09.07.2013 / 00:16

2 respostas

1

Parece que atualmente você tem uma conexão ssh padrão entre o laptop e o servidor:

Kubuntu_laptop --- > nat_fw --- > Debian_Server

Modifique os parâmetros para a conexão ssh para que você tenha

-fNL [localIP:]localPort:remoteIP:remotePort

Por exemplo:

-fNL 5900:localhost:1234

Se o seu laptop usasse VNC na porta padrão de 5900, você diria ao seu laptop para vnc para localhost, que enviaria o tráfego VNC na porta 5900 para o servidor na porta 1234.

Em seguida, você precisa pegar o tráfego que chega na porta 1234 do lado do servidor e encaminhar isso para a área de trabalho:

Debian_Server < - nat_fw < - Kubuntu_desktop

Modifique os parâmetros para a conexão ssh da área de trabalho para incluir

-fNR [remoteIP:]remotePort:localIP:localPort

Por exemplo:

-fNR 1234:localhost:5900

Todo o tráfego enviado para a porta 1234 no host local do servidor agora será transportado para a área de trabalho e chegará à porta 5900, onde o servidor VNC deverá escutar.

Altere a porta 5900 para ser apropriada para o protocolo que você está usando. Pode ser 3389 para RDP ou 5901 para VNC, já que 5900 pode estar em uso. Além disso, eu escolhi aleatoriamente a porta 1234 para uso no servidor.

* Algumas notas em resposta à sua pergunta atualizada:

  1. a porta padrão para ssh é 22, portanto, o -p 22 é redundante, pois substitui o padrão e o define como 22
  2. as configurações parecidas com localPort:remoteIP:remotePort não têm nada a ver com a porta que o ssh está usando para o túnel, que ainda é 22, a menos que você a substitua no cliente por -p e anule a porta no servidor ssh também . Portanto, todos os comandos ssh mencionados anteriormente estão usando a porta 22 e você pode confirmar isso observando suas conexões de rede estabelecidas e escutando. Você não precisará abrir nenhuma porta adicional em um firewall. Os comandos anteriores estavam corretos.
  3. com base no que você adicionou na atualização, o comando da área de trabalho deve ser autossh -M 5234 -fNR 1234:localhost:5900 [email protected]
  4. desculpe, não tenho sugestões quanto a um cliente VNC. Você terá que abrir uma questão separada para isso, no entanto, eu estou supondo que será rejeitado, pois é uma questão de opinião.
por 09.07.2013 / 01:37
0

Eu verifiquei o mecanismo descrito e trabalhei para mim. A única diferença foi que usei 127.0.0.1::PORT como parâmetro do cliente VNC, porque: N faz referência ao número de exibição X Window N; para usar uma porta explícita, temos que colocar dois pontos duplos como separador.

    
por 25.04.2018 / 22:06