dmesg.fr:~#

display message

TightVNC server : pilotez à distance plusieurs sessions graphiques multi utilisateurs à partir du même PC

tightvnc logoLes serveurs VNC classiques autorisent le pilotage à distance d'une session graphique déjà démarrée. De plus, si quelqu'un se trouve devant l'écran du PC à ce moment-là, le pilotage du PC est visible.

TightVNC server permet de démarrer et de piloter plusieurs sessions graphiques à distance à partir de la même machine Linux, avec plusieurs comptes utilisateurs simultanément, un peu comme un serveur LTSP. Aucune interface graphique n'a besoin d'être démarrée sur le PC serveur TightVNC.


Installation

Sur le PC serveur VNC :

Installez TightVNC :

apt-get install tightvncserver


Sur le PC client, installez un client VNC :

Linux : apt-get install remmina

Windows : téléchargez TightVNC, mais n'installez que le client VNC


Utilisation

Sur le PC Linux serveur VNC :

Avec votre compte utilisateur, démarrez le serveur VNC :

tightvncserver


Au premier démarrage, vous devez définir un mot de passe VNC :

You will require a password to access your desktops.

Password:


Saisissez un mot de passe.


A la question :

Would you like to enter a view-only password (y/n)?

Répondez "n".

Vous obtenez :

New 'X' desktop is nom_de_votre_pc:1

Creating default startup script /home/votre_user/.vnc/xstartup
Starting applications specified in /home/votre_user/.vnc/xstartup
Log file is /home/votre_user/.vnc/nom_de_votre_pc:1.log


Un répertoire .vnc est créé à la racine de votre compte utilisateur, qui contient :

- un fichier .log
- un fichier .pid qui contient le pid de la session Xtightvnc qui vient d'être démarrée
- un fichier xstartup, qui fonctionne comme un fichier .xinitrc


Un serveur TightVNC a été démarré avec les paramètres par défaut. Pour voir les paramètres utilisés, tapez :

ps -ef | grep Xtightvnc

Exemple :

Xtightvnc :1 -desktop X -auth /home/td/.Xauthority -geometry 1024x768 -depth 24 -rfbwait 120000 -rfbauth /home/td/.vnc/passwd -rfbport 5901 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb



Sur le PC client VNC :

Sur un PC client du réseau local, démarrez vncviewer (Windows) ou Remmina (Linux) comme suit :

tightvnc connection

Saisissez votre mot de passe VNC.

Vous obtenez une session graphique distante, invisible sur l'écran du poste serveur VNC, en résolution 1024x768 pixels.



Démarrage et pilotage à distance d'une deuxième session graphique avec le même compte utilisateur

Sur le PC Linux serveur VNC :

Toujours avec votre compte utilisateur, tapez :

tightvncserver -geometry 1440x900


Une deuxième session graphique a été démarrée, en 1440x900 pixels :

New 'X' desktop is nom_de_votre_pc:2

Starting applications specified in /home/votre_user/.vnc/xstartup
Log file is /home/votre_user/.vnc/nom_de_votre_pc:2.log


Sur le PC client VNC :

Sur le PC client VNC, démarrez vncviewer ou Remmina comme suit :

tightvnc connection

Saisissez votre mot de passe VNC.

Vous pilotez maintenant 2 sessions graphiques sous le même compte utilisateur.



Démarrage et pilotage à distance d'une troisième session graphique avec un autre compte utilisateur

Sur le PC Linux serveur VNC :

 

Avec le compte testuser (vous pouvez bien sûr en créer et en utiliser un autre), tapez :

tightvncserver


Vous obtenez :

New 'X' desktop is nom_de_votre_pc:3

Creating default startup script /home/testuser/.vnc/xstartup
Starting applications specified in /home/testuser/.vnc/xstartup
Log file is /home/testuser/.vnc/nom_de_votre_pc:3.log


Sur le PC client VNC :

Sur le PC client VNC, démarrez vncviewer ou Remmina comme suit :

tightvnc connection

Saisissez le mot de passe VNC du compte utilisateur testuser.


Vous pilotez maintenant 3 sessions graphiques :

- port 5901 : votre compte utilisateur, résolution session graphique 1024x768
- port 5902 : votre compte utilisateur, résolution session graphique 1440x900
- port 5903 : le compte testuser, résolution session graphique 1024x768


Vérification :

Tapez :

ps -ef | grep Xtightvnc

Résultat :

votre_user        2526     1  0 11:33 pts/2    00:00:01 Xtightvnc :1 -desktop X -auth /home/votre_user/.Xauthority -geometry 1024x768 -depth 24 -rfbwait 120000 -rfbauth /home/votre_user/.vnc/passwd -rfbport 5901 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb
votre_user        2981     1  0 11:42 pts/2    00:00:01 Xtightvnc :2 -desktop X -auth /home/votre_user/.Xauthority -geometry 1440x900 -depth 24 -rfbwait 120000 -rfbauth /home/votre_user/.vnc/passwd -rfbport 5902 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb
testuser 3315     1  0 11:50 pts/2    00:00:01 Xtightvnc :3 -desktop X -auth /home/td/.Xauthority -geometry 1024x768 -depth 24 -rfbwait 120000 -rfbauth /home/testuser/.vnc/passwd -rfbport 5903 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb



Terminer une session VNC server

Si vous souhaitez terminer une session serveur VNC, repérez le numéro de la session en question avec la commande "ps" (voir ci-dessus), puis tapez :

vncserver -kill :1

(exemple pour la session 1)

Attention : chaque utilisateur doit arrêter ses propres sessions. Si testuser lance une session 3, le kill de celle-ci doit être effectué avec testuser.



Démarrage et pilotage à distance de sessions graphiques multiples via Internet

Il est bien sûr possible de router les sessions graphiques par Internet via SSH.
Attribuez une adresse IP fixe au PC Linux serveur VNC, et redirigez le port 22 sur cette adresse (lisez les articles en rapport pour plus d'informations).



Pilotage d'une session numéro 1

Sur le PC Linux client VNC :

Etablissez une connexion SSH comme suit vers le PC distant :

ssh -L 5901:localhost:5901 -XC -o ServerAliveInterval=30 user_pc_linux_serveur_vnc@IP_pc_linux_serveur_vnc

et démarrez le serveur VNC sur le PC distant :

tightvncserver


Sur le PC client, démarrez Remmina avec la configuration suivante :

tightvnc remmina preferences


Cliquez sur se connecter. Vous devriez pouvoir piloter votre session graphique.


Pilotage d'une session numéro 2

Sur le PC client Linux VNC :

Etablissez une deuxième connexion SSH comme suit vers le PC distant :

ssh -L 5902:localhost:5902 -XC -o ServerAliveInterval=30 user_pc_linux_serveur_vnc@IP_pc_linux_serveur_vnc

et démarrez le serveur VNC sur le PC distant :

tightvncserver


Sur le PC client, démarrez Remmina en remplaçant localhost:1 par localhost:2

Procédez de la même façon pour piloter d'autres sessions graphiques.



Copyright dmesg.fr - All Rights Reserved.