当我ssh -X
在 Mac(运行 OS X 10.6.7)上连接我的 Ubuntu(11.04)时,出现以下警告:
警告:不受信任的 X11 转发设置失败:未生成 xauth 密钥数据警告:没有 xauth 数据;使用虚假的身份验证数据进行 X11 转发。
我能做些什么来消除这个警告吗?如果不行,我可以安全地忽略它吗?
X11 转发似乎工作正常,但我确实看到了以下消息:
Xlib:显示“localhost:10.0”时缺少扩展“RANDR”。
这与警告有关吗?(我猜没有。如果没有,我会就此提出一个新问题。)
答案1
答案2
谨防(厌倦阅读导致安全漏洞的不完整答案)
使用 ssh -Y 意味着这里有虚假的 xauth 信息,这很糟糕!
ssh -X 应该可以工作,因为一旦启用 XQuartz,它就会使用 xauth。唯一的问题是 ssh 在 /usr/X11R6/bin 中寻找 xauth,而在装有 XQuartz 的 macos 上,它在 /opt/X11/bin 中。
安全解决:
启用第一个选项安全首选项选项卡(Cmd-,),用于启用经过身份验证的连接
添加以下内容
$HOME/.ssh/config
XAuthLocation /opt/X11/bin/xauth
ssh -X you_server
以安全的方式工作
答案3
如果您在 2015 年来到这里:即使其他一切都设置正确,在使用ssh -X
和运行 XQuartz 版本 <= 2.7.7 时,Mac OS X 10.10 Yosemite 上也可能发生这种情况。根本原因是 X11 显示套接字写入 xauth 搜索路径之外:问题#2068在 XQuartz 追踪器中。
编辑:修复后的 XQuartz 已在新主页上发布,xquartz 网站,并从那里安装最新版本(当前为 2.7.9)将解决该问题。
答案4
如果您在使用时也收到相同的消息-Y
,xauth
则可能是服务器上缺少该程序。在类似 Debian 的系统上,您需要该xauth
软件包。在类似 RedHat 的系统上,您需要该xorg-x11-xauth
软件包。