Соединение X11 отклонено из-за неправильной аутентификации

Я получаю сообщение об ошибке при доступе к Firefox с помощью X11Forwarding.

[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

person Nataraj    schedule 30.06.2014    source источник
comment
Ответ от Михаила правильный. Это лучший учебник, который я нашел: blog.linuxjunkie.com/blog/2012/09/26/   -  person Ho1    schedule 03.08.2015


Ответы (3)


export XAUTHORITY=$HOME/.Xauthority

Это исправление сработало для меня

person Vinitha    schedule 19.06.2019
comment
Я не мог включить переадресацию X на свой Raspberry Pi 4 под управлением Ubuntu 20.04, и это исправило проблему. - person Brian Tracy; 08.05.2020
comment
спасибо, это работает для моего случая. (Включение ssh X в RHEL 8 на AWS EC2) - person Younes LAB; 08.03.2021
comment
Не могли бы вы объяснить, как это решает проблему? - person Eyad Mohammed Osama; 13.07.2021

Существует сложный, если не невозможный, сценарий (поисковой системой), который может вызвать это сообщение об ошибке.

Предварительное примечание. Тема этого ответа не заключается в том, чтобы обсуждать, представляет ли риск для безопасности или вообще рекомендуется ли использовать графический рабочий стол в качестве root на удаленном веб-сервере без дисплея.

Сценарий:

  • Удаленный сервер Linux, подключенный к Интернету, назначил доменное имя example.com своему общедоступному IP4-адресу 192.0.2.1.
  • Файл /etc/hostname на S содержит одну строку example.
  • Файл /etc/hosts на S содержит строку 127.0.0.1 localhost example.com example.
  • (Удаленный) ssh-доступ к S по (sshd-) конфигурации (на S) запрещен для root строкой DenyUsers root в /etc/ssh/sshd_config, но разрешен для фиктивного пользователя user1. С клиентского компьютера C устанавливается ssh-подключение с использованием параметра ssh -X или -Y к S как пользователю user1.

Затем в удаленном терминале на S, принадлежащем пользователю user1, если какая-либо команда, связанная с X11, пытается быть выполнена от имени пользователя root, может ли это быть

su, затем пытаюсь запустить среду рабочего стола X11

или, как в конкретном случае, выполнение сценария, содержащего

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

сообщение об ошибке

Соединение X11 отклонено из-за неправильной аутентификации.

выводится, и запуск любой программы, связанной с X11, завершается ошибкой. Переменная DISPLAY среды root содержит

пример.com:10.0

потом.

Одним из решений проблемы в этом особом случае является изменение строки

127.0.0.1 localhost example.com example

в /etc/hosts для

127.0.0.1 localhost
person Michael Besteck    schedule 26.06.2015
comment
Чувак, твой ответ спас меня! Проблема заключалась в моем хост-файле, и теперь она исправлена! Не могли бы вы указать это в верхней части своего ответа, чтобы другие могли найти решение? - person Ho1; 03.08.2015
comment
@ Ho1: Как я испытал на себе, когда искал в Интернете причину этого сообщения об ошибке, просто читать заголовки не очень полезно. Так как многие параметры могут иметь значение, всегда требуется тщательное чтение. Я не считаю отказ от помощи, но необходимо сначала детально изучить случай, чтобы можно было решить для себя, стоит ли пробовать то, что было решением для других. - person Michael Besteck; 15.08.2015
comment
Вы спасаете жизнь, просто перейдя к решению, эта строка просто волшебна! - person Waheed; 30.12.2015

Решение: запустите приложение с тем же пользователем, с которым вы подключаетесь по SSH.

Я также сталкивался с такими ошибками при использовании X11.

Источником моей проблемы было то, что я использовал SSH со своим именем пользователя (которое не было root).

Затем, после входа в систему, я устал работать с X11, выполняя «su» или выполняя «sudo», проблема в том, что сеанс SSH настроен с вашим собственным именем пользователя, например: Raj, но затем вы переключаетесь на пользователя root, который не является частью сеанса X11.

Итак, что вам нужно сделать, это просто попытаться запустить приложение (в вашем случае firefox) с тем же пользователем, с которым вы начали сеанс X11.

Надеюсь это поможет.

Талель.

person TS1    schedule 07.11.2014