Exporter un display ou forwarder une connexion X11

From Deimos.fr / Bloc Notes Informatique
Jump to: navigation, search

1 Introduction

Que de noms compliqués pour pas grand chose (même si très pratique).

  • Exporter un display permet avec un utilisateur de transférer les GUI vers un autre utilisateur
  • Forwarder une connexion X11 permet de transférer les GUI d'un utilisateur à un autre

Bref, vous l'aurez compris, c'est là même chose hein ! Pas exactement en fait.

2 Exporter le display

Je suis connecté avec l'utilisateur deimos et je lance un shell avec l'utilisateur hostin. Je veux récupérer le GUI de hostin. J'autorise donc mon user deimos à avoir des connections depuis n'importe quel user :

$ xhost +
access control disabled, clients can connect from any host

Maintenant je veux savoir quel est mon display actuel :

$ echo $DISPLAY
:0.0

Ensuite je me connecte avec hostin et j'exporte mon display vers celui de deimos :

$ su - hostin
$ export DISPLAY=:0.0

Maintenant, je n'ai plus qu'a tester avec l'utilisateur hostin :

$ xclock

Tadaaaa l'horloge s'affiche dans ma session deimos et c'est hostin qui la lance :-)

On peut aussi le faire avec une machine distante en indiquant l'hôte (voici les lignes à remplacer pour l'hôte deimos.fr) :

deimos : $ xhost + deimos.fr
hostin :$ export DISPLAY:deimos.fr:0.0

3 Forwarder le X

On a forwarder par SSH notre petite fenêtre X. Pour celà, sur le serveur SSH (/etc/ssh/sshd_config) :

X11Forwarding yes

Il faut que cette ligne soit à yes.

Ensuite, pour que le client puisse récupérer la fenêtre, il faut se connecter avec l'argument -X :

$ ssh -X deimos@deimos.fr
$ xclock

Encore une fois tadaaaaaaaa :-)

4 References

Créez un terminal X