Área de trabalho remota (KDE) sobre o túnel reverso do SSH

0

Eu tenho um túnel ssh reverso através de um servidor intermediário configurado e funcionando. Estou executando o Kubuntu 12.04 aqui e na máquina remota.

Eu quero abrir uma sessão de área de trabalho remota. Até agora, tenho usado o Team Viewer para fazer login na área de trabalho remota. Eu gostaria de obter resultados semelhantes sem o Team Viewer. Eu entendo X sobre SSH vai conseguir isso. Se eu precisar de vnc, tudo bem também.

Aqui está o meu problema no momento. Quando estou conectado à máquina remota através do túnel, recebo este erro:

$ startkde &
$ $DISPLAY is not set or cannot connect to the X server.

Estou conectando com a opção -Y SSH e usando chaves (não senhas). Tudo relacionado ao SSH parece estar funcionando bem. O único problema que vejo é com o X. Aqui está outro exemplo:

$ xeyes &
$ Error: Can't open display: 

e

$ echo $DISPLAY

$ 

(não retorna nada)

Essas respostas parecem relevantes, mas não consegui entendê-las com detalhes suficientes para elaborar uma solução no meu caso:

Posso iniciar um programa gráfico na área de trabalho de outro usuário como root?

link

    
por MountainX 26.06.2013 / 08:46

1 resposta

2

Se você estiver usando um server-in-the-middle para interconectar dois sistemas, é provável que pelo menos uma das linhas seja bastante lenta. Nesse caso, é provável que o VNC ofereça melhor desempenho, já que você pode ajustar melhor os requisitos de desempenho / qualidade de largura de banda / desempenho (isso é realmente válido para a maioria das configurações, a menos que você esteja em uma rede confiável de 100 Mbits).

Eu pessoalmente gosto de x11vnc , que se conecta a um servidor X em execução e encaminha as entradas / saídas pelo VNC protocolo (isso pode ser feito assim que o servidor X estiver rodando, para que você possa interagir mesmo com um gerenciador de exibição). O servidor X em questão pode ser tanto um regular (que gera uma exibição real) quanto um baseado em framebuffer como Xvfb . Você pode então usar qualquer cliente VNC para se conectar ao servidor X exportado. E, claro, você provavelmente deseja encapsular a transmissão através de ssh ou stunnel . A página do manual de x11vnc é bastante exaustiva e até tem um exemplo de linha de comando usado com frequência no início.

Isso também permite que você se conecte remotamente a uma sessão em execução para ajudar alguém a resolver um problema remotamente. Como um bônus importante, já que apenas as entradas e saídas são encaminhadas em vez do próprio protocolo X, as desconexões de rede apenas interrompem a sessão, mas todos os programas permanecem em execução, o que não é o caso do X através do SSH .

Se, por algum motivo, você quiser realmente tunelar o X11 por meio do SSH, certifique-se de que a variável de ambiente DISPLAY esteja configurada corretamente por ssh . Sem isso você não pode prosseguir, porque os aplicativos não saberão a qual servidor se conectar. Verifique se a diretiva X11Forwarding está definida como yes em sua configuração sshd .

Por último, mas não menos importante, você provavelmente não deseja executar startkde4 (ou qualquer outra sessão X) sobre o SSH - a carga da rede provavelmente será bastante pesada - o VNC irá atendê-lo melhor novamente. / p>     

por 26.06.2013 / 10:14