【问题标题】:X11 Forwarding can't open display (client rejected?)X11 转发无法打开显示(客户端被拒绝?)
【发布时间】:2023-03-07 20:37:01
【问题描述】:

我已经阅读了类似的问题,并应用了发布的建议,但似乎没有一个可以解决我的问题...

在 Putty 中,我启用了 x11 转发,并将“X 显示位置”设置为 0.0

远程 Debian 8.4 的 X 版本是 1.16.4,其中 /etc/ssh/ssh_config 设置为:

 ForwardX11 yes
 ForwardX11 Trusted yes

和 /etc/ssh/sshd_config:

 X11Forwarding yes

我还强制 DISPLAY 变量指向我本地机器的 IP:

 export DISPLAY=192.168.1.140:0.0

并验证它的设置是否正确(使用'echo $DISPLAY')

最后,我重新启动了:'service ssh restart' 和 'service sshd restart'。不幸的是,当我输入“xterm&”时,我得到了错误 “无法打开显示:%s”,本地运行的 xming (Win8) 从不显示任何内容。

Xming 日志好像显示认证错误:

 winClipboardProc - Hello
 DetectUnicodeSupport - Windows Vista
 winClipboardProc - DISPLAY=127.0.0.1:0.0
 winMultiWindowXMsgProc - XOpenDisplay () returned and successfully opened the display.
 winInitMultiWindowWM - XOpenDisplay () returned and successfully opened the display.
 winClipboardProc - XOpenDisplay () returned and successfully opened the display.
 AUDIT: Mon Jul 04 09:40:48 2016: 2508 C:\Program Files (x86)\Xming\Xming.exe: client 4 rejected from IP 192.168.1.151 

 [Note: the 192.168.1.151 is the IP of the BBB (ifconfig -a)]

我还验证了 Window 的防火墙没有阻止 xming。

不确定它是否重要,但远程 debian 运行在 beaglebone black 上。

【问题讨论】:

    标签: ssh x11 beagleboneblack sshd xming


    【解决方案1】:

    您不应该将 DISPLAY 变量指向您自己的机器。相反,SSH 将通过其与本地机器的连接从远程机器建立连接。当您使用 Putty/SSH 登录时,它会设置一个 DISPLAY 变量:

    $ echo $DISPLAY
    localhost:10.0
    

    xterm 将连接到这个“本地”显示器,这实际上是您的 xming 服务器,通过 SSH 连接安全转发。

    【讨论】:

    • 本来我根本没有导出DISPLAY,但是当它不起作用时,我尝试将它设置为我的xming的IP。但即使将其设置为 localhost (export DISPLAY=localhost:10.0),我仍然在远程机器上看到“无法打开显示:%s”。有趣的是,虽然我在 xming 的日志中没有看到被拒绝的消息。可以这是 /etc/hosts 文件或 ~/.Xauthority 的问题吗?
    • 可能是转发不起作用(因此,连接尝试永远不会到达您的本地计算机)。 /etc/hosts 与此无关,.Xauthority 可能。在 Linux 上,我经常使用“-Y”选项进行 X 转发,这是受信任的 X11 选项;尝试关闭 ForwardX11Trusted 指令。
    • 作为另一个数据点,我尝试使用本地虚拟 (linux) 机器连接到远程并且它工作正常 (ssh -X root@192.168.1.151)。我收到一条错误消息,提示文件 /root/.Xauthority 不存在,但我仍然能够通过 ssh 访问它,执行 xterm,然后 gui 出现了。也许这个丢失的文件导致了 Windows 主机问题?顺便说一句,我在遥控器上的唯一帐户是“root”,即没有其他用户帐户。
    【解决方案2】:

    MOBAXTERM!

    在尝试了我能找到的关于该主题的所有内容后,将 x11 从 debian 8.4 转发到 xming (win8) 没有任何效果。我运行了 mobaxterm exe,它立即生效!它看起来也有一个不错的文件操作 gui 界面。

    (注意,我读到蜂鸟超标也可能有效,但我没有尝试过)

    【讨论】: