15 votes

SSH X11 ne fonctionne pas

J'ai un ordinateur à la maison et un ordinateur au travail. L'ordinateur à la maison a une adresse IP statique.

Si je fais un ssh de mon ordinateur professionnel vers mon ordinateur personnel, la connexion ssh fonctionne mais les applications X11 ne s'affichent pas.

En mi /etc/ssh/sshd_config à la maison :

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

Au travail, j'ai essayé les commandes suivantes :

xhost + home HOME_IP
ssh -X home
ssh -X HOME_IP
ssh -Y home
ssh -Y HOME_IP

Mi /etc/ssh/ssh_config au travail :

Host *
ForwardX11 yes 
ForwardX11Trusted yes

Mi ~/.ssh/config au travail :

Host home
HostName HOME_IP
User azat
PreferredAuthentications password
ForwardX11 yes

Mi ~/.Xauthority au travail :

-rw------- 1 azat azat 269 Jun  7 11:25 .Xauthority

Mi ~/.Xauthority à la maison :

-rw------- 1 azat azat 246 Jun  7 19:03 .Xauthority

Mais ça ne marche pas

Après avoir établi une connexion ssh à la maison :

$ echo $DISPLAY
localhost:10.0

$ kate
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
kate: cannot connect to X server localhost:10.0

Yo uso iptables à la maison, mais j'ai autorisé le port 22. D'après ce que j'ai lu, c'est tout ce dont j'ai besoin.

UPD. Avec -vvv

...
debug2: callback start
debug2: x11\_get\_proto: /usr/bin/xauth  list :0 2>/dev/null
debug1: Requesting X11 forwarding with authentication spoofing.
debug2: channel 1: request x11-req confirm 1
debug2: client\_session2\_setup: id 1
debug2: fd 3 setting TCP\_NODELAY
debug2: channel 1: request pty-req confirm 1
...

Lorsque vous essayez de lancer kate :

debug1: client\_input\_channel\_open: ctype x11 rchan 2 win 65536 max 16384
debug1: client\_request\_x11: request from 127.0.0.1 55486
debug2: fd 8 setting O\_NONBLOCK
debug3: fd 8 is O\_NONBLOCK
debug1: channel 2: new \[x11\]
debug1: confirm x11
debug2: X11 connection uses different authentication protocol.
X11 connection rejected because of wrong authentication.
debug2: X11 rejected 2 i0/o0
debug2: channel 2: read failed
debug2: channel 2: close\_read
debug2: channel 2: input open -> drain
debug2: channel 2: ibuf empty
debug2: channel 2: send eof
debug2: channel 2: input drain -> closed
debug2: channel 2: write failed
debug2: channel 2: close\_write
debug2: channel 2: output open -> closed
debug2: X11 closed 2 i3/o3
debug2: channel 2: send close
debug2: channel 2: rcvd close
debug2: channel 2: is dead
debug2: channel 2: garbage collecting
debug1: channel 2: free: x11, nchannels 3
debug3: channel 2: status: The following connections are open:
  #1 client-session (t4 r0 i0/0 o0/0 fd 5/6 cc -1)
  #2 x11 (t7 r2 i3/0 o3/0 fd 8/8 cc -1)

# The same as above repeate about 7 times

kate: cannot connect to X server localhost:10.0

UPD2 Veuillez indiquer votre distribution Linux et son numéro de version.
Utilisez-vous un environnement GNOME ou KDE par défaut pour X ou quelque chose d'autre que vous avez personnalisé vous-même ?

azat:~$ kded4 -version
Qt: 4.7.4
KDE Development Platform: 4.6.5 (4.6.5)
KDE Daemon: $Id$

Est-ce que vous invoquez ssh directement sur une ligne de commande depuis une fenêtre de terminal ?
Quel terminal utilisez-vous ? xterm, gnome-terminal, ou ?
Comment avez-vous lancé le terminal dans l'environnement X ? À partir d'un menu ? Une touche de raccourci ? ou ?

From terminal emulator \`yakuake\`
Manualy press \`Ctrl + N\` and write commands

Pouvez-vous exécuter xeyes à partir de la même fenêtre de terminal où le ssh -X échoue ?

\`xeyes\` - is not installed
But \`kate\` or another kde app is running

Est-ce que vous invoquez la commande ssh avec le même utilisateur que celui sous lequel vous êtes connecté à la session X ?
From the same user

UPD3

Je télécharge aussi ssh et en utilisant debug2() écrire pourquoi il est rapporté que cette version est différente
Il voit quelques cookies, et l'un d'entre eux est vide, un autre est MIT-MAGIC-COOKIE-1

1voto

DictatorBob Points 1594

Vos configurations semblent correctes, mais essayez "ssh -X home" comme le suggère Agemen.

Aussi, si tout le reste échoue, essayez ceci :

Après avoir accédé par ssh à votre ordinateur personnel depuis le bureau, tapez sur "home" :

xauth list

Ensuite, sur "travail", tapez

xauth

Ce qui vous donnera une invite "xauth>". De là, tapez "add", puis copiez-collez la sortie de "xauth list", une ligne à la fois (chaque ligne étant précédée de "add"). Par exemple :

someguy@work:~$ xauth
Using authority file /var/run/gdm/auth-for-someguy-4MYV85/database
xauth> add work/unix:0  MIT-MAGIC-COOKIE-1  781cc753194fd55ecdf6c4cf105c40e3
xauth> 

Faites-nous savoir.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X