Vous êtes sur la page 1sur 45

Tkontrole version 2.

Manueld'installationetd'utilisation
deTkontrole2.1

Documentation de Tkontrole

page 1/45

Version du 05/11/2009

Tkontrole version 2.1

Contenu de cette documentation


PRSENTATION.......................................................................................4
A

PROPOS DE CETTE DOCUMENTATION...............................................................5

POURQUOI TKONTROLE ?............................................................................5


EXISTENCE

ET CORRECTION DES BUGS...............................................................6

ARCHITECTURE

DU LOGICIEL

TERMINOLOGIE........................................................6

PLATEFORMES

SUPPORTES..........................................................................7

INSTALLATION

ET CONFIGURATION....................................................................8

INSTALLATION SOUS WINDOWS......................................................................9


Partie serveur..................................................................................................9
Partie client....................................................................................................10
INSTALLATION SOUS LINUX.........................................................................10
Partie serveur................................................................................................10
Partie client....................................................................................................11
CONFIGURATION....................................................................................11
Partie serveur................................................................................................12
Partie client....................................................................................................13
criture des adresses des machines..............................................................15
LA

SCURIT FACE AUX VENTUELS PIRATES.......................................................18


Contrle des adresses ou des noms..............................................................18
Mot de passe de connexion...........................................................................18

DSINSTALLATION SOUS WINDOWS................................................................20


Partie serveur................................................................................................20
Partie client....................................................................................................20
DSINSTALLATION SOUS LINUX....................................................................20
Partie serveur................................................................................................20
Partie client....................................................................................................21
INSTALLATION

AUTOMATIQUE DU SERVEUR.........................................................22

MODE D'EMPLOI
ASPECT

DE

TKONTROLE-CLIENT...........................................................23

GNRAL...................................................................................24

DMARRAGE........................................................................................24
AFFICHAGE

DES ORDINATEURS PLACS SOUS CONTRLE...........................................24

AGIR SUR LES ORDINATEURS.......................................................................25


Agir sur un seul ordinateur............................................................................27
Agir sur un ensemble d'ordinateurs...............................................................27
Documentation de Tkontrole

page 2/45

Version du 05/11/2009

Tkontrole version 2.1


LES DIFFRENTES ACTIONS DISPONIBLES ...........................................................27
Action Rafraichir .......................................................................................28
Action Voir en taille relle ........................................................................28
Action Voir les crans ..............................................................................28
Action Enregistrer les crans ...................................................................28
Action Prendre le contrle ........................................................................28
Action Faire une dmo .............................................................................28
Action Bloquer les machines ....................................................................29
Action Grer l'internet ..............................................................................29
Action Grer les logiciels ..........................................................................30
Action Ecrire .............................................................................................30
Action Eteindre ........................................................................................30
Action Voir infos .......................................................................................31
COMPORTEMENT

DU SERVEUR QUAND LE CLIENT EST ARRT ......................................32

COMPORTEMENT

DU CLIENT QUAND LE SERVEUR EST REDMARR..................................32

REVOIR

UNE SQUENCE ENREGISTRE..............................................................33

ANNEXES...........................................................................................35
ARCHITECTURE

DU LOGICIEL........................................................................36

FORMAT DU FICHIER TKONTROLE-SERVEUR.CFG...................................................37


Utilit.............................................................................................................37
Syntaxe du fichier..........................................................................................37
Exemple.........................................................................................................37
FORMAT DU FICHIER TKONTROLE-CLIENT.CFG......................................................40
Utilit.............................................................................................................40
Syntaxe..........................................................................................................40
Exemple.........................................................................................................40
TECHNIQUE DE BLOCAGE DE L'INTERNET............................................................42
Linux..............................................................................................................42
Windoze 98-Me..............................................................................................42
Windoze NT-XP...............................................................................................42
Windoze Vista................................................................................................43
PROTOCOLE UTILIS PAR TKONTROLE..............................................................44
Versions du protocole....................................................................................44
Compatibilit avec les versions antrieures..................................................44
Description du protocole de connexion au serveur........................................44
Commandes...................................................................................................44

Documentation de Tkontrole

page 3/45

Version du 05/11/2009

Tkontrole version 2.1

Prsentation

Documentation de Tkontrole

page 4/45

Version du 05/11/2009

Tkontrole version 2.1

Aproposdecettedocumentation
Il est possible que cette documentation ait t mise jour afin de corriger des
erreurs ou ajouter certaines informations.
Consultez donc l'adresse : http://www.pianos.com.fr/vincent.verdon
Ce document ainsi que le logiciel Tkontrole sont diffuss sous licence GNU GPL
version 2, dfinie par la Free Software Foundation (www.fsf.org).
Ils sont libres d'utilisation et de modification, dans les limites de leur licence.
Tkontrole et sa documentation sont raliss par V. Verdon Corp. !

PourquoiTkontrole?
Professeur enseignant le gnie mcanique, j'utilise frquemment l'informatique
avec mes lves et mes tudiants. Quand de nombreux lves travaillent avec
un ordinateur, il n'est pas toujours ais de savoir ce qu'ils font et j'ai pens qu'il
serait bien pratique de possder un outil type moniteur de contrle. Au del de
cela, je me suis dit qu'il serait bien de pouvoir exercer un certain nombre
d'actions sur les postes informatiques de mes lves : les forcer s'arrter
pour m'couter par exemple ! Ou encore les empcher de surfer sur
l'internet si je juge qu'il n'en est pas l'heure. Ou encore voir quels ordinateurs
ont t oublis en fin de cours et les teindre tous d'un seul coup. J'avais
envie d'aller plus loin : pouvoir leur envoyer des dmonstrations depuis mon
poste de travail... Ainsi il n'est pas ncessaire de recommencer 10 fois la mme
dmo pour 10 lves, non ?
En bref, Tkontrole a actuellement plusieurs fonctionnalits :
Surveillance d'un ensemble d'ordinateurs grce un systme de
visualisation des crans depuis le poste de contrle (images fixes).
Enregistrement en continu des crans des ordinateurs placs sous
surveillance.
Possibilit de gel temporaire des crans des ordinateurs placs sous
surveillance.
possibilit de blocage de l'accs internet des ordinateurs placs sous
surveillance.
Blocage ou dblocage permanent de certains sites cibls, quelque soit
l'tat de l'accs l'internet.
Prise de contrle d'un ordinateur depuis le poste de contrle.
Exportation de l'affichage du poste de contrle vers un ou plusieurs
postes sous contrle.
Envoi de messages depuis le poste de contrle vers un ou plusieurs
postes sous contrle.
Arrt, dconnection ou redmarrage des ordinateurs depuis le poste de
Documentation de Tkontrole

page 5/45

Version du 05/11/2009

Tkontrole version 2.1

contrle.
Affichage d'informations techniques sur les ordinateurs sous surveillance.
Interdiction d'excution de certains logiciels depuis le poste de contrle.

Existenceetcorrectiondesbugs
Tkontrole est un logiciel libre, prvu pour vous rendre service, dont les dfauts
(bugs) sont corrigs le mieux possible.
Il est par contre fourni sans aucune garantie d'aucune sorte. L'auteur ne peut
tre tenu responsable de problmes survenus sur votre ordinateur !
Tkontrole est implant sur de nombreux ordinateurs de mon lyce sans gros
problmes !
En cas de problme, il est possible de me contacter l'adresse :
vincent.verdon@laposte.net
Je vous rpondrai dans la mesure du possible !

Architecturedulogicielterminologie
Ce logiciel utilise une architecture de type client / serveur .
Le client est le poste qui se connecte puis contrle le ou les postes sur lequel
fonctionne la partie serveur du logiciel. Il s'agit du poste de contrle ou pupitre
de contrle sur lequel sera install Tkontrole-Client.
Les postes serveurs sont ceux qui sont placs sous le contrle du poste client.
Tkontrole-Serveur y sera install.
L'architecture de la partie serveur a fortement volu dans la version 2.0, dans
le but d'adapter le logiciel Windoze Vista et Linux(voir diagramme illustrant
l'architecture en annexe).
Le client et le serveur communiquent l'aide d'un ensemble de mots, appel
protocole, spcialement conu pour Tkontrole (voir dtails sur le protocole en
annexe).
La visualisation de l'cran des postes sous contrle (serveurs) est faite sous la
forme d'images fixes : l'intrt est de limiter le trafic sur le rseau.
Mais en cas de besoin, Tkontrole peut dmarrer automatiquement un serveur
VNC qui permet de prendre le contrle du serveur Tkontrole ou encore
d'envoyer des dmonstrations depuis le client Tkontrole vers le serveur
Tkontrole.
Ces fontionnalits sont dcrites en dtail dans le mode d'emploi, plus loin dans
la documentation.

Documentation de Tkontrole

page 6/45

Version du 05/11/2009

Tkontrole version 2.1

Plateformessupportes
Actuellement, ce logiciel est destin fonctionner sous Windoze (toutes
versions) et Linux.
Les parties serveur et client fonctionnent sous toutes les versions de Windoze ,
98, NT2000, Me, XP et Vista depuis la version 2.1.
Les parties serveur et client fonctionnent sous Linux et certainement sous
d'autres Unix (peut-tre faudra-t-il prvoir des adaptations mineures).
Le portage MacOS X ne m'a pas t demand mais doit tre possible raliser.
Actuellement, aucun test n'a t fait sous MacOS X.

Documentation de Tkontrole

page 7/45

Version du 05/11/2009

Tkontrole version 2.1

Installation et configuration

Documentation de Tkontrole

page 8/45

Version du 05/11/2009

Tkontrole version 2.1

InstallationsousWindows
Pour fonctionner sous Windows, Tkontrole ne ncessite rien d'autre que ses
propres fichiers, tout est compris dans l'installateur fourni (notamment VNC).
Sous Windows NT2000, XP ou Vista, il faut disposer des droits d'administrateur
pour pouvoir installer le logiciel.

Partieserveur
Il s'agit de la partie installer sur les ordinateurs que l'on dsire placer sous
contrle.
Attention ! Il est possible mais dconseill d'installer un serveur sur un
ordinateur o l'on dsire faire fonctionner le client. Cela n'a d'ailleurs pas
d'intrt, sauf pour effectuer un essai du logiciel.
Excuter l'installateur Tkontrole-Serveur-2.x-Windows.exe .

Le programme d'installation suggre un emplacement pour l'installation mais il


est possible d'en spcifier un autre.
L'installation de la documentation est facultative.
Aprs la copie des fichiers, une fentre propose d'entrer un mot de passe pour
protger le serveur de piratages ventuels (cela est trs conseill, voir le
paragraphe concernant la scurit). Si l'on choisit d'entrer un mot de passe, il
faudra mettre le mme mot de passe pour Tkontrole-Client.

Il faut encore configurer (voir plus loin) le serveur puis redmarrer l'ordinateur.

Documentation de Tkontrole

page 9/45

Version du 05/11/2009

Tkontrole version 2.1


Remarque :

depuis Tkontrole 2.1, il n'est plus ncessaire de configurer manuellement


le parefeu (sous Windoze NT, XP ou Vista). Tkontrole s'en charge tout
seul.

Sous Windoze Vista, Tkontrole utilise le parefeu intgr au systme.


Donc, il est ncessaire d'activer le parefeu si l'on a l'intention d'utiliser
les fonctionnalits de contrle d'accs l'internet de Tkontrole.

Partieclient
Il s'agit de la partie installer sur l'ordinateur destin au contrle.
Excuter l'installateur Tkontrole-Client-2.x-Windows.exe .

Le programme d'installation suggre un emplacement pour l'installation mais il


est possible d'en spcifier un autre.
L'installation de la documentation est facultative.
Le logiciel installe automatiquement les raccourcis et les menus permettant le
dmarrage sur le bureau.
A la fin du processus, la partie client fonctionne, mais il faut encore la
configurer (voir paragraphe Configuration plus loin).

InstallationsousLinux
Partieserveur
Pour fonctionner, Tkontrole-Serveur a besoin de plusieurs logiciels annexes,
disponibles sous forme de paquets rpm, deb ou autres, suivant votre
distribution Linux. Il s'agit de :
TCL 8.4 et TK 8.4 minimum
vncviewer (client VNC, intgr au paquet xvncviewer ou xvnc4viewer par
exemple). Attention, dans le cas de l'utilisation de TightVNC, une petite
modification est faire dans le fichier de configuration (commentaire
explicatif inclus dans le fichier).
x11vnc (serveur VNC)
serveur Samba install et dmarr :
dans le cas ou le serveur sous Linux doit tre contrl par des machines sous
Windoze. Inutile donc si client et serveurs sont sous Linux.
Documentation de Tkontrole

page 10/45

Version du 05/11/2009

Tkontrole version 2.1


nmblookup (fait partie de Samba) :
dans le cas ou le serveur sous Linux doit tre contrl par des machines sous
Windoze. Inutile donc si client et serveurs sont sous Linux.
Imagemagick
iptables (en principe automatiquement install) quelle que soit la
distribution Linux utilise.

Il s'agit de la partie installer sur les ordinateurs que l'on dsire placer sous
contrle.
L'installation est identique l'installation sous Windoze, ceci prs que
l'installateur rclame le mot de passe de l'administrateur pour installer le
logiciel.

Partieclient
Pour fonctionner, Tkontrole-Client a besoin de plusieurs logiciels annexes,
disponibles sous forme de paquets rpm, deb ou autres, suivant votre
distribution Linux. Il s'agit de :
TCL 8.4 et TK 8.4 minimum
vncviewer (client VNC, intgr au paquet xvncviewer par exemple)
Attention, dans le cas de l'utilisation de TightVNC, une petite modification
est faire dans les fichiers de configuration (comment dans le fichier de
configuration).
x11vnc (serveur VNC)
serveur Samba install et dmarr :
dans le cas ou le serveur sous Linux doit tre contrl par des machines sous
Windoze. Inutile donc si client et serveurs sont sous Linux.
nmblookup (fait partie de Samba) :
dans le cas ou le serveur sous Linux doit tre contrl par des machines
sous Windoze. Inutile donc si client et serveurs sont sous Linux.
L'installation est identique l'installation sous Windoze, ceci prs que
l'installateur rclame le mot de passe de l'administrateur pour installer le
logiciel.

Configuration
La configuration de Tkontrole se fait en ditant 2 fichiers de configuration (un
pour le serveur et un autre pour le client).
Dans ces 2 fichiers, certains paramtres doivent imprativement tre les
mmes pour que la communication puisse fonctionner : port et port_vnc
Il est conseill de laisser ces paramtres tels quels.
La configuration est simple raliser :
ouvrir les fichiers avec un diteur de texte (Notepad ou Wordpad sous Windoze
Documentation de Tkontrole

page 11/45

Version du 05/11/2009

Tkontrole version 2.1


par exemple, gedit, kwrite ou mc sous Linux).
Adapter les paramtres en fonction des besoins.
Les fichiers sont comments afin de rendre la configuration plus simple.
Remarque : Sous Windoze Vista, le mcanisme UAC empche de modifier
les fichiers situs dans c:\program files. ouvrir notepad en tant
qu'administrateur (voir clic droit de souris sur la ligne du menu Notepad). Ainsi,
on peut modifier ces fichiers.

Partieserveur
Pour tous les systmes(Linux, windoze,...), le fichier de configuration par dfaut
du serveur Tkontrole est tkontrole-serveur.cfg situ dans le dossier
d'installation.
Sous Linux, s'il existe un fichier /etc/tkontrole-serveur.cfg, alors ce fichier est
pris comme fichier de configuration par dfaut de Tkontrole-Serveur.
Attention ! Le serveur ne sera oprationnel qu'aprs redmarrage de
l'ordinateur.
Il faudra galement redmarrer l'ordinateur aprs chaque modification du
fichier de configuration, moins de savoir arrter et redmarrer un service (ce
qui dpend du systme d'exploitation).
Les paramtres importants adapter ventuellement sont :
Paramtre

usage

valeurs typiques

ip_serv

Adresse IP de l'adresse sur laquelle le {} -> l'coute se fait sur la premire


serveur est en coute.
interface (configuration normale)
{192.168.0.1} -> le serveur coute
sur l'adresse donne

ip_admin

Adresse du serveur d'administration.


ce paramtre est inutilis
actuellement, car le serveur
d'administration n'est pas encore fini
de programmer !

{} -> pas de recherche de serveur


d'administration
{192.168.0.100} -> recherche d'un
serveur d'administration

mais il peut tre sage de prvoir


l'avenir tout de suite en attribuant
une adresse ou un nom.
ip_accept

port

Adresses de connexion de clients


acceptes. Attention ! Pour la
scurit, limiter les adresses aux
seules machines qui ont le droit de
contrler le serveur.

{10.0.0.10 192.168.0.10} -> 2


machines sont autorises

Port utilis par Tkontrole.

4444

Documentation de Tkontrole

page 12/45

{{$ip(a).$ip(b).$ip(c).<1 5>}} -> 5


machines sont autorises. (*)

Version du 05/11/2009

Tkontrole version 2.1


Paramtre

usage

valeurs typiques

port_vnc

Port utilis par le serveur VNC utilis


par Tkontrole. Le port doit tre
diffrent du port VNC standard
(5900).

4445

info_surv

Affichage d'un message lors de la


connexion d'un utilisateur. Prvient
l'utilisateur qu'il est potentiellement
sous surveillance.

2 -> le message s'affiche dans une


fentre la connexion
1 -> le message reste en permanence
sous la forme d'un bandeau orange
0 -> pas de message

message_surv

Contenu du message affich.

blocage_route_ Blocage de l'accs internet.


init

{Cet ordinateur est plac sous


surveillance}
0 -> L'internet n'est pas bloqu par
dfaut
1 -> L'internet est bloqu par dfaut

firewall(liste_po Dfinition des ports bloqus par le


rts_bloques)
firewall quand l'ordre est donn de
bloquer la route.
Ce paramtre n'a pas d'effet sous
Win98

{21t 21u 25t 80t 80u 110t 110u 443t


443u}
21t > port 21 en tcp
110u > port 110 en udp
Si utilisation d'un proxy, il faudra
ajouter le port du proxy afin de
bloquer l'accs.

firewall(liste_ur Dfinition des sites qui doivent rester {http://pasbo.com


l_interdites)
bloqus en permanence, quelque soit www.framasoft.net}
l'tat de blocage de l'internet. Mettre
ici les URL des sites que l'on veut
interdire tout prix.
set
Dfinition que l'on veut laisser
firewall(liste_ur accessibles en permanence aux
l_autorisees)
utilisateurs, quelque soit l'tat de
blocage de l'internet. Mettre ici les
URL des sites considrs comme
ressource pour les utilisateurs.

{www.vv.fr www.pianos.com.fr}

set
liste_exe_inter
dits

Dfinition des logiciels, excutables


{msn.exe gedit interdit.exe}
dont on souhaite interdire l'utilisation.

debug

Permet d'afficher une fentre o


0 -> Utilisation normale : pas
s'affichent les messages. Utile en cas d'affichage
de panne !
1 -> affichage de la console

(*) Voir le paragraphe concernant l'criture des adresses.

Partieclient
Pour tous les systmes(Linux, windoze,...) :
Le fichier de configuration par dfaut du client Tkontrole est tkontroleclient.cfg situ dans le dossier d'installation.
Documentation de Tkontrole

page 13/45

Version du 05/11/2009

Tkontrole version 2.1


Si l'utilisateur possde dans son dossier personnel ( Mes Documents sous
Windoze) un fichier de configuration .tkontrole-client.cfg , alors les
paramtres qui sont redfinis dedans remplacent ceux du fichier de
configuration par dfaut.
On peut galement avoir une configuration personnalise en appelant en
faisant :
c:\program files\tkontrole-client\tkontrole-client.exe exemple.cfg
(en ligne de commande ou l'aide d'un raccourci). Les paramtres redfinis
dans le fichier exemple.cfg remplacent ceux du fichier de configuration par
dfaut.
Sous Linux, s'il existe un fichier /etc/tkontrole-client.cfg, alors ce fichier est pris
comme fichier de configuration par dfaut de Tkontrole-Client.
Les paramtres importants adapter ventuellement sont :
Paramtre

usage

valeurs typiques

port

Port utilis par Tkontrole.

4444

port_vnc

Port utilis par le serveur VNC


4445
utilis par Tkontrole. Le port doit
tre diffrent du port VNC standard
(5900).

password

Mot de passe utilis pour valider la {essai} > mot de passe stock en
connexion du client auprs du
clair mais transmis cod sur le rseau.
serveur.
Dans le cas ou le serveur n'utilise pas
Le mot de passe est stock non
de mot de passe (fichier pass
crypt (voir chapitre La scurit inexistant), alors ce paramtre est
face aux ventuels pirates )
sans effet sur la connexion.

rep_home

Dossier de stockage des donnes


(actuellement : uniquement
stockage des captures d'crans
enregistres).

h:/ -> disque rseau


~ -> dossier mes documents
(dossier personnel)

Dans le dossier indiqu, un sous


dossier nomm tkontrole est
automatiquement cr. C'est dans
celui-ci que sont enregistres les
donnes.
liste_ip

Adresses des serveurs placer


sous contrle.

{10.0.0.10 10.0.0.11 10.0.0.12


10.0.0.13} -> 4 machines sont
places sous contrle
{{$ip(a).$ip(b).$ip(c).<10 15>}} -> 6
machines sont places sous contrle.
(*)

netbios

Ce paramtre indique si la
rsolution de noms doit utiliser
Netbios en plus de DNS (Unix/Linux
uniquement, paramtre sans effet
sous Windoze).

Documentation de Tkontrole

page 14/45

1 -> la rsolution des nom sera faite


en utilisant les noms netbios en plus
du DNS.
0 -> la rsolution des noms n'utilise
pas netbios.

Version du 05/11/2009

Tkontrole version 2.1


Paramtre

usage

valeurs typiques

etat_visu_defaut

Indique si les captures d'crans


des ordinateurs serveurs doivent
commencer automatiquement au
dmarrage de Tkontrole-client

1 -> capture dmarre


automatiquement
0 -> pas de capture automatique

tempo(regen)

temps en seconde entre 2 captures 10 s minimum


d'cran

tempo(scan)

temps en seconde entre 2


recherches de serveurs

30 s est une valeur convenable

reduction

taille d'affichage des crans des


postes serveurs affichs. Le
nombre reprsente le facteur de
diminution par rapport la taille
relle.

2 10

Permet d'afficher une fentre o


s'affichent les messages. Utile en
cas de panne !

0 -> Utilisation normale : pas


d'affichage

debug

2 -> taille divise par 2


10 -> taille divise par 10

1 -> affichage de la console

(*) Voir le paragraphe concernant l'criture des adresses.

crituredesadressesdesmachines
Tkontrole permet l'utilisation des adresses sous la forme IP : ex 192.168.0.1
L'utilisation des noms est galement possible depuis la version 1.1 : ex pc1
Adresses au format IP ou nom ?
Si les ordinateurs sur lesquels on veut installer Tkontrole sont en adresse ip
fixe, il est plus performant (concernant les temps de connexion) de spcifier
des adresses sous forme IP (numriques) car on vite la rsolution des noms
qui peut prendre du temps.
Dans le cas d'adresses dynamiques (DHCP), on doit obligatoirement utiliser des
noms, les adresses IP tant par dfinition changeantes.
Tkontrole permet de simplifier l'criture des adresses par l'utilisation de
plusieurs moyens dtaills ci-aprs.
Adresses IP d'un ensemble de machines :
Par exemple, si l'on souhaite crire la srie d'adresses 192.168.0.10
192.168.0.19, on peut crire sous la forme condense :
set liste_ip {{192.168.0.<10 19>}}
ou encore :
set liste_ip {{192.168.0.1<0 9>}}
Adresses sous forme de nom d'un ensemble de machines :
Documentation de Tkontrole

page 15/45

Version du 05/11/2009

Tkontrole version 2.1


Si, par exemple, on souhaite crire la srie de noms de machines machine1
machine 15, on peut crire cela sous la forme :
set liste_ip {{machine<1 15>}}
Adresses IP construite partir de l'adresse machine :
Quand Tkontrole-Client ou Tkontrole-Serveur est install et excut sur un
ordinateur, il stocke l'adresse IP dans 4 variables notes ip(a) ip(d).
Si l'adresse IP est 192.168.0.1, alors ip(a) vaut 192, ip(b) vaut 168,...
On peut se servir de ces variables pour construire la liste des machines
contrler :
set liste_ip {{$ip(a).$ip(b).$ip(c).<1 5>}
reprsente : 192.168.0.<1 5>
et donc en fait :
{192.168.0.1 192.168.0.2 192.168.0.3 192.168.0.4 192.168.0.5}
Adresses sous forme de nom construite partir du nom machine :
Quand Tkontrole-Client ou Tkontrole-Serveur est install et excut sur un
ordinateur, il stocke son nom de machine dans une variables note host.
On peut ventuellement rcuprer le dbut de ce nom pour construire une liste
de machines.
Par exemple, si une salle comporte 9 ordinateurs devant tre placs sous
surveillance, nomms ordi2 ordi10, et que l'ordinateur prvu pour les
surveiller soit ordi1.
La variable host vaut ordi1 pour la machine quipe de Tkontrole-client. La
commande [string range $host 0 3] vaut ordi (on rcupre les caractre 0 3,
0 reprsentant le premier caractre !).
La liste des machines surveiller peut s'crire :
set liste_ip {{[string range $host 0 3]<2 10>}}
Elle correspond :
set liste_ip {ordi2 ... ordi 10}
Quelques exemples supplmentaires :

dans Tkontrole-Serveur :

set ip_accept {poste10 192.168.100. } : les connexions sont acceptes venant


du poste 10 et de toute machine dont l'adresse IP commence par 192.168.100.
set ip_accept {poste1<10 15> 192.168.100.1 } : les connexions sont
acceptes venant des postes 10 15 et de la machine dont l'adresse IP est
192.168.100.1

dans Tkontrole-Client :

Documentation de Tkontrole

page 16/45

Version du 05/11/2009

Tkontrole version 2.1


set liste_ip {poste1 poste2 192.168.100.<1 10>} : les machines poste1 et 2
ainsi que les machines ayant pour adresse 192.168.100.1 10 sont cherches
pour tre places sous contrle.
set liste_ip {u0<1 >salle03 u10salle03} : les machines u01salle03
u10salle03 sont cherches pour tre places sous contrle.
set liste_ip {p01s10 p02s10 p03s10 p04s10 p05s10} : les machines p01s10
p05s10 sont cherches pour tre places sous contrle.
Remarque : cela pouvait s'crire set liste_ip {{p0<1 5>}s10} !

Documentation de Tkontrole

page 17/45

Version du 05/11/2009

Tkontrole version 2.1

Lascuritfaceauxventuelspirates
Depuis la version 2.0, Tkontrole est dot de 2 mcanismes permettant une
certaine scurit la connexion :
le contrle des adresses ;
le mot de passe de connexion.
Ces 2 mcanismes peuvent tre utiliss conjointement.

Contrledesadressesoudesnoms
Tkontrole-Serveur permet la limitation des machines autorise se connecter.
Le paramtre configurer est ip_accept du fichier de configuration de
Tkontrole-serveur (voir paragraphe antrieur sur la configuration du serveur).
Grce ce mcanisme, Tkontrole-Serveur peut n'accepter de connexions que
depuis certaines adresses IP ou depuis certains noms de machines.
A noter que ce mcanisme est peu fiable dans la mesure ou il est simple de
configurer une machine pirate avec un adressage ou un nom compatible.

Motdepassedeconnexion
Un mcanisme plus sr existe dsormais. Il s'agit du contrle de connexion par
mot de passe.
Le principe est simple : les postes placs sous contrle (donc TkontroleServeur) sont configurs avec un mot de passe.
A la connexion d'un poste de contrle (Tkontrole-Client), le contrle de
l'adresse ou du nom est effectu par le serveur, puis celui-ci rclame le mot de
passe au client. Si le mot de passe concide avec le mot de passe de son fichier
de configuration, alors la connexion est accepte : le client est autoris
prendre le contrle du serveur, sinon, la connexion est ferme.
Le mot de passe est transmis crypt au serveur et ne circule donc pas en clair
sur le rseau.

Dans Tkontrole-Client, le mot de passe est stock non crypt dans


tkontrole-client.cfg

Dans Tkontrole-serveur, le mot de passe est stock crypt dans un


fichier nomm pass.

Un utilitaire permet de crer le mot de passe pour Tkontrole-Serveur et l'crit


automatiquement dans le fichier pass. Pour crer le mot de passe crypt, vous
devez ouvrir une console puis aller dans le dossier d'installation de TkontroleServeur, puis entrer la commande :

tkontrole-serveur.exe /password (sous Windoze) ou tkontrole-serveur.tcl


/password (sous Linux).

Documentation de Tkontrole

page 18/45

Version du 05/11/2009

Tkontrole version 2.1

A noter que cet utilitaire est lanc automatiquement l'installation du logiciel.


Il est fortement conseill de protger le fichier pass pour qu'il ne soit pas
accessible une autre personne que l'administrateur de la machine.
Effacer le fichier pass revient supprimer la protection par mot de passe.

Documentation de Tkontrole

page 19/45

Version du 05/11/2009

Tkontrole version 2.1

DsinstallationsousWindows
Partieserveur
Dsactivation temporaire :
Depuis le menu Dmarrer > Excuter, entrer la commande :
c:\program files\tkontrole-serveur\tkontrole-serveur.exe /desinstall
Tkontrole-serveur est dsinstall en temps que service, c'est dire qu'il ne
fonctionne plus. Mais les fichiers sont toujours en place, il est prt tre
ractiv.
Ractivation :
Depuis le menu Dmarrer > Excuter, entrer la commande :
c:\program files\tkontrole-serveur\tkontrole-serveur.exe /install
Tkontrole-serveur fonctionne nouveau.
Dsinstallation dfinitive :
Excuter le programme uninstall du dossier d'installation de TkontroleServeur, ou bien passer par le panneau de configuration de Windoze >
Ajout/Suppression de programmes.
Le serveur est automatiquement arrt et l'ensemble des fichiers est effac du
disque dur.

Partieclient
Excuter le programme uninstall.exe du dossier d'installation de TkontroleClient, ou bien passer par le panneau de configuration de Windoze >
Ajout/Suppression de programmes.
L'ensemble des fichiers est effac du disque dur.

DsinstallationsousLinux
Partieserveur
Dsactivation temporaire :
Dmarrer une console et entrer la commande :
/opt/tkontrole-serveur/tkontrole-serveur.tcl /desinstall
Tkontrole-serveur est dsinstall en temps que daemon, c'est dire qu'il ne
fonctionne plus. Mais les fichiers sont toujours en place, il est prt tre
Documentation de Tkontrole

page 20/45

Version du 05/11/2009

Tkontrole version 2.1


ractiv.
Ractivation :
Dmarrer une console et entrer la commande :
/opt/tkontrole-serveur/tkontrole-serveur.tcl /install
Tkontrole-serveur fonctionne nouveau.
Dsinstallation dfinitive :
Excuter le programme uninstall du dossier d'installation de TkontroleServeur.
Attention ! Il faut avoir les droit
d'administrateur pour la dsinstallation,
sinon le programme le rappelle !
pour cela, le mieux est d'excuter dans une
console (Konsole, Xterm,...) les commandes :
su

(puis entre)

Puis :
dossier_installation/uninstall

(puis entre)

Le serveur est automatiquement arrt et l'ensemble des fichiers est effac du


disque dur.

Partieclient
Excuter le programme uninstall du dossier d'installation de TkontroleClient.
Attention ! Il faut avoir les droit
d'administrateur pour la dsinstallation,
sinon le programme le rappelle !
pour cela, le mieux est d'excuter dans une
console (Konsole, Xterm,...) les commandes :
su

(puis entre)

Puis :
dossier_installation/uninstall

(puis entre)

L'ensemble des fichiers est alors effac du disque dur.


Documentation de Tkontrole

page 21/45

Version du 05/11/2009

Tkontrole version 2.1

Installationautomatiqueduserveur
Parfois, il peut tre intressant de pouvoir dployer automatiquement le
serveur plutt que de devoir le faire manuellement.
La dmarche est la suivante :

Installation complte classique sur une machine.

Configuration ... et tests.

Copie du dossier d'installation complet sur les autres machines sur lequel
Tkontrole-Serveur est destin tre install.

Installation du service en faisant la ractivation du service (voir


paragraphes prcdents) :
Sous Windoze -->
c:\program files\tkontrole-serveur\tkontrole-serveur.exe
/install
Sous Linux -->
/opt/tkontrole-serveur/tkontrole-serveur.tcl /install

Redmarrage de la machine

En principe, le serveur est alors fonctionnel.


Bien entendu, ces tches ncessitent d'avoir les droits d'administrateur.
On peut envisager de cette faon de dployer automatiquement TkontroleServeur par le rseau en incluant un script la connection (et en utilisant par
exemple l'outil CPAU sous Windoze).

Documentation de Tkontrole

page 22/45

Version du 05/11/2009

Tkontrole version 2.1

Mode d'emploi de Tkontrole-client

Documentation de Tkontrole

page 23/45

Version du 05/11/2009

Tkontrole version 2.1

Aspectgnral
Quand Tkontrole-client est dmarr, une fentre s'ouvre
Cette fentre comporte un ensemble de boutons et une zone d'affichage des
ordinateurs sous contrle.

Zonede
commandespour
agirsurun
ensemblede
machines

Zoned'affichagedes
cransdes
machinessous
contrle(serveurs)

Dmarrage
En phase de dmarrage, la zone d'affichage des crans montre une barre de
progression qui indique que le client recherche les postes serveurs surveiller.
Tant qu'aucune machine n'est trouve ou accepte la connexion, la barre
continue s'afficher.

Affichagedesordinateursplacssouscontrle
Ds qu'un ordinateur sous contrle est dmarr, une nouvelle fentre de
visualisation apparat dans la zone d'affichage des crans. Selon les cas, on
voit une capture de l'cran ou alors une icne indiquant que la capture d'cran
est dsactive.

Documentation de Tkontrole

page 24/45

Version du 05/11/2009

Tkontrole version 2.1


La capture d'cran est dsactive

La capture d'cran est active

La fentre de visualisation apporte de nombreuse informations :

Nomde
l'utilisateur
connectsur
l'ordinateur

adresseounom
del'ordinateur
visualis
icneindiquant
quel'ordinateur
atbloqu

icne
indiquantque
l'internetat
bloqu
icneindiquant
quel'ordinateur
estsous
contrle
boutonde
slectiondecet
ordinateur

Agirsurlesordinateurs
Tkontrole permet d'agir soit sur un ordinateur seul, soit sur un ensemble
d'ordinateurs slectionns.

Documentation de Tkontrole

page 25/45

Version du 05/11/2009

Tkontrole version 2.1


Remarque : toutes les actions ne sont pas disponibles pour un ensemble
d'ordinateur (par exemple la prise de contrle).

Agirsurunseulordinateur
Il suffit de cliquer sur la fentre de visualisation (clic
gauche ou droit). Une boite boutons contextuelle
apparat :

Agirsurunensembled'ordinateurs
Il faut d'abord pour cela slectionner les ordinateurs.
Si l'on souhaite agir sur l'ensemble des ordinateurs dmarrs, il suffit de cliquer
sur le bouton Tout disponible sur la gauche de la fentre de Tkontroleclient.

Bien entendu, si l'on appuie sur Annuler , on annule toute


slection dj effectue.
Il est aussi possible de slectionner des ordinateurs un un. Il
suffit pour cela de cliquer sur la case cocher en dessous de la
fentre de visualisation de l'ordinateur.
Il suffit ensuite de choisir le bouton correspondant l'action
dsire pour qu'elle soit applique l'ensemble des
ordinateurs slectionns.

Documentation de Tkontrole

page 26/45

Version du 05/11/2009

Tkontrole version 2.1

Lesdiffrentesactionsdisponibles
ActionRafraichir
Provoque l'affichage d'une nouvelle capture d'cran sur le (ou les) cran
slectionn.

ActionVoirentaillerelle
Provoque l'affichage en taille relle de l'cran de l'ordinateur concern.

ActionVoirlescrans
Provoque l'affichage de l'cran de l'ordinateur slectionn.

ActionEnregistrerlescrans
Dmarre l'enregistrement de toutes les captures d'cran sur le (ou les)
ordinateur slectionn. On peut ensuite revoir l'enregistrement grce la
visionneuse (voir plus loin).
Remarques :
L'enregistrement est constitu de la suite des captures d'crans. Ces captures
sont des images au format gif.
La taille d'une capture est de l'ordre de 50 ko. A raison d'une capture toutes les
10 s, un enregistrement d'une heure a une taille approximative infrieure 20
Mo, donc trs peu !
Les enregistrement sont enregistrs dans le dossier spcifi lors de la
configuration. Dans ce dossier est cr automatiquement un dossier tkontrole.
Dans ce sous-dossier est cr un sous dossier la connexion d'un utilisateur.
Ce sous-dossier est nomm : nom_de_l'utilisateur-nom_de _machine.

ActionPrendrelecontrle
Cela permet de prendre le contrle sur la machine considre.
Remarque : Tkontrole-serveur, quand il reoit cet ordre de la part du client,
dmarre un serveur VNC ddi cette prise de contrle. Le serveur est
automatiquement arrt quand le contrle prend fin.

ActionFaireunedmo
Cette fonctionnalit permet d'envoyer une dmonstration (aux) l'ordinateur
slectionn. C'est dire que l'ordinateur slectionn voit tout ce qui se passe
sur l'cran du poste de contrle (Tkontrole-client).
Pour mettre fin la dmo, il suffit d'appuyer sur le bouton
Documentation de Tkontrole

page 27/45

Version du 05/11/2009

Tkontrole version 2.1


Remarque : Tkontrole-client dmarre un serveur VNC pour faire cela. Le
serveur est coup automatiquement l'arrt de la dmo.

ActionBloquerlesmachines
Provoque l'apparition d'une image sur l'cran (par
dfaut un panneau ordinateur bloqu ).
L'utilisateur ne peut plus utiliser son ordinateur
jusqu'au dblocage.

ActionGrerl'internet
Provoque le blocage ou le dblocage de l'internet.
L'utilisateur ne peut plus naviguer sur la toile jusqu'au dblocage.
Remarque : il existe des exceptions, que l'on peut voir machine par machine en
cliquant sur le bouton Exceptions. La fentre suivante apparat alors.

Depuis cette fentre, on peut voir quels


sont les sites interdits en permanence,
c'est dire quel que soit le blocage de
l'internet, ainsi que les sites autoriss
en permanence.
On peut facilement ajouter un site dans
l'une ou l'autre des listes, et tendre
l'ensemble des machines slectionnes.

Documentation de Tkontrole

page 28/45

Version du 05/11/2009

Tkontrole version 2.1


ActionGrerleslogiciels
Permet de visualiser les applications,
logiciels, excutables qui sont
actuellement interdits sur la machine, et
de voir l'ensemble des applications qui
sont en fonctionnement l'instant
d'apparition de la fentre.
Il est alors possible de lever des
interdictions ou d'en ajouter d'autres, et
mme d'tendre les choix l'ensemble
des machines slectionnes.

ActionEcrire
Permet d'envoyer un message la (ou les) machine slectionne.
Une fentre s'ouvre, permettant de saisir le message.
Une fois saisi, il suffit de cliquer sur le bouton
Envoyer .
Le destinataire reoit le message, qui s'affiche dans
une fentre semblable :
Il est inform du nom de l'auteur du message (sur
le bandeau orange).

ActionEteindre
Provoque l'arrt, le redmarrage ou la dconnexion du (ou des) ordinateurs
slectionn(s). Une fentre permet au pralable de choisir
l'action voulue.
Remarque : l'utilisateur de la machine qui reoit l'ordre de
s'arrter ou de se dconnecter n'a pas possibilit de
contrler l'arrt. Donc, il faut bien faire attention ce que
son travail soit enregistr avant !

Documentation de Tkontrole

page 29/45

Version du 05/11/2009

Tkontrole version 2.1


ActionVoirinfos
Provoque l'affichage d'une fentre donnant un
certain nombre d'informations sur l'ordinateur sur
lequel est install Tkontrole-Serveur :

Nom de la machine et adresse

Nom de l'utilisateur

Rpertoires utiliss

Niveau de scurit du serveur

Informations de version

Remarque : le nombre d'information sera rduit si


le serveur Tkontrole utilis est de version
antrieure la version de Tkontrole-Client.

Documentation de Tkontrole

page 30/45

Version du 05/11/2009

Tkontrole version 2.1

Comportementduserveurquandleclientest
arrt
Les postes placs sous contrle (les serveurs) qui taient bloqus sont
automatiquement dbloqus.
Par contre, le reste du paramtrage actuel reste tel qu'il tait, tant que
l'ordinateur sur lequel est install le serveur n'est pas redmarr.
En d'autres thermes, il est possible de fixer la configuration des postes depuis
le poste de contrle, puis de quitter Tkontrole-Client tout en conservant le
paramtrage actuellement en cours sur les postes placs sous contrle.

Comportementduclientquandleserveurest
redmarr
C'est le cas par exemple quand on a bloqu un poste et que l'utilisateur de cet
ordinateur dcide de redmarrer l'ordinateur, pensant chapper au blocage.
Tant que le poste de contrle reste actif, c'est dire que le client fonctionne, il
y a mmorisation de l'tat de chaque poste plac sous contrle. Ainsi, quand
l'ordinateur de l'utilisateur sera redmarr, il se retrouvera nouveau sous
contrle du client qui imposera automatiquement nouveau le blocage ! Il en
est de mme pour les autres actions, telles que l'enregistrement, la prise de
contrle ou le blocage de l'internet.

Documentation de Tkontrole

page 31/45

Version du 05/11/2009

Tkontrole version 2.1

Revoirunesquenceenregistre
Des captures d'un ou plusieurs ordinateurs ont t enregistres.
Pour les revoir, il suffit de faire apparatre la visionneuse en cliquant sur le
bouton

L'illustration ci-dessous montre les diffrentes commandes et fonctions de


cette visionneuse.

Commandes
dela
visionneuse

Slectionde
lasquence

Slectionde
l'imagededbut
desquence

Slectiondela
temporisation
entre2images

Il suffit de slectionner la machine et l'utilisateur puis d'appuyer sur lecture .


ventuellement, on peut se dplacer dans la squence en slectionnant une
image dans la zone de slection prvue.

Documentation de Tkontrole

page 32/45

Version du 05/11/2009

Tkontrole version 2.1

Annexes

Documentation de Tkontrole

page 33/45

Version du 05/11/2009

Tkontrole version 2.1

Architecturedulogiciel
Le diagramme ci-dessous montre que le logiciel est compos d'un client et d'un
serveur, techniquement dcompos en 2 modules : serveur et esclave du
serveur. Cette architecture, nouvelle depuis la version 2.0 est impose pour le
portage sous Windoze Vista.

Postede
contrle
Tkontroleclient

Poste
contrler1
TCP/IP

requteset
rponsesaux
requtes

Tkontroleserveur
moduleprincipal
TCP/IP

changedetouteaction
ncessitantl'espace
utilisateur(interractions
graphiquessurtout)

Tkontroleserveur
moduleesclave
requteset
rponsesaux
requtes
(TCP/IP)

Excutdans
l'espace
administrateurou
services

Excutdans
l'espaceutilisateur

Poste
contrler2
Poste
contrler3
Poste
contrler4

Documentation de Tkontrole

page 34/45

Version du 05/11/2009

Tkontrole version 2.1

FormatdufichierTkontroleserveur.cfg
Utilit
Ce fichier permet de configurer le serveur Tkontrole.

Syntaxedufichier
Les commentaires sont prcds du signe #.

Exemple
####################################################################
#Programme crit par V. Verdon
#TKontrole est un utilitaire de surveillance d'ordinateurs
#plac sous licence GNU GPL (consulter le fichier joint intitul "licence.txt"
####################################################################
# TKontrole version 2.1
# Fichier de configuration du serveur
# Adresse sur laquelle le serveur coute
# Si la valeur est vide, alors la premire interface rseau est utilise
set ip_serv {}
# Adresse du serveur d'administration de Tkontrole (maj notamment)
set ip_admin {}
#set ip_admin 192.168.0.1
# Adresses de clients acceptes
set ip_accept {10. 172. 192.}
# Port utilis par Tkontrole
set port 4444
# Port utilis par VNC depuis Tkontrole
set port_vnc 4445
# Affichage d'une info indiquant que le poste est surveill
# valeurs possibles : 2 (affichage d'une boite d'info la connexion), 1 (affichage d'un bandeau permanent) ou 0 (pas
d'affichage)
set info_surv 2
# Message affich indiquant que le poste est surveill
set message_surv "Cet ordinateur est plac sous surveillance"
# tat de l'nternet par dfaut : 1=bloqu (pas d'internet) , 0=dbloqu
set blocage_route_init 0
# liste des ports a bloquer en mode blocage de l'internet : t pout tcp, u pour udp (sans effet sous Win98-Me)
# ajouter eventuellement le port du proxy s'il existe
set firewall(liste_ports_bloques) {21t 21u 25t 80t 80u 110t 110u 443t 443u}
# liste des sites interdits de manire permanente
set firewall(liste_url_interdites) {http://pasbo.com www.framasoft.net}
# liste des sites autoriss de manire permanente
set firewall(liste_url_autorisees) {www.vv.fr www.pianos.com.fr}
# liste de programmes qui doivent tre interdits par dfaut
set liste_exe_interdits {gedit notepad.exe}
# Mettre ce paramtre 1 pour avoir la console de dbuggage
set debug 1

Documentation de Tkontrole

page 35/45

Version du 05/11/2009

Tkontrole version 2.1


# Ne pas modifier en dessous de cette ligne ... sauf si vous savez ce que vous faites !
#######################################################################
switch $::os {
{nt} {
# config Win NT2000 et XP
set exe_arret {$::rep/bin/shutdown.exe -u -f}
set exe_deconnexion {$::rep/bin/shutdown.exe -l -f}
set exe_redemarrage {$::rep/bin/shutdown.exe -r -f}
set exe_capture {$::rep/bin/capture_ecran_gif.exe $::rep_tmp/$::fic_capture}
set exe_kill {$::rep/bin/kill.exe}
set exe_vncviewer {$::rep/bin/vncviewer.exe $ip:$::port_vnc FullScreen=1}
set exe_vncserver {$::rep/bin/winvnc4.exe SecurityTypes=None Hosts=+$ip/255.255.255.255
PortNumber=$::port_vnc NeverShared=1 DisableClose=1 DisableOptions=1}
set exe_unzip_maj {$::rep/../commun/bin/unzip.exe $::rep_tmp/maj.zip -d $::rep_tmp/maj}
set rep_tmp $env(temp)
}
{98} {
# config Win 95 98 et Me
set exe_arret {$::rep/bin/arreter.exe}
set exe_deconnexion {$::rep/bin/deconnecter.exe}
set exe_redemarrage {$::rep/bin/redemarrer.exe}
set exe_capture {$::rep/bin/capture_ecran_gif.exe $::rep_tmp/$::fic_capture}
set exe_kill {$::rep/bin/kill.exe}
set exe_vncviewer {$::rep/bin/vncviewer.exe $ip:$::port_vnc FullScreen=1}
set exe_vncserver {$::rep/bin/winvnc4.exe SecurityTypes=None Hosts=+$ip/255.255.255.255
PortNumber=$::port_vnc NeverShared=1 DisableClose=1 DisableOptions=1}
set exe_unzip_maj {$::rep/../commun/bin/unzip.exe $::rep_tmp/maj.zip -d $::rep_tmp/maj}
set rep_tmp $env(temp)
}
{vista} {
# config Vista
set exe_arret {$::rep/bin/shutdown.exe -u -f}
set exe_deconnexion {$::rep/bin/shutdown.exe -l -f}
set exe_redemarrage {$::rep/bin/shutdown.exe -r -f}
set exe_capture {$::rep/bin/capture_ecran_gif.exe $::rep_tmp/$::fic_capture}
set exe_kill {$::rep/bin/kill.exe}
set exe_vncviewer {$::rep/bin/vncviewer.exe $ip:$::port_vnc FullScreen=1}
set exe_vncserver {$::rep/bin/winvnc4.exe SecurityTypes=None Hosts=+$ip/255.255.255.255
PortNumber=$::port_vnc NeverShared=1 DisableClose=1 DisableOptions=1}
set exe_unzip_maj {$::rep/../commun/bin/unzip.exe $::rep_tmp/maj.zip -d $::rep_tmp/maj}
set rep_tmp $env(temp)
}
{linux} {
# config Linux
set exe_arret {/sbin/halt}
set exe_deconnexion {$::rep/bin/deconnecter.sh}
set exe_redemarrage {/sbin/reboot}
set exe_capture {$::rep/bin/capture.sh $::rep_tmp/tmp $::rep_tmp/$::fic_capture}
set exe_kill kill
# avec RealVnc, on crit addr:port
set exe_vncviewer {vncviewer $ip:$::port_vnc}
# avec TightVnc, on crit addr::port
# set exe_vncviewer {vncviewer $ip::$::port_vnc}
set exe_vncserver {x11vnc -display :0 -rfbport $::port_vnc -allow $ip}
set exe_unzip_maj {unzip $::rep_tmp/maj.zip -d $::rep_tmp/maj}
set rep_tmp /tmp
}
{inconnu} {
# config autres Unix ?
# config Linux
set exe_arret {/sbin/halt}
set exe_deconnexion {$::rep/bin/deconnecter.sh}
set exe_redemarrage {/sbin/reboot}
set exe_capture {$::rep/bin/capture.sh $::rep_tmp/tmp $::rep_tmp/$::fic_capture}
set exe_kill kill
# avec RealVnc, on crit addr:port

Documentation de Tkontrole

page 36/45

Version du 05/11/2009

Tkontrole version 2.1

set exe_vncviewer {vncviewer $ip:$::port_vnc}


# avec TightVnc, on crit addr::port
# set exe_vncviewer {vncviewer $ip::$::port_vnc}
set exe_vncserver {x11vnc -display :0 -rfbport $::port_vnc -allow $ip}
set exe_unzip_maj {unzip $::rep_tmp/maj.zip -d $::rep_tmp/maj}
set rep_tmp /tmp
}

# Nom du fichier temporaire de capture


set fic_capture capture.gif
# Nom du fichier temporaire de message
set fic_message message.txt

Documentation de Tkontrole

page 37/45

Version du 05/11/2009

Tkontrole version 2.1

Formatdufichiertkontroleclient.cfg
Utilit
Ce fichier permet de configurer le client Tkontrole.

Syntaxe
Les commentaires sont prcds du signe #.

Exemple
#Programme crit par V. Verdon
#TKontrole est un utilitaire de surveillance d'ordinateurs
#plac sous licence GNU GPL (consulter le fichier joint intitul "licence.txt"
####################################################################
# TKontrole version 2.0
# Fichier de configuration du client
# Port utilis par Tkontrole
set port 4444
# Port utilis par VNC depuis Tkontrole
set port_vnc 4445
# Mot de passe de connexion
# S'il est inexistant ct serveur (absence du fichier "pass" ou vide), le mot de passe ci-dessous n'a aucune
importance
set password {essai}
# Rpertoire personnel o seront stockes les donnes
# si on met ~ : pointe automatiquement vers le dossier "mes documents"
# set rep_home h:/
set rep_home ~
# Liste des ordinateurs surveiller
# set liste_ip {amphitheatre}
# set liste_ip {{b130p0<1 9>} {b130p<10 15>} }
# set liste_ip {{$ip(a).$ip(b).$ip(c).<1 15>}}
# set liste_ip {{b130p0<1 9>} {b130p<10 15>}}
set liste_ip {127.0.0.1 192.168.0.4 10.0.2.15}
# La rsolution de noms doit utiliser Netbios en plus de DNS (Unix/Linux uniquement)
set netbios 1
# ce paramtre dfinit si on fait la capture d'cran par dfaut (1) ou non (0)
set etat_visu_defaut 1
# Dlai entre 2 captures d'cran en seconde
set tempo(regen) 10
# Dlai entre 2 recherches de serveurs TKontrole en seconde
set tempo(scan) 15
# valeur de rduction pour la visualisation des crans (de 2 10)
set reduction 7
# Mettre ce paramtre 1 pour avoir l'affichage des messages d'erreurs et autres
set debug 1
# Ne pas modifier en dessous de cette ligne ...
# sauf si vous savez exactement ce que vous faites !
#########################################################

Documentation de Tkontrole

page 38/45

Version du 05/11/2009

Tkontrole version 2.1


# options concernant la recherche de serveurs dispo.
# Il peut tre ncessaire d'augmenter cette valeur si le serveur ne rpond pas (WinXP notamment)
# temps en milliseconde
set tempo(recherche) 100
switch $tcl_platform(os) {
{Windows NT} {
# config Win NT2000 et XP
set exe_vncviewer {$::rep/bin/vncviewer.exe $::don($s,ip):$::port_vnc}
set exe_demo {$::rep/bin/winvnc4.exe SecurityTypes=None Log=*:stdout:10 Hosts=$l_ip_m
PortNumber=$::port_vnc AlwaysShared=1 AcceptPointerEvents=0 AcceptKeyEvents=0 AcceptCutText=0}
set exe_kill {$::rep/bin/kill.exe}
set rep_tmp $env(temp)
}
{Windows 95} {
# config Win 95 98 et Me
set exe_vncviewer {$::rep/bin/vncviewer.exe $::don($s,ip):$::port_vnc}
set exe_demo {$::rep/bin/winvnc4.exe SecurityTypes=None Log=*:stdout:10 Hosts=$l_ip_m
PortNumber=$::port_vnc AlwaysShared=1 AcceptPointerEvents=0 AcceptKeyEvents=0 AcceptCutText=0}
set exe_kill {$::rep/bin/kill.exe}
set rep_tmp $env(temp)
}
{Linux} {
# config Linux
set exe_vncviewer {vncviewer $::don($s,ip):$::port_vnc}
set exe_demo {x11vnc -display :0 -shared -viewonly -forever -rfbport $::port_vnc -allow $l_ip}
set exe_kill kill
set rep_tmp /tmp
}
{default} {
# config autres Unix ?
set exe_vncviewer vncviewer
set exe_demo {x11vnc -display :0 -shared -viewonly -forever -rfbport $::port_vnc -allow $l_ip}
set exe_kill kill
set rep_tmp /tmp
}
}

Documentation de Tkontrole

page 39/45

Version du 05/11/2009

Tkontrole version 2.1

Techniquedeblocagedel'internet
Linux
Utilisation du firewall intgr netfilter (iptables). La configuration gnrale du
parefeu n'est pas modifie. Les rgles suivantes sont ajoutes :

Blocage permanent en sortie de chaque url indique dans


firewall(liste_url_interdites).

Ouverture permanente en sortie de chaque url indique dans


firewall(liste_url_autorisees).

Blocage temporaire (lors de la demande de blocage de l'internet) en


sortie de chaque port indiqu dans firewall(liste_ports_bloques).
Dans le cas d'utilisation d'un proxy, on peut bloquer l'internet uniquement en
tout ou rien, en mettant le port du proxy dans firewall(liste_ports_bloques).

Windoze98Me
Il n'y a pas de firewall disponible pour cet OS. Les possibilits sont donc trs
limites.
On redirige la route par dfaut vers l'adresse de la machine elle-mme, ce qui
permet un blocage en tout ou rien.
Pour cette raison, les paramtres firewall(liste_ports_bloques),
firewall(liste_urls_interdites) et firewall(liste_urls_autorisees) ne sont pas pris
en compte avec Win98-Me.
Dans le cas d'utilisation d'un proxy, le blocage de l'internet ne fonctionne pas,
dsol !

WindozeNTXP
Utilisation du firewall wipfw. La configuration gnrale du parefeu n'est pas
modifie. Les rgles suivantes sont ajoutes :

Blocage permanent en sortie de chaque url indique dans


firewall(liste_url_interdites).

Ouverture permanente en sortie de chaque url indique dans


firewall(liste_url_autorisees).

Blocage temporaire (lors de la demande de blocage de l'internet) en


sortie de chaque port indiqu dans firewall(liste_ports_bloques).
Dans le cas d'utilisation d'un proxy, on peut bloquer l'internet uniquement en
tout ou rien, en mettant le port du proxy dans firewall(liste_ports_bloques).
Au dmarrage, Tkontrole-Serveur paramtre galement automatiquement le
Documentation de Tkontrole

page 40/45

Version du 05/11/2009

Tkontrole version 2.1


parefeu intgr Windoze de faon ouvrir les ports utiliss par Tkontrole
(4444 et 4445 par dfaut).

WindozeVista
Utilisation du firewall intgr advfirewall.
La configuration gnrale du parefeu en sortie est modifie lors du blocage de
l'internet (politique de blocage par dfaut de tout ce qui sort) : en effet, c'est le
seul moyen avec ce parefeu de bloquer les sorties en gnral, tout en
permettant l'accs certaines urls.
Pour cette raison, le paramtre firewall(liste_ports_bloques) n'est pas pris en
compte avec Vista.
Les rgles suivantes sont ajoutes :

Blocage permanent en sortie de chaque url indique dans


firewall(liste_url_interdites).

Ouverture permanente en sortie de chaque url indique dans


firewall(liste_url_autorisees).

Ouverture permanente en entre des ports utiliss par Tkontrole (4444


et 4445 par dfaut).

Ouverture permanente du port DNS et de quelques autres ports vitaux.


Il est ncessaire d'ajouter dans la liste firewall(liste_url_autorisees) les adresses
des machines offrant des services qui ne doivent pas tre interrompus (serveur
de fichier, contrleur de domaine,...), sans quoi, lors du blocage de l'internet,
ces services ne seront plus accessibles.
Dans le cas d'utilisation d'un proxy, on peut bloquer l'internet uniquement en
tout ou rien, sans configuration particulire.

Documentation de Tkontrole

page 41/45

Version du 05/11/2009

Tkontrole version 2.1

ProtocoleutilisparTkontrole
Versionsduprotocole
La version du protocole est 1.2 depuis Tkontrole 2.1
Tous les transferts sur le socket se font avec fin de ligne en cr+lf.

Compatibilitaveclesversionsantrieures
Le protocole actuel assure une compatibilit descendante entre un client en
version 2.1 et un serveur d'une version prcdente (1.xx ou 2.0x)

Descriptionduprotocoledeconnexionauserveur
1) Quand la connexion est tablie, il y a contrle par le serveur de l'ip du client,
avec rejet ventuel si l'adresse n'est pas dans la liste "ip_accept". Dans ce cas,
le serveur ferme le socket aprs avoir envoy le mot "refus" au client.
Si le serveur est configur avec un mot de passe non vide (crit dans le fichier
pass du dossier de Tkontrole-serveur), alors le serveur envoie au client une clef
de cryptage de 2 caractres. Le client doit alors crypter le mot de passe 2 fois,
en utilisant la clef ts puis la clef envoye par le serveur l'aide du
cryptage DES, puis renvoyer le mot de passe au serveur qui valide ou non la
connexion. Si la connexion est refuse, le serveur ferme le socket aprs avoir
envoy le mot "refus" au client.
Dans tous les cas, si la connexion est accepte, le mot "ok" est envoy et la
connexion se poursuit.
2) Attente par le serveur du nom de l'utilisateur connect sur le client.
3) Le serveur se met alors en coute du client sur le socket attribu. Il
reconnait alors les commandes dcrites dans le paragraphe suivant.

Commandes
capture :
Provoque l'envoi au client d'une capture d'cran.
Le serveur envoie dans un premier temps la taille de la capture en octets, puis
le fichier est envoy en mode binaire. L'image transmise est au format gif .
blocage+ :
Le serveur provoque l'affichage en premier plan d'une image cran bloqu .
le blocage d'cran reste actif tant qu'il n'est pas annul par la commande
blocage- ou que le dernier client est dconnect.
blocage- :
Cette commande provoque la destruction de l'image cran bloqu .
Documentation de Tkontrole

page 42/45

Version du 05/11/2009

Tkontrole version 2.1


message :
Envoi d'un message du client vers le serveur.
Le client envoie le message sous forme d'un fichier texte. La taille du fichier est
envoye en premier lieu, puis le fichier lui-mme.
version :
Le serveur renvoie le numro de version en format texte.
controle+ :
Provoque le dmarrage d'un serveur VNC permettant la prise de contrle de
l'ordinateur par le client. Le serveur VNC est dmarr sans authentification par
mot de passe, mais est uniquement disponible pour l'adresse IP du client qui en
fait la demande.
controle- :
A rception de cette commande, le serveur stoppe le serveur VNC qui permet
la prise de contrle.
login :
Cette commande provoque l'envoi du nom de la personne connecte sur le
serveur l'instant de cette requte. Si aucun utilisateur n'est connect, alors 0
est renvoy. Cette commande existe toujours mais est dsute partir de la
version 2.0 de Tkontrole, qui rcupre le login par la commande etat.
arret :
Provoque l'arrt de l'ordinateur serveur.
redemarrage :
Provoque le redmarrage de l'ordinateur serveur.
deconnexion :
Provoque la dconnexion de l'utilisateur sur l'ordinateur serveur.
blocageroute+ :
Cette commande a pour but de couper l'accs l'internet sur le poste serveur.
blocageroute- :
cette commande restaure l'accs l'internet.
etat :
Provoque l'envoi de renseignement sur l'tat actuel du serveur. Les
informations sont renvoyes sous la forme d'une liste de paire de mots : le
premier mot indique le paramtre considr, le deuxime donne l'tat actuel
du paramtre.
En version 2.1 de Tkontrole, les paramtres envoys sont :

blocage_route
>>>>
peut valoir 0 ou 1
Documentation de Tkontrole

page 43/45

Version du 05/11/2009

Tkontrole version 2.1

controle
>>>>
peut valoir 0 ou 1
blocage
>>>>
peut valoir 0 ou 1
login
>>>>
mme effet que la requte login
liste_url_interdites
>>>>
contient la liste des sites qui sont
actuellement interdits en permanence
liste_url_autorisees
>>>>
contient la liste des sites qui sont
actuellement autoriss en permanence
liste_exe_interdits
>>>>
contient la liste des excutables qui
sont actuellement interdits

demo+ :
Quand le client envoie au serveur cette commande, c'est dans le but de faire
une dmonstration.
Le client dmarre un serveur VNC sans authentification par mot de passe, mais
uniquement disponible pour les adresses IP des serveur Tkontrole qui sont
cibls par le client Tkontrole.
Le serveur Tkontrole, quand il reoit l'ordre, dmarre un client VNC.
demo- :
Provoque l'arrt du client VNC permettant de suivre la dmo envoye par le
client Tkontrole.
exec :
cette commande provoque l'excution du programme pass en argument, dans
la mesure o le programme existe bien sr. Le client reoit alors en retour le
contenu de la sortie du programme.
script :
c'est la mme chose que la commande exec, sauf que dans ce cas, c'est un
script Tcl qui est excut directement par le serveur. On peut ainsi accder aux
procdures et variables de Tkontrole-Serveur (non document pour le moment,
il faut regarder le code...).
infos :
Renvoie au client un certain nombre d'informations qui ne sont pas renvoyes
par la commande etat. Les informations sont renvoyes sous la forme d'une
liste de paire de mots : le premier mot indique le paramtre considr, le
deuxime donne l'tat actuel du paramtre.
exe- :
Provoque l'interdiction d'excution de l'excutable pass en argument jusqu'
son annulation par la commande exe+.
exe+ :
Annule la commande exe-. On indique en argument l'excutable autoriser
nouveau.

Documentation de Tkontrole

page 44/45

Version du 05/11/2009

Tkontrole version 2.1


url++ :
Autorise l'URL passe en argument, mme si le blocage de l'internet est activ.
url+- :
Annule l'effet de la commande url++. On indique en argument l'URL ne plus
autoriser en permanence.
url-+ :
Interdit l'URL passe en argument, mme si l'internet n'est pas bloqu.
url-- :
Annule l'effet de la commande url-+. On indique en argument l'URL ne plus
interdire en permanence.
processus :
le serveur renvoie la liste de tous les processus sous la forme pid suivi du nom
de processus. Suivant les cas (notamment l'OS), le nom de processus contient
le chemin complet ou seulement l'excutable
fin :
Le client annonce qu'il veut stopper la connexion. Provoque la fermeture du
socket concern sur le serveur. Cette commande permet de clore correctement
une connexion, notamment d'annuler le blocage du serveur si plus aucun client
ne reste connect.

Documentation de Tkontrole

page 45/45

Version du 05/11/2009