X11 forwarding failed
현상
Xstart 세션이나 Xshell에서 SSH 프로토콜을 선택하여 접속을 시도할 경우 실행결과 보여주기와 에러메시지 창에서 다음과 같은 메시지들을 보여 주고 X응용프로그램이 실행되지 않습니다.
실행 결과 보여주기 창 :
requesting X11 forwarding...failed. (X11 포워딩을 요청하였습니다.... 실패)
윈도우의 에러메시지 창 :
Xmanager 1.3.x
원격 서버가 X11 포워딩 요청을 거절하였습니다. 원격 서버가 X11 포워딩을 지원하는지 확인해 보시기 바랍니다.
Xmanager 2.x, 3.x
X11 포워딩 요청이 거부되었습니다. 이 문제를 해결하시려면 원격 ssh 서버의 X11 포워딩 기능을 활성화 하십시오.
Xshell 4, 5, 6
Warning! 원격 ssh 서버가 X11 포워딩 요청을 거부하였습니다. X11 포워딩을 사용하려면 원격 서버의 설정을 변경해야 합니다.
원인 및 해결방법
X11포워딩은 사용자 인증 과정을 포함하는 SSH 터널링의 특수한 형태입니다. SSH 서버는 TCP 터널링과 별도로 X11포워딩을 관리하나 이 부분에서 오류가 생긴 경우입니다.
ssh 서버에서 X11 포워딩 옵션을 켜 놓아야 합니다.
/etc/ssh(2)/sshd(2)_config(또는 /usr/local/etc/ssh(2))에서 다음을 yes로 한 후 ssh 서버를 재기동한다.
openssh 서버인 경우X11forwarding no
ssh.com의 ssh 서버인 경우allowX11forwarding no
- 쿠키(cookie)를 다룰 xauth에 문제가 없어야 합니다.
- xauth의 경로가 제대로 잡혀 있어야 합니다.
- X11이 제대로 설치가 안 되어 있는 경우도 있습니다.(유닉스/리눅스를 서버 타입으로 설치할 경우 X11이 기본적으로 설치가 안됩니다.)
- $HOME/.Xauthority 파일에 문제가 없어야 합니다. 액세스 권한이 있어야 하며 잠김 파일인 .Xauthority-c, .Xauthority-l 파일이 없어야 합니다.