Utiliser des applications graphiques d'un serveur (Ubuntu/Debian/CentOS) sur un poste Windows via une connexion SSH.
Pré-requis coté server :
$ sudo apt-get install openssh-server
$ sudo apt-get install xvfb xdm xfonts-base
$ sudo apt-get install twm "xfonts-100dpi*" xterm
Activer X11Forwarding dans la configuration du serveur SSH distant:
# cat /etc/ssh/sshd_config | grep X11
X11Forwarding yes
Pré-requis coté client (Windows par exemple) :
Mise en oeuvre :
Ouvrir Xming
Ouvrir Putty
Saisir l'adresse IP du serveur
Dans "Connexion" --> "SSH" --> "X11", cocher "Enable X11 forwarding"
Ciquer sur "OPEN"
Dans la console Putty, saisir "Login" et "Password"
Pour ouvrir une console par exemple saisir :
$ xterm &
La variable $DISPLAY permet de vérifier que le X11Forwarding est bien activé:
# echo $DISPLAY
localhost:10.0
La commande xauth list permet d'afficher le magic cookie indispensable au X11Forwarding :
# xauth list
monServeur/unix:10 MIT-MAGIC-COOKIE-1 17e3926a07573d0c51be57158896cf4c
Conserver le X11Forwarding et le magic cookie après avoir changé d'utilisateur:
Dans le cas où vous auriez besoin de lancer une application avec un utilisateur différent de celui utilisé pour la connexion SSH, il faut obligatoirement transmettre au nouvel utilisateur le magic cookie.
Utiliser la commande précédente pour afficher le magic cookie (xauth list):
Changer d'utilisateur et ajouter le magic cookie à l'aide de la commande xauth add et en paramètre, le résultat de la commande xauth list:
# su - user1
$ xauth add monServeur/unix:10 MIT-MAGIC-COOKIE-1 17e3926a07573d0c51be57158896cf4c