我在使用时收到以下错误消息ssh -v -Y
。服务器操作系统是mojave。有人知道出了什么问题吗?
debug1: No xauth program.
Warning: No xauth data; using fake authentication data for X11 forwarding.
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Remote: No xauth program; cannot forward X11.
X11 forwarding request failed on channel 0
答案1
您的客户端和服务器都抱怨找不到 xauth 程序。 “debug1:没有 xauth 程序”消息来自您的客户端,表示它无法xauth
在本地找到 的副本。 “远程:没有 xauth 程序;无法转发 X11”消息来自服务器,表示它也找不到 xauth。客户端和服务器的默认位置都是/usr/X11R6/bin/xauth
,但您的供应商可以更改它。
对于客户端,您可以在您的.ssh/配置:
XAuthLocation /some/path/to/xauth
对于服务器,您必须在远程服务器的位置中设置位置sshd_配置:
XAuthLocation /opt/X11/bin/xauth
修改配置后,您应该运行sshd -t
以验证配置,然后重新启动sshd
以使其重新读取文件。
答案2
我必须使用 dnf 安装 xauth:
dnf install xauth
然后一切开始按预期进行。对于较旧的 Redhat 系统,请在上面的命令中使用“yum”而不是“dnf”。