PuTTY, CygwinX 및 X11 전달 연결이 거부되었습니다.


10

더 이상 KiTTY / PuTTY를 사용하여 X11을 CygwinX로 전달할 수 없습니다.

X11 전달을 허용하도록 올바르게 구성된 Ubuntu Server 14.10 시스템에 연결하고 있습니다. 나는 오전 Cygwin에서 xterm 등 다른 리눅스 머신에서을 사용하여 X11 포워딩을 시작할 수.

Win7에서 CygwinX [1.7.34 (0.285 / 5 / 3)] 및 KiTTY 0.64.0.1 (PuTTY 포크, PuTTY도 시도했습니다)을 사용하고 있습니다.

디스플레이 변수를 확인하고 Cygwin xterm에서 xhost 액세스 제어를 비활성화하려고 시도했습니다.

$ echo $DISPLAY
:1

$ xhost +
access control disabled, clients can connect from any host

내 KiTTY / PuTTY가 X11 전달을 사용하도록 구성되었으며 올바른 표시가 설정되었습니다. 나는 : 1과 : 1.0을 시도했다.

KiTTY X11 구성 스크린 샷

서버에 SSH를 연결하면 DISPLAY 변수가 설정되고 xauth가 업데이트됩니다. .Xauthority를 ​​삭제하고 다시 작성하여 확인했습니다.

user@server:~$ echo $DISPLAY
localhost:10.0
user@server:~$ xauth list
server/unix:10  MIT-MAGIC-COOKIE-1  3983b2d7f3d5f9f66d9796997771bf82

X11 응용 프로그램을 시작하려고하면 다음 오류가 발생합니다.

user@server:~$ xterm
KiTTY X11 proxy: unable to connect to forwarded X server: Network error: Connection refused
xterm: Xt error: Can't open display: localhost:10.0

XWin.exe는 34576 포트에서 수신 대기합니다.

[XWin.exe]
 TCP    127.0.0.1:34576        0.0.0.0:0              LISTENING

여러 서버 및 클라이언트 컴퓨터에서이를 볼 때 누락 된 소프트웨어 또는 구성 문제가 있다고 생각합니다. 도움을 주시면 감사하겠습니다.


$DISPLAY원격 컴퓨터에서이 아닌 바탕 화면의 주소를 가리켜 야합니다 localhost.
lcd047

2
아니요, 지금은 절대 아닙니다. $DISPLAY원격 컴퓨터에서을 가리켜 야합니다 localhost. SSH는 전달을 수행합니다.
Gilles 'SO- 악마 그만해'

Cygwin64를 변수로 제거하기 위해 32 비트 Cygwin을 설치했습니다. 변경 없음. 연결 거부 오류가 계속 발생합니다.
SeeJayEmm

@Gilles는 : 내가 만들려고 한 점은이었다 때문에 $DISPLAY 원격 컴퓨터가 영업 이익의 바탕 화면을 가리 키지 않습니다에서 X11 전달이 일어나지 않았다 . 그렇지 않으면 $DISPLAY원격 컴퓨터에서 X 서버 자체를 실행하지 않는 경우 원격 컴퓨터에 존재하지 않을 수도 있습니다 (초기 질문과는 아무런 관련이 없음).
lcd047

3
@ lcd047 아니요. 사실을 확인하십시오. X11 전달이 발생하면을 DISPLAY가리 킵니다 localhost. SSH는 원격 시스템의 TCP 포트에서 수신하고 패킷을 전달합니다. DISPLAY로컬 시스템을 가리키는 경우 SSH를 통해 전달되지 않고 직접 TCP 연결을 통해 일반 텍스트로, 경로가없는 IP 주소로 전달됨을 나타냅니다.
Gilles 'SO- 악마 중지'

답변:


9

좋아, 나는 내 자신의 문제에 대한 해결책을 찾았다.

기본적으로 CygwinX는 더 이상 tcp 연결을 수신하지 않습니다 (Cyg SSH는 Unix 소켓을 사용하여 연결합니다). tcp 연결을 사용하려면 "-listen tcp"를 명령 행 매개 변수에 추가해야합니다. 필자의 경우 "XWin Server"아이콘을 다음과 같이 변경했습니다.

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; /usr/bin/startxwin -- -multiwindow -listen tcp"

감사합니다! 그러나 xhost +localhostX 서버를 시작할 때마다 로컬 cygwin 터미널에서 수행하지 않거나 더 안전한 솔루션 을 피할 수 있습니까?
chappjc

1
글쎄, 난 추가 xhost +localhoststartxwin: 마지막 조건 내에서 파일의 끝 부분에서 우측xhost +localhost fi exit $retval
chappjc

퍼티는 어때?
브라이언 토마스

@BrianThomas 질문을 명확히 할 수 있습니까? PuTTY는 어떻습니까? 원래 게시물의 PuTTY 구성이 유효했습니다. 문제는 CygwinX에서 발생했습니다.
SeeJayEmm

글쎄, 나는 퍼티가 연결되어 있지 않다는 제목을 언급하고 있었다. 대답은 Cygwin에 대한 것이고 퍼티에 대한 것이 아니라 OP에 퍼티 스크린이 보인다. 어쨌든 내가 알아 냈습니다. 퍼티의 경우 내 문제에 대한 해결책은 하나의 Xserver (내 경우에는 XMing) 만 실행되고 시작시 로그에 오류가 없으며 디스플레이를 지정하는 :10것이 나에게 효과적이라는 것을 확인하는 것이 었 습니다. (OK, 원래 OP이기 때문에 이것이 어떻게 대답에 관련이 없는지 알 수 있습니다. 그러나 다른 사람들도 여기에있을 수 있습니다.이 문제는 꽤 넓을 수 있습니다. 희망적으로 이것이 다른 사람들에게 도움이되기를 바랍니다.)
Brian Thomas

0

나는이 문제가 있었다. X-Win이 실행되지 않았기 때문입니다. 시작시 X-Win을 실행하려면 "run", "shell : startup"으로 이동하여 x-win 단축키를 해당 폴더에 복사하십시오.


0

제 경우에는 오류가 "putty x11 connection 거부"와 비슷했습니다. 퍼티를 통해 Windows 시스템을 통해 Ubuntu 16 서버에 로그인했습니다 (x11 전달 기능 사용).

.Xauthority 파일 재생성에서 xauth list 사용에 매직 쿠키 추가에 이르기까지 많은 것을 시도했습니다. 그러나 문제는 단순히 Xming 서버가 Windows 컴퓨터에서 실행되고 있지 않다는 것입니다. 퍼티를 생성 한 호스트 컴퓨터 (윈도우)에서 Xming을 시작하면 퍼티를 통한 로그인이 매력처럼 작동했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.