Executando o X11 Server no Mac OS X - e conectando a partir de uma máquina remota

2

Originalmente perguntado sobre SO - transferência para SU sugerida em SO, mas transferência feita manualmente.

Eu tenho um laptop com Windows XP e posso rodar o servidor Cygwin X11 lá (script startxwin.bat, IIRC). Eu também uso uma máquina remota - ela é uma máquina Solaris 10 SPARC, a cerca de 1.800 km de distância - que pode ser chamada de xclient.subdom2.example.com para os fins desta questão.

Para melhor ou pior - principalmente pior - eu uso xhost + xclient.subdom2.example.com no laptop para permitir que qualquer pessoa que use a máquina remota exiba seu cliente X na minha máquina. Felizmente, sou a única pessoa que usa a máquina Solaris regularmente e a segurança corporativa é suficientemente rigorosa para que eu possa viver com os riscos de segurança.

A partir do laptop XP, conecto-me remotamente à máquina cliente X e configuro a variável de ambiente DISPLAY = xplaptop.subdom1.example.com: 0.0 e posso executar programas clientes X na máquina remota e ver a exibição feliz, se um pouco devagar de vez em quando, no laptop XP. (Dependendo da duração do nome do DHCP atribuído ao laptop, ocasionalmente tive que recorrer a um endereço IPv4 em vez do FQDN da máquina.)

Eu também tenho um Apple MacBook Pro e quero replicar a funcionalidade do laptop XP nele. Infelizmente, ainda não consegui descobrir o que é necessário para que o servidor X11 funcione satisfatoriamente nele. Parece que simplesmente clicar no servidor X11 em / Applications / Utilities não é suficiente. Executar o comando xhost novamente (com DISPLAY = macpro.subdom1.example.com: 0.0) não parece funcionar.

Você pode sugerir quais são os encantamentos necessários? Ou sugerir ponteiros para onde a resposta está escrita em palavras de uma ou duas sílabas?

Além disso - e muito na categoria de pergunta bônus - quão prontamente e bem o servidor X11 reage às mudanças na rede (entre conexão DHCP direta com fio corporativa e Aeroporto sem fio em casa com conexão para corporativo via VPN)? É um problema de "reiniciar no novo ambiente" ou ele conseguirá detectar as alterações automaticamente?

Eu também consideraria outras maneiras de alcançar o mesmo resultado - como equivalentes VNC ou Mac - se elas forem mais fáceis de configurar. Acredito que o VNC esteja instalado na caixa Solaris; pode ser se não for.

    
por Jonathan Leffler 02.09.2009 / 00:39

1 resposta

5

O X11 em si não é um protocolo muito seguro.

Você deve usar o encaminhamento do X11 com o SSH. Isso criptografará a conexão e fornecerá melhor segurança.

Primeiro, ative o daemon ssh no seu sistema Solaris. O Solaris 10 deve vir com o SSH pré-instalado. Veja se o processo está sendo executado com ps -ef | grep ssh

No seu MacBook Pro, execute o Terminal.app e use ssh -X xclient.subdom2.example.com para se conectar ao sistema Solaris e iniciar um túnel X11. Você pode iniciar programas X11 a partir do sistema Solaris e eles serão iniciados no MacBook no X11 automaticamente.

Para fazer o encaminhamento do X11 em seu sistema Windows, você precisará de dois programas. Xming que é um servidor X11 leve, originalmente do Cygwin, e puTTY , um programa de terminal SSH para Windows. Você precisará ativar o encaminhamento do X11 em puTTY.

Para um melhor desempenho, você desejará ativar a compactação. Isso é feito com o programa ssh no OS X usando a opção -c ( ssh -cX ), ou em puTTY no PainelSSH (seção 4.18.3 ative a compactação) .

    
por 09.09.2009 / 09:55