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
-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.
这两个选项都与 X11 转发有关。这意味着如果您启用它,您可以通过 SSH 会话使用图形客户端(例如,使用 Firefox 或其他)。
如果您使用
ssh -X remotemachine
远程机器被视为不受信任的客户端。因此,您的本地客户端向远程机器发送命令并接收图形输出。如果您的命令违反了某些安全设置,您将收到错误消息。但是如果你使用
ssh -Y remotemachine
远程机器被视为一个受信任的客户端。最后一个选项可能会引发安全问题。因为其他图形(X11)客户端可以从远程机器上嗅探数据(制作屏幕截图、做键盘记录和其他讨厌的东西),甚至可以更改这些数据。如果您想了解更多关于这些内容的信息,我建议您阅读Xsecurity 手册页或X 安全扩展规范。此外,您可以检查选项
ForwardX11
并ForwardX11Trusted
在您的/etc/ssh/ssh_config
.当您不需要远程运行 X11 程序时,两者都不使用;使用
-X
时使用;-Y
如果您关心的 X11 程序使用 -Y 比使用 -X 效果更好,则假设使用。但目前(Ubuntu 15.10),-X 与 -Y 相同,除非您编辑ssh_config
为ForwardX11Trusted no
. -X 最初是为了启用 1990 年代的 X 安全扩展,但它陈旧且不灵活,并且会使某些程序崩溃,因此默认情况下会被忽略。ssh
-Y
和-X
让您在远程机器上运行 X11 程序,其窗口出现在本地 X 监视器上。问题是允许程序对其他程序的窗口和 X 服务器本身做什么。受信任的 X11 转发由 启用
-Y
。这是历史行为。可以访问显示器的程序被信任可以访问整个显示器。它可以截屏、键盘记录并将输入注入其他程序的所有窗口。它可以使用所有 X 服务器扩展,包括像加速图形这样的安全漏洞。这有利于平稳运行,但不利于安全。您相信远程程序与本地程序一样安全。不受信任的 X11 转发试图限制远程程序只能访问它们自己的窗口,并且只使用 X 中相对安全的那些部分。这听起来不错,但目前在实践中效果不佳。
current 的含义
-X
取决于你的 ssh 配置。在 Ubuntu 14.04 LTS 上,除非您编辑
ssh_config
.-X
和-Y
. “[B] 因为目前有太多程序在 [untrusted] 模式下崩溃。”如果
ForwardX11Trusted no
,则-X
启用不受信任的转发。否则,-X
被视为与 相同-Y
,相信具有显示访问权限的远程程序是友好的。该
-X
选项启用 X11 转发:与 ssh_config(5) 中的 ForwardX11Trusted 指令相对应的选项
-Y
更不安全,因为它删除了 X11 SECURITY 扩展控制。使用起来更安全
-x
来自男人:
Debian 特定:
在默认配置中:
ForwardX11Trusted yes
-Y 等价于 -X (我认为这个描述更好:-X 和 -Y 一样易于使用,但风险相同)
不受信任并不意味着机器比受信任的机器更危险,而是意味着你很谨慎,所以更安全。