【问题标题】:X11 connection rejected because of wrong authenticationX11 连接因身份验证错误而被拒绝
【发布时间】:2014-08-20 23:36:30
【问题描述】:

我在使用 X11Forwarding 访问 firefox 时遇到错误。

[root@station2 ~]# firefox
KiTTY X11 proxy: wrong authorisation protocol attemptedKiTTY X11 proxy: wrong authorisation protocol attemptedError: cannot open display: localhost:10.0

设置以下值:/etc/ssh/sshd_config

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

** 安装包**

#yum install xorg-x11-xauth
#yum -y install xauth

[root@station2 .ssh]# echo $DISPLAY
localhost:10.0

#mkxauth -c
adding key for station2.example.com to /root/.Xauthority ... done

【问题讨论】:

标签: x11 x11-forwarding


【解决方案1】:
export XAUTHORITY=$HOME/.Xauthority

这个修复对我有用

【讨论】:

  • 我无法在运行 Ubuntu 20.04 的 Raspberry Pi 4 中启用 X 转发,这解决了它。
  • 谢谢,这适用于我的情况。 (在 AWS EC2 上的 RHEL 8 中启用 ssh X)
  • 您能否解释一下这是如何解决问题的?
  • 这对我有用。很高兴知道为什么。由于某种原因,XAUTHORITY 已设置为 /tmp/kde-/xauth-.
  • 这在树莓派 4 上的 ubuntu 服务器上对我有用。谢谢!
【解决方案2】:

很难(甚至不可能)找到(通过搜索引擎)可能导致该错误消息的场景。

初步说明:这个答案的主题不是讨论是否安全 RISC 或完全推荐在远程、无显示的网络服务器上以 root 身份使用图形桌面。

场景:

  • 远程 Internet 连接的 Linux 服务器 S 已分配域 将 example.com 命名为它的公共 IP4 地址 192.0.2.1。
  • S 上的 /etc/hostname 文件包含单行 example
  • /etc/hosts S 上的文件包含 127.0.0.1 localhost example.com example 行。
  • (远程)ssh 访问 S 被(sshd-)配置(在 S 上)禁止 通过 /etc/ssh/sshd_config 中的 DenyUsers root 行获取 root 权限,但是 允许虚拟用户user1。从客户端计算机 C a ssh 使用 ssh 参数 -X-Y 建立连接到 S 作为用户user1

然后,在 user1 拥有的 S 上的远程终端中, 如果尝试以 root 身份执行任何 X11 相关命令,可能是由

su,然后尝试启动X11桌面环境

或者,在具体情况下执行包含

的脚本
#!/bin/bash
su --preserve-environment -c "xfce4-session &" root

错误信息

X11 连接因身份验证错误而被拒绝。

是输出并且任何 X11 相关程序的启动都失败。 root 环境的 DISPLAY 变量包含

example.com:10.0

那么。

问题的一个解决方案是,在这种特殊情况下,修改行

127.0.0.1 localhost example.com example

在 /etc/hosts 中

127.0.0.1 localhost

【讨论】:

  • 伙计,你的回答救了我!问题是我的主机文件,现在它已修复!您能否在答案的顶部提及这一点,以便其他人可以找到解决方案?
  • @Ho1:正如我在互联网上搜索该错误消息的“我的”原因时所经历的那样,仅仅阅读标题并没有真正的帮助。由于许多参数可能会生效,因此始终需要彻底阅读。拒绝帮助不是我的意见,但有必要先详细研究这个案例,以便自己决定是否尝试其他人的解决方案。
  • 你是一个救生员,只要找到下面的解决方案,这一行就很神奇!
【解决方案3】:

解决方案:使用您正在 SSH 的同一用户运行应用程序。

我在使用 X11 时也遇到过这样的错误。

问题的根源是我使用自己的用户名(不是 root)使用 SSH。

然后,一旦登录,我就厌倦了在执行“su”或执行“sudo”时使用 X11 运行东西, 问题在于 SSH 会话是使用您自己的用户名配置的 - 例如:Raj,但随后您切换到不属于 X11 会话的用户 root。

因此,您应该做的只是尝试使用您启动 X11 会话的同一用户运行应用程序(在您的情况下为 firefox)。

希望这会有所帮助。

故事。

【讨论】:

    猜你喜欢
    • 2014-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-28
    • 1970-01-01
    • 1970-01-01
    • 2016-08-19
    相关资源
    最近更新 更多