Table des matières
Utiliser une session graphique distante avec VNC
Il arrive souvent qu'on lance une session graphique sur une machine, puis que l'on veuille suivre ensuite a distance l’évolution d'un programme, ou lancer de nouvelles applications graphiques depuis cette machine, un peu comme un screen/tmux mais pour une session graphique.
L’intérêt est donc de pouvoir lancer le serveur VNC après la dite session graphique.
Prérequis
- disposer d'une connexion SSH supportant les tunnels avec la machine en question
- coté client : le client SSH : au besoin même s'il devrait déjà être installé :
# apt-get install openssh-client
- sur la machine cible, installable via SSH :
# apt-get install x11vnc
Connexion SSH et création du tunnel
Sur votre machine locale :
localuser@machinelocale:~$ ssh -L 5555:localhost:5900 $MACHINE_DISTANTE
en remplaçant $MACHINE_DISTANTE par l'IP/nom de la machine souhaitée.
Lancement de VNC sur la machine cible
L'idée est de lancer x11vnc pour utiliser le display 0 deja utilisé par votre session graphique sur la machine distante :
distantuser@machinedistante:~$ x11vnc -display :0
Si toutefois vous n'étiez pas connecté graphiquement sur la machine cible, il suffit de lancer :
distantuser@machinedistante:~$ sudo x11vnc -display :0 -auth ~/.Xauthority
Récupération de la session
localuser@machinelocale:~$ vncviewer localhost:5555
Il faut bien sur adapter le port si vous n'aviez pas pris le port 5555 pour la création du tunnel