为什么 ssh X 转发一段时间后会超时?

为什么 ssh X 转发一段时间后会超时?

所以我在工作的时候有一台 Mac,我喜欢用以下命令将它 ssh 到我的 Linux 机器上:

$ ssh -Xt user@mylinux

我可以登录并启动 Linux 机器上的任何 X11 应用程序,没有任何问题。但大约 15 分钟后,我回到会话(ssh 仍在运行并连接),然后我得到:

$ xterm 
xterm Xt error: Can't open display: localhost:12.0

我尝试过使用-o "TCPKeepAlive yes"-o "ServerAliveInterval 30",但仍然得到相同的行为。

ssh 或 Mac 或我的 linux sshd 配置中是否存在某些东西,会在一段时间不活动后终止 X-forwarding?

答案1

默认ForwardX11Timeout值为 20 分钟ssh -X,但您可以将其设置为较大的值(例如7d7 天).ssh/config

通过“受信任的” X11 转发ssh -Y实际上会启用一些潜在的恶意行为,例如按键监控和屏幕抓取。

答案2

使用-X,X11 转发在“不受信任”模式下启用,利用各种 X11 安全扩展,包括有时间限制的 Xauth cookie。

用于-Y启用 X11 的“受信任”模式,这将启用对 X11 服务器的完全访问。

相关内容