답변:
이 작업을 수행하는 몇 가지 방법이 있습니다. 내가 선호하는 방법은 ssh 포트를 전달하는 것입니다.
먼저 머신 B에 연결하고 B를 통해 [localPort]를 C : 22로 전달하십시오.
A$ ssh -L [localPort]:C:22 B
그런 다음 [localPort]를 사용하여 X11을 전달하여 새로 생성 된이 터널을 통해 A에서 C로 연결하십시오.
A$ ssh -X -p [localPort] localhost
이제 C에서 X11 프로그램을 실행하고 A에 표시 할 수 있습니다.
C$ xclock
[localPort]는 아직 A에서 듣지 않는 포트 일 수 있습니다. 간결성을 위해 종종 2222를 사용합니다.
포트 포워딩을 사용하면 쉽게 달성 할 수 있습니다.
A$ ssh -NL 2022:C:22 B &
A$ ssh -X -p 2022 localhost
C$ xclock
localhost : 2022 포트는 B SSH를 통해 C : 22로 전달되고 localhost : 2022를 통해 C로 전달됩니다.
문제는 중간 시스템에 X가 없지만 X11 전달을 허용하도록 구성된 경우 xauth를 설치하는 것입니다.
m 기반 시스템 (fedora, redhat, centos)에서 :
B$ sudo yum install xauth
apt 기반 시스템 (debian, ubuntu)에서 :
B$ sudo apt-get install xauth
yum
파이에 있습니까?
사용중인 sshd에서 X11Forwarding을 비활성화 한 경우 X11 디스플레이를 전달할 수 없습니다.
남자 sshd_config :
X11Forwarding
Specifies whether X11 forwarding is permitted. The argument must be “yes”
or “no”. The default is “no”.
대상 및 사용 중인 모든 중간 sshd 에서 X11Forwarding이 활성화되어 있는지 확인해야 합니다.
작은 힌트 : VNC를 사용하려고하면 X11 디스플레이 전달은 대역폭을 많이 소비합니다.
yes
"입니다.