답변:
두 옵션 모두 X11 포워딩과 관련이 있습니다. 즉,이 기능을 활성화하면 SSH 세션을 통해 그래픽 클라이언트를 사용할 수 있습니다 (예 : Firefox 등).
ssh -X remotemachine
원격 시스템 을 사용 하는 경우 신뢰할 수없는 클라이언트로 취급됩니다. 따라서 로컬 클라이언트는 원격 시스템에 명령을 보내고 그래픽 출력을 수신합니다. 명령이 일부 보안 설정을 위반하면 대신 오류가 발생합니다.
그러나 ssh -Y remotemachine
원격 시스템 을 사용 하는 경우 신뢰할 수있는 클라이언트로 취급됩니다. 이 마지막 옵션은 보안 문제를 일으킬 수 있습니다. 다른 그래픽 (X11) 클라이언트는 원격 시스템에서 데이터를 스니핑 (스크린 샷 생성, 키 로깅 및 기타 불쾌한 작업 수행) 할 수 있으며 이러한 데이터를 변경할 수도 있습니다.
그에 대해 더 알고 싶다면 Xsecurity 맨 페이지 또는 X 보안 확장 사양을 읽으십시오 . 또한 옵션을 ForwardX11
및 ForwardX11Trusted
에서 확인할 수 있습니다 /etc/ssh/ssh_config
.
-X
다른 클라이언트가 데이터를 스니핑하거나 변경하는 것이 불가능합니까?
-Y
대신에 사용하고 싶 -X
습니까?
-Y
유용하다고 생각한 유일한 경우는 서버 측의 보안 제어가 어떻게 구현되지 않았거나 호환되지 않는 경우입니다. 또한 X11 포워딩은 일반적으로 강력하고 위험한 도구로 취급해야합니다.
X11 프로그램을 원격으로 실행할 필요가 없을 때는 사용 하지 마십시오. -X
당신이 할 때 사용 ; -Y
관심있는 X11 프로그램이 -X보다 -Y에서 더 잘 작동한다면 가설 적으로 사용 하십시오. 그러나 현재 (Ubuntu 15.10)에서 -X는 편집 ssh_config
하도록 말하지 않으면 -Y와 동일합니다 ForwardX11Trusted no
. -X는 원래 1990 년대의 X 보안 확장을 가능하게하려는 것이었지만, 구식이며 융통성이 없으며 일부 프로그램과 충돌하므로 기본적으로 무시됩니다.
ssh -Y
와 -X
원격 시스템에서 X11 프로그램을 실행할 수 있으며 창은 로컬 X 모니터에 나타납니다. 문제는 프로그램이 다른 프로그램의 창과 X 서버 자체에서 수행 할 수있는 작업입니다.
local$ ssh -X remote
remote$ xlogo
# Runs xlogo on remote, but the logo pops up on the local screen.
Trusted X11 전달은에 의해 활성화됩니다 -Y
. 이것은 역사적 행동입니다. 디스플레이에 액세스 할 수있는 프로그램은 전체 디스플레이에 액세스 할 수있는 것으로 신뢰 됩니다. 스크린 샷, 키 로그 및 다른 프로그램 의 모든 창에 입력을 삽입 할 수 있습니다. 또한 보안 노출 인 가속 그래픽과 같은 모든 X 서버 확장을 사용할 수 있습니다. 원활하게 실행하기에는 좋지만 보안에는 좋지 않습니다. 원격 프로그램이 로컬 프로그램만큼 안전하다고 신뢰하고 있습니다.
신뢰할 수없는 X11 전달은 원격 프로그램이 자신 의 창 에만 액세스 하고 비교적 안전한 X 부분 만 사용 하도록 제한합니다 . 어느 것이 좋지만 현재 실제로는 잘 작동하지 않습니다.
-X
현재 의미는 ssh 구성에 따라 다릅니다.
우분투 14.04 LTS에, 당신이 당신을 편집하지 않는 한 ssh_config
, 사이에 차이가 없다 -X
하고 -Y
. "[B] 현재 너무 많은 프로그램이 [비 신뢰] 모드에서 충돌합니다."
ubuntu1404$ man ssh
...
-X Enables X11 forwarding. This can also be specified on a per-host
basis in a configuration file.
...
(Debian-specific: X11 forwarding is not subjected to X11 SECURITY
extension restrictions by default, because too many programs cur‐
rently crash in this mode. Set the ForwardX11Trusted option to
“no” to restore the upstream behavior. This may change in
future depending on client-side improvements.)
ubuntu1404$ grep ForwardX11Trusted /etc/ssh/ssh_config
# ForwardX11Trusted yes
인 경우 신뢰할 수 없는 전달 ForwardX11Trusted no
을 -X
활성화 합니다. 그렇지 않으면 디스플레이 액세스 권한이있는 원격 프로그램이 친숙하다는 점을 신뢰 하여와 동일하게 취급 됩니다.-X
-Y
이 -X
옵션은 X11 전달을 활성화합니다.
-X Enables X11 forwarding. This can also be specified on a per-host
basis in a configuration file.
X11 forwarding should be enabled with caution. Users with the
ability to bypass file permissions on the remote host (for the
user's X authorization database) can access the local X11 display
through the forwarded connection. An attacker may then be able
to perform activities such as keystroke monitoring.
For this reason, X11 forwarding is subjected to X11 SECURITY
extension restrictions by default. Please refer to the ssh -Y
option and the ForwardX11Trusted directive in ssh_config(5) for
more information.
-Y
ssh_config (5)의 ForwardX11Trusted 지시문에 해당하는 옵션 은 X11 SECURITY 확장 컨트롤을 제거하므로 보안 수준이 훨씬 떨어집니다.
-Y Enables trusted X11 forwarding. Trusted X11 forwardings are not
subjected to the X11 SECURITY extension controls.
사용하는 것이 더 안전합니다 -x
-x Disables X11 forwarding.