Como fazer o X.org ouvir conexões remotas na porta 6000?


17

Este é no desktop do Ubuntu 10.10 (Maverick Meerkat) de 64 bits.

Quero fazer meu servidor X ouvir conexões remotas de clientes em outras máquinas na rede local. Eu sei ssh -Xe não é isso que eu quero. Lembro-me vagamente de alterar algo como TCPListende nopara yes, mas não lembro onde essa alteração deve ser aplicada.

Estou interessado em um método GUI ou CLI.

A edição PS /etc/X11/xinit/xserverrcpara remover a -nolisten tcpopção e a reinicialização não funciona.


Dica Provavelmente vale a pena desativar o firewall (iptables) enquanto você está tentando fazer as coisas funcionarem.

@ dica user243114 retornou sem uso, mas obrigado mesmo assim :) #
04414

Respostas:


16

(Segue uma cópia quase literal de uma resposta automática de uma pergunta idêntica na falha do servidor que eu havia esquecido; o askubuntu ainda não foi criado).

Com base nas informações encontradas nesta página sobre como ativar o XDCMP e o arquivo /etc/gdm/gdm.schemas, consegui criar um /etc/gdm/custom.confarquivo:

# /etc/gdm/custom.conf
[xdmcp]

[chooser]

[security]
DisallowTCP=false

[debug]

Tome cuidado com maiúsculas e minúsculas: não funcionará, se você escrever "disallowTCP = false" ... Também alterei o arquivo / etc / X11 / xinit / xserverrc para:

exec /usr/bin/X11/X

ou seja, eu removi as -nolisten tcpopções para o X executável. Eu não sei se eu precisava. Você pode tentar evitar esta edição.

Se você alterar apenas o arquivo xserverrc, o X iniciará com "-nolisten TCP".

Depois disso, tudo o que é necessário é reiniciar o processo gdm:

sudo service gdm restart

Você pode verificar o sucesso como:

tzot@tzot-laptop:/etc/X11
$ netstat -an | grep -F 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN
tcp6       0      0 :::6000                 :::*                    LISTEN

Atualizar

Após a atualização para o 12.04, tive o mesmo problema. Desta vez, o culpado é o lightdm que o sistema usa. O arquivo que precisa ser atualizado é /etc/lightdm/lightdm.confe a adição necessária é uma xserver-allow-tcp=truena [SeatDefaults]seção

E depois, eu também encontrei essa resposta . :)

Sinopse

Portanto, na versão 10.10, isso ainda funciona: crie /etc/gdm/custom.confcom o conteúdo especificado acima e reinicie gdm.


11
Para o Ubuntu 14.04, a única coisa necessária é ter um arquivo como o /usr/share/lightdm/lightdm.conf.d/100-custom.confcontendo [[SeatDefaults] server-allow-tcp = true `
Nitz

@ Nitz, observe que xserver-allow-tcp=truevocê está perdendo o 'x' no seu comentário. Você pode excluir seu comentário existente e reescrevê-lo. Embora a resposta inclua essa solução agora.
Alexis Wilke

11
Eu comentou sobre sua pergunta original em caso de falha do servidor : agora Xorg por padrão não escuta TCP. É preciso adicionar -listen tcppara habilitá-lo, mas gdm3parece não oferecer essa possibilidade.
L. Levrel 19/10/19

4

Esta resposta está relacionada ao Kubuntu 17.04 e eu a adiciono, porque nenhuma das outras respostas (relacionadas gdmou lightdm) me ajudou. No meu caso sddmestava correndo. Para verificar isso, execute, por exemplo

ps -eal | grep sddm

Se estiver em execução, processe sddme sddm-helperserá mostrado. Nesse caso, adicione um arquivo de configuração /etc/sddm.confcom conteúdo

[XDisplay]
ServerArguments=-listen tcp

Após a criação deste arquivo, reinicie o sistema (pode ser que uma sddmreinicialização seja suficiente). Como consequência

PS ax | grep sddm 

mostra a Xorgopção desejada -listen tcpe o X Server está pronto para as conexões de entrada (não esqueça de adicionar o host remoto xhost).


11
Observe que a partir do SDDM 0.14.0 (que acompanha o Kubuntu 17.10 Artful), a [XDisplay]seção foi renomeada [X11]. Isso causou muita confusão quando eu estava tentando ajudar meu colega de trabalho até rodar uma man 5 sddm.confem nossas máquinas 16.04 e 17.10, respectivamente, e percebi a discrepância!
23417 keithzg

2

Ubuntu 18.04 rodando como lubuntu 18.04 com lightdm 1.26.0, era o que eu tinha que fazer (levei apenas algumas semanas para descobrir tudo). Você deve criar ambos /etc/lightdm/lightdm.confe da /etc/lightdm.conf.d/50-xserver-command.confseguinte maneira:

sudo vi /etc/lightdm/lightdm.conf:

[Seat:*]

xserver-allow-tcp=true
xserver-command=X -listen tcp

sudo vi /etc/lightdm/lightdm.conf.d/50-xserver-command.conf:

[Seat:*]

xserver-command=X -core -listen tcp

Isso fará com que o lightdm execute o Xorg com a seguinte linha de comando:

Xorg -listen tcp :0 -seat seat0 -auth /var/run/lightdm/root/:0 -listen tcp vt7  
   -novtswitch

" -listen tcp" Isso já aconteceu " " duas vezes, mas não faz mal a nada. Se você não possui os dois arquivos, uma das opções do Xorg será "-nolisten tcp", que substitui os outros "-listen tcp". Finalmente encontrei as pistas para isso aqui .

Em seguida, adicione: xhost +ao seu.bashrc

Reinicie e verifique se o Xorg agora está escutando na porta 6000:

$ netstat -nal | grep 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN     
tcp6       0      0 :::6000                 :::*                    LISTEN     

Desfrutar...


2

No Ubuntu 18.04, observei os processos em execução e descobri que o gerenciador de exibição que está sendo usado é o gdm3:

$ ps ax|grep dm
 1515 ?        Ssl    0:00 /usr/sbin/gdm3

Depois editei /etc/gdm3/custom.confe adicionei uma linha:

[security]
DisallowTCP=false

Como mencionado, a abertura da porta 6000 não é segura. No entanto, estou usando isso apenas na rede doméstica e a porta é protegida ainda mais iptablespara abrir apenas o meu laptop principal, deve estar ok.


Como isso difere da resposta aceita?
Stephen Rauch

11
Não fundamentalmente diferente, mas em 18,04 o arquivo de configuração é "/etc/gdm3/custom.conf", enquanto na resposta aceita é "/etc/gdm/custom.conf"
Bing Ren

1

Para Magro alterar a opção xserver_argumentsna /etc/slim.conf. E reinicie sua sessão X.


O que é Slim? Você deve adicionar um link na sua resposta, para demonstrar que é relevante para a pergunta.
18/07/19
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.