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

时间:2014-12-09 17:09:51

标签: ssh xorg xserver

嘿,我遇到了让ssh X转发工作的问题。设置是我{i} m ssh进入我的ubuntu VM OSX Yosemite主机。

我已经在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并且它工作正常,是否有一些特定的Yosemite特定我需要担心?

10 个答案:

答案 0 :(得分:50)

在macOS Sierra上,我现在必须执行ssh -Y而不是ssh -X来从Linux机器上显示以在我的Mac上运行。

答案 1 :(得分:37)

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

  1. 使用ssh -Y意味着这里有假的xauth信息,这很糟糕!
  2. ssh -X应该有效,因为XQuartz一旦启用,就会使用xauth。唯一的问题是ssh正在寻找/ usr / X11R6 / bin中的xauth和使用XQuartz的macos,它位于/ opt / X11 / bin
  3. 安全解决:

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

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

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

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

答案 2 :(得分:31)

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

您的~/.ssh/config文件中是否包含以下行以启用Trusted X11转发?

Host APPROPRIATE_HOSTNAME
    ForwardX11Trusted yes
    ForwardX11 yes
    OTHER_OPTIONS

答案 3 :(得分:5)

我已经安装了最新的XQuartz 2.7.11,但我认为自那时起我已经多次更新了操作系统。我重新安装了XQuartz 2.7.11,现在它运行正常。

答案 4 :(得分:1)

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

title

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

答案 5 :(得分:0)

当您的X服务器没有安全扩展时,即使您认为不受信任的连接也需要ForwardX11Trusted(Apple服务器有大量的视频占用超过100行,所以我建议" xdpyinfo | grep SECURITY"检查;如果没有返回输出,你就没有了。)可能还有其他原因和例外,但这对我有用。

答案 6 :(得分:0)

我刚刚下载了最新的X11版本并再次运行

答案 7 :(得分:0)

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

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

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

ip link set lo up

答案 8 :(得分:0)

与上面Xvalidated用户回答的相同。但是我的.ssh目录中没有ssh_config文件。 1.如果不存在,将./etc/ssh_config复制到〜/ .ssh / #file 2.编辑 主机主机名 转发X11信任是 ForwardX11是

  1. 如前所述,我想再添加一件可以重新安装支持X的软件的东西。

答案 9 :(得分:-4)

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

示例:

ssh -Y remotelogin: gives me X11 related warning. 
ssh remotelogin:没有警告,工作正常。