SSH -X“警告:不可信的X11转发设置失败:xauth密钥数据未生成”

问题描述 投票:55回答:9

[嘿,让ssh X转发正常工作时遇到了问题。设置是从OSX Yosemite主机上ssh进入我的ubuntu VM。

我已经在OSX上安装了xQuartz,在ubuntu上安装了xauth,并且我相信ssh_config文件中设置了所有正确的选项。

我知道了

Warning: untrusted X11 forwarding setup failed: xauth key data not generated
X11 forwarding request failed on channel 0

ssh -X打开连接时,以及当我尝试运行X应用程序时的消息:

xterm: Xt error: Can't open display:
xterm: DISPLAY is not set

除了在运行Mavericks之外,我在另一台计算机上具有相同的设置,并且工作正常,我是否需要担心优胜美地的某些特定问题?

ssh xorg xserver
9个回答
51
投票

在macOS Sierra上,我现在必须执行ssh -Y而不是ssh -X才能从Linux机器上获得显示才能在Mac上运行。


43
投票

请注意,某些不完整的答案可能会导致安全漏洞。

  1. 使用ssh -Y意味着这里有虚假的xauth信息,这是不好的!
  2. ssh -X应该起作用,因为XQuartz一旦启用就使用xauth。唯一的问题是ssh在/usr/X11R6/bin中寻找xauth,在具有XQuartz的macOS上,它位于/ opt / X11 / bin

安全解决方案:

  1. 在首选项(Cmd-)的安全性选项卡中启用第一个选项,以启用经过身份验证的连接。

  2. 编辑~/.ssh/config,将XAuthLocation /opt/X11/bin/xauth添加到主机配置。

  3. ssh -X your_server以安全的方式工作。

  4. 确保xauth已安装在目标主机上。


34
投票

升级到优胜美地后,我收到了与您相同的警告。在ForwardX11Trusted yes文件中添加~/.ssh/config后,警告消失了。

~/.ssh/config文件中是否有以下几行用于启用Trusted X11转发?

Host APPROPRIATE_HOSTNAME
    ForwardX11Trusted yes
    ForwardX11 yes
    OTHER_OPTIONS

5
投票

我已经安装了最新的XQuartz 2.7.11,但是我认为从那以后我也已经对该操作系统进行了几次更新。我重新安装了XQuartz 2.7.11,现在它可以正常工作。


2
投票

Gilles Gouaillardet为我解决了这个问题。编辑〜/ .ssh / config以包含

Host *
    XAuthLocation /opt/X11/bin/xauth

和ssh -X主机名现在可以使用(XQuartz 2.7.11,macOS 10.4 Mojave)


1
投票

[ForwardX11Trusted是必需的,即使您认为X服务器没有SECURITY扩展名时不信任的连接也是如此(Apple服务器具有大量占用100行的视觉效果,因此我建议使用“ xdpyinfo | grep SECURITY”进行检查;如果没有返回任何输出,则表示您没有输出)。可能还有其他原因和例外,但这对我有用。


0
投票

我刚刚下载了最新的X11版本,并且可以再次使用


0
投票

我刚刚使用Mac OS X 10.6.8到Linux Debian 9遇到了这个问题。提供的解决方案均无效。

根本原因是:目标Linux主机上的回送接口为“ DOWN”。

我必须在目标主机上键入以下内容才能解决此问题

ip link set lo up


-4
投票

登录集群时,请勿使用-X或-Y选项。

示例:

ssh -Y remotelogin: gives me X11 related warning. 

ssh remotelogin:无警告,可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.