我使用的是 Ubuntu 14.04,并试图了解ForwardX11
与ForwardX11Trusted
.
我的默认 ssh_config 包含以下几行:
# ForwardX11 no
# ForwardX11Trusted yes
此外,man ssh_config
告诉我:
1. command-line options
2. user's configuration file (~/.ssh/config)
3. system-wide configuration file (/etc/ssh/ssh_config)
还有那个ForwardX11.default == no
和ForwardX11Trusted.default == yes
。
现在我的问题是:
我认为 1. 优先于 2. 优先于 3. 未指定,因此应应用默认设置,即
ForwardX11Trusted == yes
。如果我在没有-Y
或选项的情况下通过 SSH 连接到远程计算机-X
,则 X11 转发不起作用。如果我指定
-X
,X11 转发可以工作,但它似乎处于可信模式?如果我设置
ForwardX11 no ForwardX11Trusted no
在 中,我现在可以使用和命令行选项
/etc/ssh/ssh_config
正确选择模式。但是,虽然转发在模式下产生大约 0.5 MBit 的流量,但它却占用了 6-10 MBit 的模式。-X
-Y
-Y
-X
如果我明确设置
ForwardX11 yes
SSH 仍然忽略该
ssh_config
文件。我还需要具体说明一下ssh -X [...]
。为什么 SSH 似乎忽略默认设置和配置文件?
答案1
根据#4,您编辑的文件正确吗?要更改的文件~/.ssh/config
是客户端上的文件(通常是键盘所在的位置)。
至于#2(和3),请记住ForwardX11可信并不意味着前进X11。 ForwardX11可信只是意味着如果您打开转发(无论是通过配置文件还是命令行),那么转发的连接将受到信任。
答案2
我发现这个页面很有用: https://padraic2112.wordpress.com/2007/07/09/bad-security-201-remote-x-sessions-over-ssh/
它基本上回答了你的问题#2:
如果 ForwardX11Trusted 设置为“yes”,则命令 ssh -X 和 ssh -Y 在功能上等效。如果 ForwardX11 和 ForwardX11Trusted 都设置为“yes”,那么命令标志不仅是等效的,而且是不必要的......也就是说
ssh user@host command = ssh -X user@host command = ssh -Y user@host command
如果 ForwardX11 设置为“yes”且 ForwardX11Trusted 设置为“no”,则
ssh user@host command = ssh -X user@host command =/= ssh -Y user@host command
不幸的是,我对你的其他观察结果一无所知。