Recherche sur dépannage
Archives Articles

Comment utiliser et configurer VNC

Description de VNC

Virtual Network Computing (VNC) est un logiciel open source, ouvert, permettant de se connecter à un ordinateur distant. VNC permet de transmettre des saisies avec le clavier ainsi que les clics de la souris d’un ordinateur à l’autre (maître/esclave), à travers un réseau informatique.

Le logiciel VNC est indépendant de la plateforme sur laquelle il est utilisé, par exemple : un client VNC installé sur n’importe quel système d’exploitation peut se connecter à un serveur VNC, qui serait installé sur un autre système d’exploitation comme MS Windows vers Unix ou linux ou l’inverse.

Il existe des clients et serveurs VNC et ce pour la plupart des systèmes d’exploitation. Plusieurs clients peuvent se connecter en même temps sur un même serveur VNC. Une des utilisations de ce logicel de contrôle à distance est le support technique à distance, aussi appelé télémaintenance, ainsi que la visualisation de fichiers sur votre ordinateur de travail à partir de votre ordinateur personnel.

Le logiciel VNC a été à l’origine développé dans les laboratoires AT&T de Cambridge. Le code source du programme VNC original est open source sous licence GNU/GPL, comme la plupart des variantes de VNC disponibles aujourd’hui sur le marché.

Fonctionnement de VNC

Le logiciel VNC se décompose en deux parties distinctes, la partie VNC client et la partie VNC serveur. Le serveur VNC, est le programme esclave sur la machine qui partage son ordinateur, et le client VNC, aussi appelé aussi le « viewer » est lui le programme maître qui visionne et interagit avec un serveur VNC via un réseau.

Le logiciel VNC est base sur le protocole de communication RFB Remote Frame Buffer, protocole très simple, avec des fonctions du type : « Insérer un rectangle de pixel à la position x,y donnée » etc.

Cela étant dit, le serveur envoie des petits rectangles venant du framebuffer au client. Cette méthode, dans sa forme la plus élémentaire utilise beaucoup de bande passante, heureusement il existe plusieurs méthodes pour réduire cette utilisation de la bande passante du réseau. On peut par exemple, utiliser plusieurs formes d’encodage, et des méthodes pour déterminer quel moyen est le plus efficace pour réduire le flux réseau.

Le protocole RFB permet au client VNC et au serveur VNC d’échanger et de s’accorder sur la méthode d’encodage  utilisée. L’encodage le plus simple, qui est supporté par tous les clients VNC et les serveurs VNC, est le raw encoding , système où les pixels sont transmis de gauche à droite par ligne, et ensuite après le premier écran transféré, uniquement les rectangles ayant changés sont envoyés.

Grâce à ce subterfuge, cette méthode fonctionne très bien, notamment si seulement une petite quantité de l’écran change d’une image à l’autre, comme un pointeur de souris qui se déplace sur le bureau, ou du texte tapé au clavier, mais l’utilisation de bande passante augmente fortement si beaucoup de pixels sont modifiés et donc  transmis , comme c’est la cas d’une vidéo en mode plein écran par exemple.

Par défaut et historiquement, le logiciel VNC utilise les ports de 5900 à 5906, chacun d’eux représentant l’écran correspondant aux ports de 6000 à 6006, pour les écrans de :0 à :6. VNC fournit un client Java  dans de nombreuses versions, comme par exemple RealVNC  qui utilise lui les ports allant de 5800 à 5806, bien sur ces ports par défaut peuvent être changés.

Sur les systèmes Unix ou Linux, l’affichage graphique se fait via un protocole et un serveur nommé : X11, ce dernier permet l’affichage et  l’exécution à  distance d’applications graphiques, aussi le logiciel VNC s’y trouve moins utile même si il existe aussi sur ces plate-formes.

La sécurité avec VNC

Par défaut, le logiciel VNC ne peut pas être considéré comme un protocole de communication sécurisé.

Toutefois le logiciel VNC peut être utilisé à travers un tunnel via une connexion SSH ou VPN, ce qui ajoute une couche de sécurité et avec un meilleur chiffrement. Cependant, ce n’est pas toujours une solution hyper fiable.

Aussi le logiciel UltraVNC permet lui l’utilisation d’un plugin de type open-source de chiffrement qui va permettre de chiffrer la session VNC, en ajoutant l’identification par mot de passe, et le transfert de données. Il permet également une identification basée sur les comptes utilisateurs de type NTLM et Active Directory.

Le logiciel RealVNC offre un chiffrement puissant dans sa version commerciale. Après tout dépend du niveau de sécurité dont vous avez vraiment besoin.

Il y à aussi Workspot, qui propose des patches permettant un chiffrement AES pour le logiciel VNC.

Le logiciel VNC peut bien évidemment poser des problèmes de sécurité, à l’instar de tous les programmes offrant un support réseau, surtout que son but  est d’utiliser une machine à distance. Mais en proposant une identification, voire un chiffrement des communications entre ordinateur, il ne pose plus de problème particulier de nos jours.

Historiquement, un problème de sécurité avait été identifié en mai 2006 sur la version 4.1.1 de « RealVNC Free edition » et qui permettait à un pirate de prendre la main de votre  ordinateur et ce sans connaître votre mot de passe à l’aide d’ un VNC Viewer modifié. Il est impératif si vous utilisez cette version, de passer au plus vite à la version 4.1.2 et suivante, pour corriger cette faille de sécurité.

Installation, Configuration de VNC

Commencer par installer le logiciel VNC, vous le trouverez facilement sur Internet, en vous aidant par exemple de Google, de Yahoo ou de MSN. L’installation ne nécessite pas un long discours c’est très aisé et rapide à effectuer.

Ensuite, pour accéder à la configuration de votre serveur VNC, faites un clic droit sur l’icône VNC Server situé à côté de l’horloge, puis sélectionner Options…

Cliquer ensuite sur l’onglet Connexions (ou connections dans la version Anglaise) pour vérifier ou modifier les ports de communication de votre serveur VNC. Par défaut VNC utilise le port 5900 pour les connexions classiques du client VNC, le Viewer et le port 5800 pour le client VNC HTTP Java.

Cliquer ensuite sur OK pour valider la configuration du serveur VNC.

Le client VNC classique utilisant le port 5900 nécessite l’installation du VNC Viewer , vous pouvez le télécharger ici, pour celui qui veut prendre la main à distance.

En revanche le client VNC HTTP, sur le port 5800, à l’avantage de fonctionner sans aucune installation. Cela peut s’avérer très pratique lors d’une utilisation en mode nomade, notamment lorsque vous ne voulez ou ne pouvez pas installer le logiciel client VNC. Il nécessite toutefois un navigateur compatible avec java comme  par exemple Internet Explorer ou Mozilla Firefox.

Note :

Pour que VNC fonctionne en HTTP, il est nécessaire que la machine virtuelle Java soit installer sur votre ordinateur.
Pour vérifier que la machine Java est présente : http://www.java.com/fr/download/installed.jsp
Pour installer la machine Java : http://www.java.com/fr/download/

Prise de contrôle à distance :

Comment faire pour que quelqu’un prenne le contrôle via Internet de votre ordinateur ?

Tout d’abord vous devez lui fournir l’adresse IP de votre connexion Internet, ensuite deux solutions s’offrent à votre interlocuteur pour prendre la main sur votre ordinateur :

  • Soit avec VNC Viewer, en saisissant l’adresse IP de votre connexion Internet dans le client
  • Soit avec un navigateur Internet, en tapant la ligne suivante dans la barre d’adresses et sous la forme « http://Votre-Adresse-IP-internet:5800″

Ensuite et ne faisant pas partit du périmètre de cet article, vous pouvez vous documenter sur la création d’un VPN et sur DynDns sur http://www.dyndns.org.

Laisser un commentaire