X.org가 포트 6000에서 원격 연결을 수신하게하는 방법은 무엇입니까?


17

Ubuntu 10.10 (Maverick Meerkat) 64 비트 데스크탑에 있습니다.

X 서버가 로컬 네트워크의 다른 컴퓨터에있는 클라이언트의 원격 연결을 수신하도록하고 싶습니다. 나는 알고 ssh -X있으며 그것이 내가 원하는 것이 아닙니다. 나는 막연하게 같은 변화 기억 TCPListen에서 no대상을 yes하지만,이 변경을 적용 할 위치를 기억하지 않습니다.

GUI 방법이나 CLI 방법에 관심이 있습니다.

옵션 /etc/X11/xinit/xserverrc을 제거 -nolisten tcp하고 재부팅 하는 PS 편집 기능 이 작동하지 않습니다.


힌트 작업을 시도하는 동안 방화벽 (iptables)을 비활성화하는 것이 좋습니다.

@ user243114 힌트가 사용되지 않은 상태로 반환되었지만 어쨌든 감사합니다 :)
ΤΖΩΤΖΙΟΥ

답변:


16

(여기서 내가 잊어 버린 serverfault에 대한 동일한 질문 의 자체 답변 사본이 거의 그대로 있습니다 . 아스 쿠분투는 아직 생성되지 않았습니다).

이 페이지 에서 XDCMP 활성화 와 /etc/gdm/gdm.schemas 파일 에 관한 정보를 바탕으로 파일을 만들었습니다 /etc/gdm/custom.conf.

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

[chooser]

[security]
DisallowTCP=false

[debug]

"disallowTCP = false"를 쓰면 작동하지 않습니다. 또한 / etc / X11 / xinit / xserverrc 파일을 다음과 같이 변경했습니다.

exec /usr/bin/X11/X

-nolisten tcp, X 실행 파일에 대한 옵션을 제거했습니다 . 필요한지 모르겠습니다. 이 편집을 피하려고 할 수 있습니다.

xserverrc 파일 만 변경하면 X는 "-nolisten TCP"로 시작합니다.

그 후에는 gdm 프로세스를 다시 시작하기 만하면됩니다.

sudo service gdm restart

다음과 같이 성공을 확인할 수 있습니다.

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

최신 정보

12.04로 업그레이드 한 후에도 같은 문제가있었습니다. 이번에는 범인이 시스템에서 사용하는 lightdm입니다. 업데이트해야하는 파일입니다 /etc/lightdm/lightdm.conf및 필요한 추가는이다 xserver-allow-tcp=true[SeatDefaults]절을 참조하십시오.

그리고 그 후에도 그 대답을 찾았 습니다 . :)

개요

따라서 10.10에서도 여전히 작동합니다 : /etc/gdm/custom.conf위에서 지정한 내용으로 작성 하고 다시 시작하십시오 gdm.


1
우분투 14.04를 들어, 필요한 유일한 것은 같은 파일을 가지고있다 /usr/share/lightdm/lightdm.conf.d/100-custom.conf`[SeatDefaults] 서버 수-TCP가 포함 된`= 진정한
NITZ

@Nitz, xserver-allow-tcp=true귀하의 의견에 'x'가 누락되었습니다. 기존 주석을 삭제하고 다시 작성할 수 있습니다. 대답에는 지금 그 해결책이 포함되어 있지만.
Alexis Wilke

1
서버 오류에 원래의 질문에 댓글을 지금의 Xorg : 수신하지 않습니다 기본적으로 TCP를. -listen tcp그것을 가능하게하기 위해 추가해야 하지만 gdm3이 가능성을 제공하지는 않습니다.
L. Levrel

4

이 답변은 Kubuntu 17.04와 관련이 있으며 다른 답변 ( gdm또는 관련 lightdm)이 도움이 되지 않았기 때문에 추가했습니다 . 제 경우 sddm에는 달리고있었습니다. 이를 확인하려면 예를 들어 실행하십시오.

ps -eal | grep sddm

실행 중이면 프로세스 sddmsddm-helper표시됩니다. 이 경우 /etc/sddm.conf컨텐츠가 포함 된 구성 파일 을 추가하십시오.

[XDisplay]
ServerArguments=-listen tcp

이 파일을 만든 후 시스템을 재부팅하십시오 ( sddm다시 시작하면 충분할 수 있음 ). 결과로서

PS ax | grep sddm 

원하는 Xorg옵션을 보여주고 -listen tcpX 서버는 들어오는 연결을위한 준비가되었습니다 (로 원격 호스트를 추가하는 것을 잊지 마십시오 xhost).


1
SDDM 0.14.0 (쿠분투 17.10 Artful과 함께 제공)부터 [XDisplay]섹션 이름이 변경되었습니다 [X11]. man 5 sddm.conf16.04 및 17.10 시스템에서 각각을 실행하고 불일치를 발견 할 때까지 동료를 도울 때 많은 혼란이 발생했습니다 !
keithzg 2018

2

lightdm 1.26.0을 사용하여 lubuntu 18.04로 실행되는 Ubuntu 18.04, 이것이 내가해야 할 일입니다 (모두 알아 내려면 몇 주가 걸렸습니다). 당신은 둘을 만들어야 /etc/lightdm/lightdm.conf/etc/lightdm.conf.d/50-xserver-command.conf같은 다음과 같습니다 :

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

그러면 다음 명령 줄을 사용하여 lightdm이 Xorg를 실행합니다.

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

여기에는 " -listen tcp" 이 (가) 두 번 있지만 아무 것도 아프지 않습니다. 두 파일이 모두없는 경우 Xorg 옵션 중 하나는 "-nolisten tcp"이며 다른 "-listen tcp"를 무시합니다. 나는 마침내 이에 대한 단서를 발견 여기에 .

그리고 추가 xhost +.bashrc

다시 시작하고 Xorg가 포트 6000에서 수신 대기 중인지 확인하십시오.

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

즐겨...


2

우분투 18.04에서 실행중인 프로세스를보고 사용중인 디스플레이 관리자가 gdm3이라는 것을 알았습니다.

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

그런 다음 /etc/gdm3/custom.conf줄을 편집 하고 추가했습니다.

[security]
DisallowTCP=false

언급했듯이 포트 6000을 여는 것은 안전하지 않습니다. 그러나 나는 이것을 홈 네트워크에서만 사용하고 있으며 iptables기본 랩톱에만 열도록 포트를 더 안전하게 보호합니다 .


이것이 허용되는 답변과 어떻게 다릅니 까?
Stephen Rauch 2016 년

1
아니 근본적으로 다르지만 18.04의 구성 파일은 허용 대답에 "/etc/gdm/custom.conf"동안 "/etc/gdm3/custom.conf은"
빙 르네

1

슬림의 경우에서 옵션 xserver_arguments을 변경하십시오 /etc/slim.conf. 그리고 X 세션을 다시 시작하십시오.


슬림이란? 답변에 링크를 추가하여 질문과 관련이 있음을 보여 주어야합니다.
ΤΖΩΤΖΙΟΥ
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.