Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

X11 connection rejected because of wrong authentication

I am getting a error while accessing the firefox using X11Forwarding.

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

setup the following values: /etc/ssh/sshd_config

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

** Installed the package**

#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
like image 630
Nataraj Avatar asked Jun 30 '14 14:06

Nataraj


People also ask

What is wrong authentication?

A bad authentication credential indicates that the client (in most instances, the web browser) has requested a restricted resource (such as a web page) from the server but has failed to provide sufficient authentication credentials, as mentioned in the introductory paragraphs.

What is X11 connection?

Overview. The X Window System (also known as X11, or just X) is a software package and network protocol that lets you interact locally, using your personal computer's display, mouse, and keyboard, with the graphical user interface (GUI) of an application running on a remote networked computer.


2 Answers

export XAUTHORITY=$HOME/.Xauthority

This fix worked for me

like image 121
Vinitha Avatar answered Sep 19 '22 18:09

Vinitha


There is a hard, if not even impossible, to find (by search engine) scenario that may may cause that error message.

Preliminary note: The topic of this answer is not to discuss if it is a safety risc or recommondable at all to use a graphical desktop as root on an remote, display-less, webserver.

Scenario:

  • A remote internet connected Linux server S has assigned the domain name example.com to it's public IP4-address 192.0.2.1.
  • The /etc/hostname file on S contains the single line example.
  • The /etc/hosts file on S contains the line 127.0.0.1 localhost example.com example.
  • The (remote) ssh access to S is by (sshd-) configuration (on S) forbidden for root by the line DenyUsers root in /etc/ssh/sshd_config, but allowed for a dummy user user1. From a client computer C a ssh connection, using the ssh parameter -X or -Y, is established to S as user user1.

Then, in a remote terminal on S owned by user1, if any X11 related command is tried to be executed as root, may it be by

su, then trying to start the X11 desktop environment

or, as in the concrete case executing a script containing

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

the error message

X11 connection rejected because of wrong authentication.

is output and the start of any X11 related program fails. The DISPLAY variable of root's environment contains

example.com:10.0

then.

One solution to the problem is, in this special case, to modify the line

127.0.0.1 localhost example.com example

in /etc/hosts to

127.0.0.1 localhost
like image 40
Michael Besteck Avatar answered Sep 17 '22 18:09

Michael Besteck