Installer et configurer un serveur tigervnc sous Gentoo ou Calculate Linux
Table des matières
Pour toutes les informations sur le protocole VNC se référer à l'article Le service VNC
Dans un premier temps, on consulte les FLAGS de tigervnc :
Je vais activer les FLAG gnutls et server et désactiver java (-java)
On installe
On va éditer le fichier /etc/conf.d/tigervnc. C'est dans ce fichier qu'on a la liste des sessions VNC associées aux utilisateurs VNC :
Ainsi, dans cet exemple, le vnc n°1 appartiendra à l'utilisateur vnc1.
On peut ajouter autant d'utilisateurs qu'on le souhaite.
Dans mon exemple, j'ai créé deux VNC avec deux utilisateurs vnc1 et vnc2.
Il va falloir donc créer ces utilisateurs et leur affecter un mot de passe VNC (attention, il s'agit d'un mot de passe VNC, pas un mot de passe UNIX).
Faire cela pour tous les utilisateurs VNC...
Il faut ensuite lancer notre serveur VNC afin de le tester :
Exemple avec le VNC n°1 (de l'utilisateur vnc1)
Exemple avec le VNC n°1 (de l'utilisateur vnc1)
Il ne faut pas oublier que chaque VNC utilise un port différent. Ainsi il faut ouvrir ces ports dans le parefeu.
VNC utilise TCP et les ports utilisés sont 5900 + n° VNC.
Ainsi :
etc ...
Et bien pour Linux (Mageia, Ubuntu, Fedora ....), installer un client VNC : tigervnc par exemple .
Il est possible d'utiliser la version gratuite de RealVNC.
Lancer tigervnc.
Dans la fenêtre, saisir IP_SERVEUR_VNC:NUM_SESSION_VNC ou IP_SERVEUR_VNC:NUM_PORT_VNC.
Exemple : 10.21.27.250:1 ou 10.21.27.250:5901
Puis saisir ensuite le mot de passe de l'utilisateur du VNC :1 (soit celui que j'ai tapé quand j'ai fait le vncpasswd sur l'utilisateur vnc1 :
On valide par Entrée et on arrive sur notre bureau :
Lancer Real VNC.
Dans la fenêtre, saisir IP_SERVEUR_VNC:NUM_SESSION_VNC ou IP_SERVEUR_VNC:NUM_PORT_VNC.
Exemple : 10.21.27.250:1 ou 10.21.27.250:5901
Puis saisir ensuite le mot de passe de l'utilisateur du VNC :1 (soit celui que j'ai tapé quand j'ai fait le vncpasswd sur l'utilisateur vnc1 :
On valide par Entrée et on arrive sur notre bureau :
Quand LXDE est installé, et que le VNC se lance, c'est un bureau OpenBox qui s'affiche.
Pour d'autres environnements de bureaux, il se peut que rien ne se lance.
Pour retrouver le bureau, éditer le fichier .vnc/xstartup de l'utilisateur.
Ajouter la ligne qui correspond à votre environnement de bureau :
Pour GNOME il faut modifier le script complet :
Qu'est ce que VNC
Pour toutes les informations sur le protocole VNC se référer à l'article Le service VNC
Installation de tigervnc
Dans un premier temps, on consulte les FLAGS de tigervnc :
Code BASH :
equery u tigervnc [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for net-misc/tigervnc-1.3.0: U I - - gnutls : Add support for net-libs/gnutls (TLS 1.0 and SSL 3.0 support) - - java : Add support for Java + + nptl : Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually) + + opengl : Add support for OpenGL (3D graphics) + + pam : Add support for PAM (Pluggable Authentication Modules) - DANGEROUS to arbitrarily flip - - server : Build TigerVNC server + + xorgmodule : Build the Xorg module
Je vais activer les FLAG gnutls et server et désactiver java (-java)
Code BASH :
echo "net-misc/tigervnc gnutls server -java" >> /etc/portage/package.use/custom
On installe
Code BASH :
emerge -av tigervnc
Configuration de tigervnc
On va éditer le fichier /etc/conf.d/tigervnc. C'est dans ce fichier qu'on a la liste des sessions VNC associées aux utilisateurs VNC :
Code BASH :
DISPLAYS="vnc1:1 vnc2:2" DISPLAYSARGS[1]="-geometry 800x600 -nolisten tcp -depth 24" DISPLAYSARGS[1]="-geometry 800x600 -nolisten tcp -depth 24"
Ainsi, dans cet exemple, le vnc n°1 appartiendra à l'utilisateur vnc1.
On peut ajouter autant d'utilisateurs qu'on le souhaite.
Configurer les utilisateurs pour tigervnc
Dans mon exemple, j'ai créé deux VNC avec deux utilisateurs vnc1 et vnc2.
Code BASH :
useradd -m vnc1 useradd -m vnc2
Il va falloir donc créer ces utilisateurs et leur affecter un mot de passe VNC (attention, il s'agit d'un mot de passe VNC, pas un mot de passe UNIX).
Code BASH :
[root@server ~]# su -c 'vncpasswd' vnc1 Password: Verify:
Faire cela pour tous les utilisateurs VNC...
Code BASH :
[root@server ~]# su -c 'vncpasswd' vnc2 Password: Verify:
Lancement du serveur VNC
Il faut ensuite lancer notre serveur VNC afin de le tester :
Code BASH :
/etc/init.d/tigervnc start
Manager le service
Démarrer le service
Code BASH :
/etc/init.d/tigervnc start
Arrêter le service
Code BASH :
/etc/init.d/tigervnc stop
Redémarrer le service
Code BASH :
/etc/init.d/tigervnc restart
Recharger la configuration du service
Code BASH :
/etc/init.d/tigervnc reload
Activer le service au boot
Code BASH :
rc-update add tigervnc default
Désactiver le service au boot
Code BASH :
rc-update del tigervnc default
Couper un serveur VNC
Exemple avec le VNC n°1 (de l'utilisateur vnc1)
Code BASH :
su -c 'vncserver -kill :1' vnc1
Lancer un serveur VNC
Exemple avec le VNC n°1 (de l'utilisateur vnc1)
Code BASH :
su -c 'source /etc/profile && cd ~vnc1 && vncserver :1' vnc1
Ouvrir le parefeu
Il ne faut pas oublier que chaque VNC utilise un port différent. Ainsi il faut ouvrir ces ports dans le parefeu.
VNC utilise TCP et les ports utilisés sont 5900 + n° VNC.
Ainsi :
- VNC :1 => 5901/tcp
- VNC :2 => 5902/tcp
etc ...
Et les clients !!!
Linux
Et bien pour Linux (Mageia, Ubuntu, Fedora ....), installer un client VNC : tigervnc par exemple .
Windows (bouuuh)
Il est possible d'utiliser la version gratuite de RealVNC.
Se connecter
Linux
Lancer tigervnc.
Dans la fenêtre, saisir IP_SERVEUR_VNC:NUM_SESSION_VNC ou IP_SERVEUR_VNC:NUM_PORT_VNC.
Exemple : 10.21.27.250:1 ou 10.21.27.250:5901
Puis saisir ensuite le mot de passe de l'utilisateur du VNC :1 (soit celui que j'ai tapé quand j'ai fait le vncpasswd sur l'utilisateur vnc1 :
On valide par Entrée et on arrive sur notre bureau :
Windows (bouuuh)
Lancer Real VNC.
Dans la fenêtre, saisir IP_SERVEUR_VNC:NUM_SESSION_VNC ou IP_SERVEUR_VNC:NUM_PORT_VNC.
Exemple : 10.21.27.250:1 ou 10.21.27.250:5901
Puis saisir ensuite le mot de passe de l'utilisateur du VNC :1 (soit celui que j'ai tapé quand j'ai fait le vncpasswd sur l'utilisateur vnc1 :
On valide par Entrée et on arrive sur notre bureau :
Lancer le bureau
Quand LXDE est installé, et que le VNC se lance, c'est un bureau OpenBox qui s'affiche.
Pour d'autres environnements de bureaux, il se peut que rien ne se lance.
Pour retrouver le bureau, éditer le fichier .vnc/xstartup de l'utilisateur.
Ajouter la ligne qui correspond à votre environnement de bureau :
Code BASH :
exec startkde exec startxfce4 exec xfce4-panel exec startfluxbox exec startlxde exec mate-session
Pour GNOME il faut modifier le script complet :
Code BASH :
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid blue gnome-session &