mkl*_*in9 10 ssh display mac-osx x11
从 Mac (10.7.2) 登录到 Linux (Ubuntu 8.04) 时,ssh 转发我的 X11 连接时遇到了一个令人烦恼的新问题。我使用 ssh -X 登录到远程机器并从该 shell 启动基于 X11 的应用程序没有问题。
最近开始发生的事情是,在一段时间后(大约几个小时),来自同一个 shell 的 X11 应用程序的其他调用无法启动,因为转发的显示被阻止(我认为)。例如,在尝试启动 xterm 时,我收到有关错误 DISPLAY 设置的常见消息,例如:
xterm Xt 错误:无法打开显示:本地主机:10.0
但是我在登录时启动的 X11 应用程序仍然运行得很好,使用完全相同的显示 (localhost:10.0),只是它更早启动。
我在 sshd_config 中打开了详细日志记录,我在 /var/log/auth.log 文件中看到了这一点,以响应失败的 xterm 启动尝试:
sshd[22104]:通道 8:打开失败:管理禁止:打开失败
如果我再次 ssh -X 到服务器,启动一个新的 shell 并分配一个新的显示 (localhost:11.0),重复相同的过程:X11 应用程序很早就开始运行,只要我保持打开状态(几天),但几个小时后,我无法从该 shell 启动任何新的。
详细信息:在 Ubuntu 8.04 上运行的 OpenSSH sshd 服务器,显示转发到运行 Lion (10.7.2) 的 Mac,使用默认的 Apple X 服务器。这些系统连接在以太网 LAN 上,它们之间只有一个交换机。两台机器都没有运行防火墙。直到最近(几天前),这个设置才完美运行,所以我不知道下一步该往哪里看。我绝不是 X11 或 SSH 专家,但具有良好的 UNIX/Linux 经验。在客户端或服务器配置中没有任何明显的变化,尽管我尝试更改一些选项来尝试调试它,例如将 sshd_config 的 TCPKeepAlive 设置为 no,并设置“host + localhost”(你可以说我一直在谷歌搜索)。
当从 Linux 11.10 笔记本电脑通过同一网络和交换机登录到同一远程主机时,不会发生此问题——几个小时后,可以从同一个 ssh 登录 shell 成功调用 xterm,而 Mac 上的相同实验失败(今天早上进行了测试以确保),因此这似乎是特定于 Mac 的问题。
在远程机器(sshd 服务器)上设置了“LogLevel DEBUG3”,并且我没有对客户端连接进行任何更改,/var/log/auth.log 显示一夜之间连接状态报告的一个轻微变化,这是使用的端口号通过来自 Linux 机器的一个成功的 ssh 会话(我认为),下面的连接 #7:
sshd[20173]:debug3:通道 7:状态:以下连接已打开:\r\n #0 服务器会话 (t4 r0 i0/0 o0/0 fd 14/13 cfd -1)\r\n #3 X11 连接来自 127.0.0.1 端口 57564 (t4 r1 i0/0 o0/0 fd 16/16 cfd -1)\r\n #4 X11 连接来自 127.0.0.1 端口 57565 (t4 r2 i0/0 o0/0 fd 16/16 cfd -1) /17 cfd -1)\r\n #5 X11 连接来自 127.0.0.1 端口 57566 (t4 r3 i0/0 o0/0 fd 18/18 cfd -1)\r\n #6 X11 连接来自 127.0.0.1 端口57567 (t4 r4 i0/0 o0/0 fd 19/19 cfd -1)\r\n #7 X11 连接来自 127.0.0.1 端口 59007
在这份报告中,除了连接 #7 使用的端口号之外,状态报告之间的所有内容都相同,我认为它是 Linux 客户端——唯一仍然保持显示连接的客户端。从一夜之间的一系列报告来看,它会随着时间的推移而继续增加。
谢谢你的帮助,
-麦克风
mkl*_*in9 13
在我更改 Mac 客户端的 /etc/ssh_config 以包含以下行后,ssh 会话开始:
ForwardX11 超时 596h
一切正常,一整天。到现在为止,他们都会拒绝开始新的 xterms。所以我相信这就是答案,幸运的是一个简单的解决方案,但超时仍会在 3-1/2 周后发生。
| 归档时间: |
|
| 查看次数: |
8775 次 |
| 最近记录: |