VNC (Virtual Network Computing) 

Network Time Protocol Firewall avec ipchains
Configuration réseau 

Présentation

Téléchargement

Serveur UNIX, viewer UNIX

installation des binaires
installation et configuration d'un serveur
Lancer le serveur
Lancer le client

Serveur UNIX, viewer Windows NT4.0 ou 9X

Installation et configuration du serveur UNIX
Installation du viewer sous Windows NT4.0 ou 9X
Lancement du viewer sous Windows NT4.0 ou 9X

Serveur Windows NT4.0 ou 9X (WinVNC), viewer UNIX

Installation du serveur sous Windows NT4.0
Installation du serveur sous Windows 9X
Lancement du serveur sous Windows NT4.0 et du viewer sous UNIX

Serveur Windows NT4.0, viewer Windows9X

A venir...

Présentation

VNC (Virtual Network computing) va vous permettre de prendre le contrôle à partir d'un poste sous UNIX de postes du réseau sous Windows NT4.0 ou 9X, mais aussi le contraire !
VNC est constitué d'un serveur et d'un visualisateur ou si vous préférez d'un server et d'un viewer. Le serveur va permettre d'exporter son affichage (display) vers d'autres postes, le visualisateur va pouvoir afficher l'écran d'un serveur. Ca marche très bien pour des plateformes UNIX, mais aussi pour un serveur UNIX et un visualisateur Windows, mais aussi le contraire, l'important est qu'il communique par TCP/IP.
Par la suite on appelera indéféremment viewer et visualisateur. J'ai fait les tests sur une Mandrake 6.1 (noyau 2.2.13) et Mandrake 6.0 (noyau 2.2.9), sur un poste windows NT4.0 et 95.
On appelera le serveur UNIX obelix, le viewer UNIX asterix, et le serveur Windows idefix, votre domaine armoric.bz.
 

Téléchargement

On va récupérer VNC à l'URL http://www.uk.research.att.com/vnc,  personnellement j'ai récupéré:

vnc-3_3_3r2_x86_win32.zip les exécutables pour Windows
vnc-3_3_3_x86_linux_2_0.tgz pour les binaires linux
vnc-latest_doc.zip pour la doc

et éventuellement vnc-3_3_3_unixsrc.tgz pour les sources sous UNIX mais que je n'ai pas essayé à compiler car les binaires marchent très bien chez moi.
 

Serveur UNIX, viewer UNIX

On va prendre la configuration serveur UNIX et viewer UNIX, plus concrétement un serveur sous mandrake 6.1 et un viewer sous mandrake 6.0 les deux évidemment connectés en réseau.

Installation des binaires

Que ce soit un server ou un viewer vous aurez à installer les mêmes binaires sur votre système, et donc accessoirement un viewer pourra être aussi un server et inversement. Les manips à réaliser sont les suivantes:
On décompresse vnc-3_3_3_x86_linux_2_0.tgz

mv vnc-3_3_3_x86_linux_2_0.tgz vnc-3_3_3_x86_linux_2_0.tar.gz
gunzip -xvfz vnc-3_3_3_x86_linux_2_0.tar.gz
tar -xvf vnc-3_3_3_x86_linux_2_0.tar

Placez vous dans le répertoire vnc_x86_linux_2.0 créé à la commande précédente, il se trouve au même endroit que l'archive..
On va  copier les exécutables dans un endroit plus propice (en tant que root):

cp vncviewer vncserver vncpasswd Xvnc /usr/bin

Voilà pour la partie commune au server et au viewer.

Installation et configuration d'un server

Pour un serveur si on veut utiliser le visualisateur VNC Java, on va mettre les fichiers class dans le répertoire /usr/local/vnc/classes (en tant que root):

mkdir -p /usr/local/vnc/classes
cp classes/* /usr/local/vnc/classes

A présent éditer le script /usr/bin/vncserver et modifiez éventuellement deux, trois choses
- si perl ne se trouve pas sous /usr/bin, modifiez la première ligne du fichier
#!/usr/bin/perl
Eventuellement installé Perl
- si vous n'avez pas installé les classes dans /usr/local/vnc/classes, modifiez la valeur de la variable $vncClasses et indiquez votre répertoire d'accueil
- on va modifier la variable pour avoir un max de couleurs (ça dépend en fait de votre carte vidéo):
$depth = 24
Au lieu de 8 (256 couleurs)

Lancer le serveur

Pour lancer le serveur, il suffit en tant que simple utilisateur (olivier dans mon exemple) de taper:

vncserver

Vous aurez alors la première fois, le message suivant:

You will require a password to access your desktops.

Password:

Saisissez un mot de passe

Verify:

Saisissez à nouveau votre mot de passe pour confirmation

ATTENTION: Ne saisissez pas votre mot de passe de login, le présent mot de passe est lié à un display et non pas à un utilisateur, n'importe qui sur un poste viewer pourra visualiser le display dès lors qu'il connaitra le mot de passe.

Apparaît alors

New 'X' desktop is obelix.armoric.bz:1

Creating default startup script /home/olivier/.vnc/startup
Starting applications specified in /home/olivier/.vnc/startup
Log file is /home/olivier/.vnc/obelix.armoric.bz:1.log

A noter que vous pourrez changer de mot de passe à tout moment en tapant

vncpasswd

NOTE: Il est pas absolument nécessare d'être root pour lancer un serveur.

Les prochaines fois que vous lancerez vncserver, celui-ci vérifiera le répertoire .vnc qu'il a créé la première fois dans votre homedirectory, vous n'aurez alors uniquement comme message.

New 'X' desktop is obelix.armoric.bz:1

Starting applications specified in /home/olivier/.vnc/startup
Log file is /home/olivier/.vnc/obelix.armoric.bz:1.log

Lancement du client

Sur le client nul besoin de configuration, il suffit en tant que simple utilisateur de taper:

vncviewer
 
 
Une petite fenêtre apparaît où vous devrez taper le nom du display à afficher, tapez enter ensuite.  
     
Saisissez alors le mot de passe défini sur le server et tapez enter (ne vous étonnez pas si vous ne voyez même pas d'* quand vous tapez votre password)  

Vous avez alors une fenêtre qui apparaît avec un shell à l'intérieur qui vous permet de lancer toutes les commandes (dans la limite de vos drois alloués sur le serveur), y compris évidemment celles graphiques.
 
 
Dans mon exemple, on lance gimp sur le serveur et on ouvre une image. Cliquez éventuellement sur l'image pour avoir une vue à l'échelle 1 (67k).  

NOTE La configuration de l'écran, c'est à dire, les commandes lancées ainsi que la disposition des différentes fenêtres (dans mon exemple, gimp, et le shell) à l'exit du viewer sont sauvegardées. Ainsi dès lors que vous lancerez le viewer que ce soit d'un poste unix ou d'un poste windows, vous retrouvez la dernière config de l'écran (illustration plus bas dans paragraphe viewer NT4.0).

Serveur UNIX, viewer Windows NT 4.0 ou 9X

Installation et configuration du serveur UNIX

Pour l'installation et la configuration du serveur; reportez vous au paragraphe correspondant.

Installation du viewer Windows NT4.0 ou 9X

Il suffit avec winzip de décompresser vnc-3_3_3r2_x86_win32.zip, il va vous créer un réperoire vnc_x86_win32 contenant deux sous répertoires vncviewer et winvnc, le premier contenant le visualisateur et l'autre un serveur. Votre poste windows est donc accessoirement viewer et server.
Vous n'avez aucune configuration à faire.

Lancer le viewer NT4.0 ou 9X

Il suffit de lancer l'exécutable vncviewer se trouvant sous le répertoire ./vnc_x86_win32/vncviewer obtenu lors de la décompression de l'archive.
 
 
Une fenêtre apparaît où vous devrez indiquer le nom du display à afficher (obelix.armoric.bz:1 dans notre exemple).  
     
Saisissez alors le mot de passe  
     
Voilà le résultat obtenu sous NT4.0, vous constatez que vncviewer a gardé sa dernière config. Vous pouvez éventuellement visualiser l'image max en cliquant dessus (115Ko).  
     
Le même résultat mais sous Windows 9X, vous pouvez éventuellement agravidr l'image en cliquant dessus (74K).  

Serveur Windows NT 4.0, viewer UNIX

Installation du serveur Windows NT4.0

Lors de la décompression de l'archive winzip, un répertoire ./vnc_x86_win32/winvnc s'est créé, il contient un exécutable setup qu'il faut lancer pour installer le serveur (appelé WinVNC).
Lisez bien les warnings au démarrage de l'install:
- si vous avez une version précédente de WinVnc, vous devez la stopper,
- vous devez déinstaller toute version précédente,
- vous DEVEZ avoir au moins Service Pack 3 installé sur un poste windows NT.
Suit ensuite l'install classique de programmes sous Windows. Après reboot de la machine, WinVNC va créer une arborescence vnc dans le menu Démarrer.

NOTE: Si le Service Pack 3 n'est pas installé, ça marche très bien, mais si le warning est si appuyé c'est qu'il y a une bonne raison, je vous conseille donc vivement de l'installer.

Installation du serveur Windows 9.X

L'installation est strictement identique à celle sous Windows NT4.0 à la différence près que vous pouvez ignorer avec superbe le warning sur le service pack 3.

Lancement du serveur sous Windows NT4.0 et 9X et du viewer sous UNIX

Pour lancer le serveur dans le menu démarrer, il suffit de choisir Run WinVNC (App Mode).
 
 
Une fenêtre de propriétés apparaît, personnellement j'ai laissé les paramêtres par défaut. Vous devez alors saisir un mot de passe que les viewers devront utiliser pour pouvoir afficher le "display". 
Après l'appui sur OK, vous verrez qu'une petite icône apparaît à droite de la barre d'état de Windows. Si vous double-cliquez dessus, vous aurez alors à nouveau la fenêtre de propriétés de droite. 
Accessoirement quand vous cliquez sur l'icône avec le bouton droit de la souris, vous voyez le menu suivant: 
- Properties
- Add New Client
- Kill All Clients
- About WinVNC
- Close VNC
 
     
Pour qu'un viewer (client VNC) puisse se connecter, il faut lui y autoriser, au menu précédent il faut donc choisir Add New Client pour indiquer les viewers qui pourront afficher le display. 
Dans Host Name indiquez le nom de la machine où va tourner le viewer. Notez bien le NB, sur la machine cliente on doit préalablement lancer vncviewer en mode "listen". 
 

Avant de taper OK dans la fenêtre, sur la machine cliente UNIX, taper:

vncviewer -listen

On voit alors les commentaires suivants:

vncviewer -listen: Listening on port 5500 (flash port 5400)
vncviewer -listen: Command line errors are not reported until a connectioncomes in.

Vous pouvez alors cliquer sur OK dans la fenêtre Initiate Outgoing Connection (Add New Client). Notez alors que la petite icône à droite de la barre d'état de Windows NT vire au noir.
 
 
Et là magique apparaît l'écran complet Windows NT dans une fenêtre sur le poste client UNIX. Dans mon exemple j'avais choisi de lancer vncviewer sous environnement XFCE. 
Maintenant dans cette fenêtre cliquez sur les icônes du bureau Windows NT, ou sur le menu Démarrer, tout y est opérationnel ! Accessoirement regardez votre PC sous Windows NT, toutes les actions réalisées dans la fenêtre UNIX se répercutent sur le poste Windows et vice-versa. 
Vous pouvez éventuellement agradir l'image en cliquant dessus (142Ko).
 
     
Et voilà le résultat avec l'écran Windows 9.X. Pour agrandir cliquez dessus (168K).  

NOTE: A l'affichage de la fenêtre VNC, à la suite des commentaires initiaux de vncviewer, apparaît alors:

VNC server supports protocol version 3.3 (viewer 3.3)
No authentication needed
Desktop name "idefix"
Connected to VNC server, using protocol version 3.3
VNC server default format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
Using default colormap which is TrueColor.  Pixel format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
Using shared memory PutImage

Du coup d'installer WinVNC sur tous les postes Windows NT de votre réseau, à espionner les activités de vos utilisateurs sous Windows NT il n'y a qu'un pas ... (Big Brother is watching you !!).

NOTE: Libre à vous maintenant de lancer WinVNC au démarrage de Windows, tout simplement en le plaçant dans le groupe de démarrage. Attention n'oubliez pas préalablement de lancer vncviewer en mode liste préalablement sur le poste client.

Serveur Windows NT4.0, viewer Windows 9X

Pour être précis j'ai testé avec windows 95. L'installation de VNC sur un poste Windows9X est strictement identique à celle sur NT4.0 en plus c'est exactement les mêmes binaires et donc la même archive, je ne reviendrai donc pas dessus.
 
 
Sur le serveur NT4.0 vous devez lancer le serveur WinVNC, et sur le client 9X vncviewer (voir les paragraphes précédents concernant NT4.0 pour WinVNC et vncviewer les manips sont identiques). 
Et voici ce que sur votre poste windows 9.X vous pouvez voir apercevoir. Cliquez éventuellement sur l'image pour avoir l'image en taille réelle (67K).
 

A venir...

Il me manque  la config serveur Windows 9X et viewer Windows NT. J'aimerai aussi lancer plusieurs écrans virtuels sur un poste UNIX

 
Retour haut de la page