PuTTY X11 代理:尝试了错误的授权协议

McL*_*Lan 17 linux ssh putty ubuntu

我正在尝试连接到 Ubuntu 服务器以在 Qt-creator 上工作。在一切都出错之前,我遵循了教程。我下载了腻子和 Xming,一切正常。

然后,突然间,在使用 Qt-creator 时,我无法保存任何更改。所以,我关闭了 Qt-creator 并重新启动了腻子会话。它询问我用户名和密码(像往常一样)然后在登录服务器后,当我尝试运行 Qt-creator 时(像往常一样)出现以下消息:

PuTTY X11 proxy: wrong authorisation protocol attempted
Can't open display: localhost:10.0
Run Code Online (Sandbox Code Playgroud)

所以,我尝试使用在互联网上找到的两种方法来解决这个问题:

第一个是通过dpyname protoname hexkey使用:

xauth list 
Run Code Online (Sandbox Code Playgroud)

它应该返回然后可以使用以下方法添加的密钥:

xauth add
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用,因为xauth list命令没有返回任何内容。

第二个解决方案是去:

./etc/ssh/sshd_config
Run Code Online (Sandbox Code Playgroud)

打开文件: sshd_config 并将该ForwardX11Trusted行编辑为 read yes,如果不存在这样的行,请将其添加进去。

ForwardX11Trusted yes
Run Code Online (Sandbox Code Playgroud)

然后重新启动 ssh 服务器,它应该可以工作。

然而,它也没有奏效。我无法sshd_config使用xdg-open或打开文件,gedit并且再次出现相同的消息。

那么为什么会发生这种情况,它的解决方案是什么?

小智 13

以 su 身份登录时,在几次“PuTTY X11 代理:尝试错误的授权协议”类型错误后,我意识到这是一个身份验证问题。然后我记得将 .Xauthority 文件从我自己的配置文件 /home 目录复制到 /root。问题解决了!


小智 3

解决了。

我使用上述两者的混合物解决了这个问题。

1.我将以下行添加到“/etc/ssh/sshd_config”

ForwardX11Trusted yes
Run Code Online (Sandbox Code Playgroud)

2.我使用安装了xauth

sudo apt-get install xauth
Run Code Online (Sandbox Code Playgroud)

xauth list重新启动之前对我来说是空的。然而,重新启动后,它就被填充了。我xauth list用腻子测试后做到了。

然后我重新启动ssh,它就工作了。耶!

注意:我实际上所做的是重新启动我的 Raspberry Pi

  • ForwardX11Trusted 不是 sshd_config 的有效选项。它是客户端参数,而不是服务器守护程序参数 (7认同)