Answers:
这两个选项都与X11转发有关。这意味着,如果启用此功能,则可以通过SSH会话使用图形客户端(例如,使用Firefox或其他工具)。
如果使用ssh -X remotemachine
远程计算机,则将其视为不受信任的客户端。因此,本地客户端将命令发送到远程计算机并接收图形输出。如果您的命令违反了某些安全设置,则会收到一条错误消息。
但是,如果使用ssh -Y remotemachine
远程计算机,则将其视为受信任的客户端。最后一个选项可能会打开安全性问题。因为其他图形(X11)客户端可能会嗅探远程计算机上的数据(进行屏幕截图,进行键盘记录和其他讨厌的事情),甚至有可能更改这些数据。
如果您想进一步了解这些内容,建议阅读Xsecurity联机帮助页或X Security扩展规范。此外,您可以在ForwardX11
和ForwardX11Trusted
中检查选项/etc/ssh/ssh_config
。
-X
其他客户端无法嗅探或更改数据吗?
-Y
而不是-X
一般呢?
-Y
),并且我理解这可能有用的唯一情况是服务器端的安全控制由于某种原因未实现/不兼容。我还读到转发X11通常是一个功能强大且危险的工具,应该这样对待。
当您不需要远程运行X11程序时,不要使用任何一种。使用-X
时使用;并假设-Y
如果您关心的X11程序在-Y下比在-X下运行更好。但目前(Ubuntu 15.10),-X与-Y相同,除非您编辑ssh_config
说ForwardX11Trusted no
。-X最初旨在启用1990年代的X Security扩展,但是它既旧又不灵活,并且使某些程序崩溃,因此默认情况下将其忽略。
ssh -Y
和ssh都-X
允许您在远程计算机上运行X11程序,其窗口显示在本地X监视器上。问题是该程序允许对其他程序的窗口以及X服务器本身执行的操作。
local$ ssh -X remote
remote$ xlogo
# Runs xlogo on remote, but the logo pops up on the local screen.
可信任的 X11转发由启用-Y
。这是历史行为。可以访问整个显示的程序是受信任的。它可以截屏,键盘记录,以及将输入注入其他程序的所有窗口。而且它可以使用所有X服务器扩展,包括诸如安全图形加速图形之类的扩展。这有利于平稳运行,但不利于安全性。您相信远程程序与本地程序一样安全。
不可信的 X11转发试图将远程程序限制为仅访问自己的窗口,并且仅使用相对安全的X部分。听起来不错,但目前在实践中效果不佳。
-X
当前的含义取决于您的ssh配置。
在Ubuntu 14.04 LTS上,除非您进行编辑,否则和ssh_config
之间没有区别。“ [B]因为当前有太多程序在[不受信任]模式下崩溃。”-X
-Y
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.