SSH을 이용한 X11 Request forwarding... [1]

SSH을 이용한 X11 Request forwarding...

2003-09-06 13:33 - 오찬석

안녕하세요, 정말 좋은 프로그램 잘 쓰고 있습니다.

개인적으로 궁금한 질문이 있습니다.
방화벽 등으로 막혀있는 remote가 있어서, 단순히 DISPLAY를 제 컴뮤터의 ip 셋팅하는 것으로는 화면이 뜨지 않습니다. 그래서 리모콘에서 ssh 접속을 이용하거든요.

들리는 풍문에 의하면 ssh이 자동으로 X11 Requst를 포워딩해주기 때문에 그렇게 잘 되는 것이라고 하던데요.

리모콘에서 원격 실행 결과를 봐도 이렇게...

Requesting X11 forwarding...Done.

Requesting compression...Done.

잘됩니다. 어떻게 하는지는 모르겠지만. 하여간 신기하기도 하고 이때의 DISPLAY를 보면 항상 localhost:10.0으로 셋팅이 되던데요.

수동으로 해보고자 제 컴에서 여타의 ssh 클라이언트로 해당 서버에 접속하고 DISPLAY를 localhost:10.0으로 셋팅한 후 hanterm 등을 수행하면... 잘 안되더군요.

이 글의 진짜 질문은 이것) 직접 ssh로 접속 후, 화면을 다른쪽으로 돌리고 싶을 때 어떻게 해야 하는지 궁금합니다.

display number는 어떻게 알아내는지, 어떤 명명을 해줘서 포워딩을 해 줄 수 있는지 등...

그럼 감사합니다.~


Re: SSH을 이용한 X11 Request forwarding...

2003-09-08 09:48 - 넷사랑

(주)넷사랑컴퓨터 기술지원팀입니다.

고객님이 말씀하신대로, Xmanager는 SSH 프로토콜의 X11 포워딩을 사용하고 있습니다. X11 포워딩은 다음과 같은 순서로 진행이 됩니다.

  1. SSH 클라이언트가 서버에 X11 포워딩을 요청.
  2. SSH 서버가 적당한 DISPLAY 환경변수를 세팅하고 해당 포트를 listen합니다.
    (고객님의 경우 서버가 DISPLAY 환경변수를 localhost:10.0 으로 세팅하고 6010 번 포트를 listen하게 되는데, SSH 서버에 설정에 DisplayOffset 이 10으로 설정되어있기 때문입니다. 여러명이 같은 서버에 SSH 로 접속하는 경우, 각각 localhost:11.0, localhost:12.0 의 순으로 DISPLAY를 할당 받습니다.)
  3. SSH 클라이언트 사용자가 X11 응용프로그램 (e.g. xterm)을 실행합니다.
    (이때, X11 응용프로그램은 환경변수를 보고 localhost:10.0 즉, 자신의 구동되는 컴퓨터의 6010번 포트로 접속을 시도하게 됩니다.)
  4. SSH 서버는 6010 번 연결을 받아들이고, 그 연결의 모든 데이터를 SSH 클라이언트로 전달(forward)합니다.
  5. SSH 클라이언트는 전달된 데이터를 X서버(Xmanager에게) 전달합니다.

또, SSH 접속 후 X11 응용 프로그램의 화면을 다른 곳 띄우고 싶을 때에는(고객님 질문의 경우), 당사 홈페이지의 메뉴 > 제품안내 > Xshell 페이지에 가셔서 Xshell 프로그램을 다운로드하여 사용하시길 추천합니다.
Xshell의 X11 포워딩 기능은, 파일 > 열기 메뉴에서, 세션을 선택한 후 오른쪽 버튼을 클릭하여 등록정보를 선택하시면, 터널링 탭에서 설정이 가능합니다.
터널링 탭에서 X11 연결의 목적지를 DISPLAY로 선택하고 적당한 DISPLAY 값(호스트:포트.0)을 설정하시면 원하는 곳으로 X11 화면을 돌려서 볼 수 있습니다.

더 궁금한 사항 있으시면 언제든지 질문 주시기 바랍니다.

감사합니다.



이전 조회수: 124