Le journal Geek
VNC (Virtual Network Computing) nous permet d’accéder à l’interface graphique d’un système distant via un réseau sécurisé. Le client VNC installé sur un système local capture les événements d’entrée d’une souris et d’un clavier et les transfère au serveur VNC distant. Ces événements sont exécutés sur un système distant et la sortie est renvoyée au client. VNC est un outil de partage de bureau et est généralement utilisé pour accéder au système de bureau pour l’administration à distance et le support technique.
Pour exécuter VNC, vous avez besoin de deux composants :
1. Serveur VNC
2. VNC viewer
Installation des paquets requis
1. Vérifiez si le serveur est connecté au Repo Yum Public/Privé pour éviter le problème de dépendance.
# yum repolist
2. Pour que VNC soit utile, il faut également que le système X Windows soit installé avec un gestionnaire de fenêtres.
# yum install xorg-x11-apps
3. Si un environnement de bureau graphique n’est pas déjà installé, installez-le à l’aide des commandes ci-dessous.
Recommandé
# yum groupinstall Desktop "Desktop Platform" "X Window System" "Internet Browser" "Graphical Administration Tools" Fonts
Minimal
# yum groupinstall Desktop "X Window System" Fonts
3. Installer les RPM du serveur vnc:
# yum install vnc*
Ceci installe la dernière version des RPM : tigervnc-server-module, tigervnc et tigervnc-server.
Configuration du serveur VNC
1. Modifiez le fichier « /etc/sysconfig/vncservers » pour configurer les affichages requis. Les entrées suivantes activent VNC pour les numéros d’affichage « :2 » et « :3 ». Notez que plusieurs paires « display:user » sont définies sur une seule ligne, mais les arguments de chaque affichage sont définis séparément.
# vim /etc/sysconfig/vncserversVNCSERVERS="2:root 3:user"VNCSERVERARGS="-geometry 1280x1024 -nolisten tcp -localhost"VNCSERVERARGS="-geometry 1280x1024"
La première ligne définit l’utilisateur autorisé à se connecter au système. La deuxième ligne répertorie les arguments transmis au serveur VNC au démarrage du service. Voici quelques-uns des arguments les plus couramment utilisés dans VNC server.
Argument | Description |
---|---|
– geometry | Définit la taille de la visionneuse lorsque le clinet se connecte |
– nolisten tcp | Définit la connexion TCP au serveur VNC |
– nohttpd | Empêche les clients Web VNC de se connecter |
– localhost | Force l’utilisation d’une passerelle sécurisée (redirection de port) |
2. Définissez le mot de passe VNC pour tous les utilisateurs définis dans le fichier « /etc/sysconfig/vncservers ». Assurez-vous de définir un mot de passe pour tous les utilisateurs définis dans le fichier de configuration /etc/sysconfig/vncservers.
# su - user ### it is important to switch the user for which password needs to be set$ vncpasswdPassword:Verify:
# vncpasswd rootPassword:Verify:
3. Activez le service « vncserver » pour le démarrage automatique et démarrez le service :
# chkconfig vncserver on
# service vncserver startStarting VNC server: 2:root New 'geek.mylabserver.com:2 (root)' desktop is geek.mylabserver.com:2Creating default startup script /root/.vnc/xstartupStarting applications specified in /root/.vnc/xstartupLog file is /root/.vnc/geek.mylabserver.com:2.log3:user New 'geek.mylabserver.com:3 (user)' desktop is geek.mylabserver.com:3Creating default startup script /home/user/.vnc/xstartupStarting applications specified in /home/user/.vnc/xstartupLog file is /home/user/.vnc/geek.mylabserver.com:3.log
4. Exécutez la commande « vncserver » pour démarrer ou arrêter le vncserver. Par défaut, l’utilisateur qui déclenche la commande » vncserver » démarre la session de cet utilisateur.
# vncserver New 'geek.mylabserver.com:1 (root)' desktop is geek.mylabserver.com:1Starting applications specified in /root/.vnc/xstartupLog file is /root/.vnc/geek.mylabserver.com:1.log
Comment lister et tuer les sessions du serveur VNC
Pour lister toutes les sessions du serveur tigerVNC en cours d’exécution, utilisez la commande « liste du serveur VNC ». Par exemple :
# vncserver -listTigerVNC server sessions:X DISPLAY # PROCESS ID:4 1864:5 1895:6 1923:1 1949:2 1767
Pour tuer l’une des sessions de serveur VNC en cours d’exécution, utilisez la commande ci-dessous.
# vncserver -kill :4Killing Xvnc process ID 1864
Ici,
: 4 est le numéro de session X-display.
Dépannage de la configuration du serveur VNC
Si vous ne basculez pas vers l’utilisateur pour lequel vous souhaitez définir le mot de passe du serveur VNC, vous risquez d’obtenir une erreur comme indiqué ci-dessous lors du démarrage du service vncserver.
# service vncserver start....3:user You will require a password to access your desktops.getpassword error: Inappropriate ioctl for device
Connexion du serveur VNC à partir du client VNC
Vous pouvez installer n’importe quel logiciel VNC viewer sur votre machine cliente pour accéder au serveur VNC. J’utilise le logiciel RealVNC sur mon MAC pour accéder au serveur VNC. Vous pouvez utiliser l’un des logiciels VNC viewer ci-dessous en fonction du système d’exploitation que vous utilisez.
1. TigerVNC : http://tigervnc.org
2. TightVNC: https://www.tightvnc.com/download.php
3. RealVNC: https://www.realvnc.com/en/connect/download/viewer
Pour connecter le serveur VNC à l’utilisateur root, utilisez l’affichage (:1). C’est le même affichage que pour l’utilisateur root lorsque vous avez démarré le serveur VNC avec la commande « vncserver ».
Vous pouvez recevoir un avertissement comme indiqué ci-dessous, qui vous indique que votre connexion avec le serveur VNC n’est pas sécurisée.
Passez à l’écran suivant et mettez le mot de passe que vous avez défini avec la commande « vncpasswd » pour l’utilisateur root.
Vous voilà !!! Vous êtes maintenant connecté au serveur VNC.