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