i
EPIGRAPHE
« L'important n'est pas ce que vous faites, mais ce que vous
avez fait de ce qu'on
a fait de vous ».
Socrate
ii
DEDICACE
A vous mon adorée maman Myriam NDRODHA Zave Denise pour
votre soutient ; A mon regretté papa SENGA
A mes frères et soeurs, cousins et cousines, oncles et
tantes;
A mes chers camarades, précieux frères et
soeurs.
Je dédie ce travail
SENGA LOBO Patrick
iii
REMERCIEMENTS
Nous tenons à remercier Dieu de sa protection qu'il
nous a apportée durant les 5 ans d'études universitaires. Que son
nom soit grandement loué.
Nous tenons aussi à remercier sincèrement le Dr.
Osée Muhindo MASIVI, directeur de ce modeste mémoire, de son
attention et intérêt accordés à notre projet. Qu'il
trouve ici notre profonde gratitude et le doctorant Amir Gulzar pour son
précieux soutien.
Nos remerciements à toutes les autorités
administratives ainsi que le corps professoral de l'Université
Adventiste de Lukanga, de leur encadrement tant moral, intellectuel que
spirituel.
Nous ne saurons conclure sans remercier les familles, Atsongya,
Dejiba, et Alida
Notre gratitude s'adresse également à mes
frères et soeur Fiston Senga, Solange Zawadi, Gertrude Senga, Tambwe,
Christelle Mave, Feza Lukwila, Dido Atsongya, Nelly Atsongya, Charmante
Atsongya, Da Nounou, Bahati Zave, Faida, Jules, Heritier.
Que nos amis Thierry Jiba , Chirac Ruhamya , Benjamin Kodjo,
Ezechiel Kituta, Nathalie Furaha, Osee Muvunga, Merveille Wanzire, Mbangale,
Kyusa, Katuka, Simeti, Matika, Patrick Tsongo, Christelle, Charly, Gentine,
Freddy Dhelo, Grace, Mireille, Alpha, Akenda, Sam, Olivier, Ike, Giscard,
Christian, Bego, Coby, Trésor, Alain, David, Bertin, Ali, Julien,
Sylvin, Bosso, Joel, Kibondo Roger et tous les joueurs de l'université
trouvent ici notre sentiment de gratitude.
Recevez toute notre reconnaissance pour votre incessant
soutien.
RESUME
Ce travail a analysé les problèmes
d'optimisation de la gestion de la bande passante du réseau de
l'Université adventiste de Lukanga. Des modèles sous forme de
diagrammes utilisés en ont été analysés en vue
d'être adaptés et exploités pour la conception et la mise
en place de nos serveurs notamment de fichiers et serveur proxy. Apres les
analyses de la façon dont le réseau de l'Uniluk est
géré, les modèles de résolution du problème
de téléchargement des fichiers et de la gestion des sites ont
été juges applicables au champ d'étude.
Ainsi, pour mener à bien notre recherche, la technique
de modélisation des systèmes informatique UML
(UnifiedModelingLanguage) sera intensivement utilisée avec la
deuxième approche. En outre, nous allons user de la documentation pour
nous compléter dans les archives de ce travail.
Au finish, deux serveurs ont a été mis en place
et testés. Les résultats des tests prouvent une nette
amélioration dans la façon de télécharger les
fichiers et la gestion de sites au moment opportun. Toutefois, le travail n'a
traité le problème que dans une partie de dimension des
serveurs.
iv
Mots clés : Serveur, Proxy, Samba,
Squid.
v
ABSTRACT
This work has analyzed the problems of optimizing the
management of the network bandwidth of the Adventist University of Lukanga.
Models in the form of diagrams used were analyzed in order to be adapted and
used for the design and implementation of our servers including files and proxy
server. After analysis of how the network is managed Uniluk, models solving the
problem of downloading files and site management were judges applicable field
of study.
Thus, to carry out our research, the technique of computer
systems modeling (UML UnifiedModelingLanguage) will be used extensively with
the second approach. In addition, we will use the documentation to complete us
in the archives of this work. At the end, two servers was implemented and
tested. Test results show a marked improvement in how to download files and
site management in a timely manner. However, the work has dealt with the
problem in some dimension of servers.
Keywords: Server, Proxy, Samba, Squid.
vi
LES ABREVIATIONS
TCP/IP : Transmission Control Protocol/ Internet Protocol
HTTP : HyperText Transfer Protocol
AIX : Advanced Interactive Executive
BSD : Berkeley Software Distribution
UML : Unified Modeling Language
MERISE : Méthode d'Etude et de Réalisation
Informatique pour les Systèmes d'Entreprise
MAC : Medium Access Control
ACL : Access Control List
MKDIR : Make Directory
IP : Internet Protocol
CIFS : Common Internet File System
SMB : Server Message Block
PDC : Primary Domain Controller
DVD : Digital Versatil Disk
CD : Compact Disc
GPL : General Public License
FTP : File Transfer Protocol
SMTP : Simple Mail Transfer Protocol
POP : Post Office Protocol
LDAP : Lightweight Directory Access Protocol
DNS : Domain Name Server
DHCP : Dynamic Host Configuration Protocol
LSA : Local System Authority
NFS : Network File System
SWAT : Samba Web Administration Tool
vii
LISTE DES FIGURES
Figure no1 : serveur proxy 8
Figure no2 : serveur proxy avec service cache 9
Figure no3 : serveur proxy avec service de filtre et journal
10
Figure no4 : serveur proxy avec service d'authentification
10
Figure no5: Axes de l'UML 18
Figure no6 : diagramme d'activité pour
télécharger le fichier 24
Figure no7 : diagramme d'activité pour le proxy 25
Figure no8: Enchainement alternatif 27
Figure no9 : Diagramme d'activité pour le
téléchargement de fichier 28
Figure no10: Diagramme de classe pour le
téléchargement de fichier 31
Figure no11: Diagramme d'états pour un utilisateur
32
Figure no12: Diagramme d'états pour une requête
33
Figure no14: Attribution des dossiers aux utilisateurs 36
Figure no15: Topologie 41
Figure no16: Architecture du reseau local 42
Figure no17: Diagramme de deploiemement 43
Figure no18: Fenetre du Serveur 44
Figure no19: Login 44
Figure no20: script de filtre de site web 46
Figure no21: Interdiction par IP 47
Figure no22: Detail du Serveur 48
Figure no 23: Architecture client-Serveur 49
Figure no24: Fenetre de login incorrect 50
Figure no25 : le répertoire des enseignants 50
Figure no26: Fenetre de dossier des étudiants 51
Figure no27: Interface de site bloqué (
www.porno.com) 52
Figure no28: Interface de site bloqué (
www.sexe.com) 52
viii
TABLE DES MATIERES
EPIGRAPHE i
DEDICACE ii
REMERCIEMENTS iii
RESUME iv
ABSTRACT v
LES ABREVIATIONS vi
LISTE DES FIGURES vii
TABLE DES MATIERES viii
INTRODUCTION 1
Problématique 1
Objectifs 3
Choix et intérêt du sujet 3
Approche méthodologique 4
Delimitation du travail 4
Plan du travail 4
CHAPITRE PREMIER: REVUE DE LITTERATURE 5
I.1. Serveur 5
I.1.1 Serveur Proxy 7
I.1.1.1 Les fonctionnalités d'un serveur Proxy 8
I.2 Utilité 11
I.1.2 Serveur des fichiers 13
I.1.2.1 Fonctionnalité de Samba: 14
I.1.2.2 Interopérabilité de Samba: 15
I.2 Conclusion partielle 16
CHAPITRE DEUXIEME: METHODOLOGIES ET TECHNIQUES DU TRAVAIL 17
II.1 La modélisation 17
II.2 Simulation 20
II.3 Le prototypage 20
II.4 Expérimentation 21
CHAPITRE TROISIEME: CONFIGURATION DU SYSTEME 22
3.1 DIAGRAMME DE CAS D'UTILISATION POUR TELECHARGER LE FICHIER
24
3.2 DIAGRAMME DE CAS D'UTILISATION POUR LE SERVEUR PROXY 25
ix
3.3 DESCRIPTION TEXTUELLE DES CAS D'UTILISATION 26
3.4 ENCHAINEMENT ALTERNATIF 27
3.4 DIAGRAMME D'ACTIVITES POUR TELECHARGER LE FICHIER 28
3.5 DU POINT DE VUE STATIQUE 29
3.5.1 REGLES DE GESTION POUR LE SERVEUR DES FICHIERS 29
3.5.2 REGLES DE GESTION POUR LE SERVEUR PROXY 30
3.6 DIAGRAMMES DES CLASSES 31
3.6.1 Diagramme des classes pour les serveurs 31
3.8 DU POINT DE VUE DYNAMIQUE 32
CHAPITRE IV: PROTOTYPAGE, TEST ET RESULTATS 34
IV.1 Prototype 34
1. Base des données 34
2. Réseau 40
b. Les interfaces principales 43
IV.2 Protocole du test d'expérimentation 48
a. Matériel : 48
IV.3 Résultats 49
CONCLUSION 54
BIBLIOGRAPHIE 55
1
INTRODUCTION
Problématique
Aujourd'hui le monde assiste à un développement
technologique spéculaire si bien qu'il n'est plus ce qu'il a
été au 20ème Siècle, en matière de
technologie, d'efforts personnels mais aussi des recherches innovatrices. En
effet, dans le but de contribuer au développement, à
l'amélioration des conditions de vie; l'homme aspire à un niveau
où l'automatisme soit intégré dans tous les domaines de sa
vie.
En outre, l'homme n'est pas satisfait du standing qu'il occupe
partant des faits que ses besoins sont illimités, il a toujours le souci
d'élargir ses horizons.
En remontant dans l'histoire de l'évolution de
l'informatique, ce 21e siècle a été
nommé "siècle de l'informatique" mais aussi
siècle de vitesse parce qu'en ce siècle l'homme commence
à intégrer l'outil informatique dans la plupart de ses fonctions
telles que dans la télécommunication, le marketing, la gestion,
la sécurité, etc. Tout ceci dans le but de rendre automatique ses
activités, permettre la réalisation des objectifs en y engageant
moins d'efforts. Dans toute entreprise, le partage de données est devenu
une des tâches primordiales dans le souci de rendre tout au clair et
à la portée de tous, et cela se fait à nos jours de
façon automatique grâce aux différents logiciels
placés en réseaux, d'où, nécessité de
l'internet.
Ce pendant, dans la plupart de pays en développement,
le problème de connexion reste une sérieuse difficulté vu
le coût qu'il engage. A nos jours, tout le monde veut se connecter pour
la recherche des différentes informations sur l'internet, une fois
tombé sur un fichier ou un logiciel intéressant qu'il cherchait,
l'internaute cherche à le télécharger. Cette
réalité se fait sentir non seulement dans le pays en
globalité, mais dans les institutions qui utilisent l'internet, comme :
les écoles, églises, hôpitaux, banques, etc. les
institutions universitaires sont les plus concernées étant
données que les étudiants sont plus préoccupés par
les différents travaux pratiques à chercher sur internet, et les
travaux de fin de cycle qui nécessitent dans la plupart de temps une
bonne connexion pour des téléchargements des fichiers à
lire et à citer dans son travail. C'est à ce niveau que l'Uniluk
n'échappe pas à cette réalité de megestion de la
bande passante.
2
En outre, l'informatique est aujourd'hui devenue très
ouverte au monde extérieur du fait de la démocratisation de
l'ordinateur personnel et l'avènement de l'Internet. Ce dernier est un
outil incontournable et il réunit plein d'utilisateurs de part le monde.
On compte environ 1,73 milliards d'utilisateurs (septembre 2009) et
d'après Netcraft, société anglaise
spécialisée dans la sécurité internet, il y aurait
en janvier 2010 plus de 207 millions de sites web dans le monde. L'internet est
alors de plus en plus accessible, mais il recèle de nombreux dangers,
souvent ignorés par beaucoup d'utilisateurs d'où se pose un
problème de sécurité. (Djiby Thiaw 2010).
L'Uniluk n'échappe encore une fois à ce
problème de sécurité en matière d'accès
à certains sites non éthiques par rapport aux visions de
l'institution (sites pornographiques, sites des hackers pour le piratage,
etc.),
Bref, l'UNILUK est confronté à un double
problème qui ne laisse pas ses administrateurs du réseau sans
inquiétude et ses intervenants sous réclamation et plaintes.
Et pourtant plusieurs logiciels et systèmes
d'exploitation ont déjà été conçus pour
pallier aux problèmes d'espèce. Dans cette catégorie
SAMBA, SQUID du géant linux sont les plus célèbres
Malheureusement, il ne suffit pas d'avoir installé ces
services pour en profiter pleinement. Un effort supplémentaire de
conception et de planification de leur optimisation est requis. C'est dans
cette optique que s'inscrit ce travail.
Les réseaux locaux sont fréquemment
reliés à Internet via des passerelles ou routeurs, ils utilisent
le plus souvent le protocole TCP/IP. Dans notre étude, nous allons
utiliser un proxy pour relier notre réseau local de l'Uniluk à
l'Internet. Tous nos utilisateurs vont alors passer par notre proxy pour
l'obtention des fichiers. Notre choix de proxy s'est porté sur la mise
en place du service SQUID qui, en plus d'être libre, est très
souple, léger et facile à mettre en place. Le rôle initial
du serveur proxy ou serveur mandataire est de relayer des requêtes HTTP
entre un poste client et un serveur. En plus de ce rôle, il peut jouer
une fonction de sécurité en constituant une barrière entre
Internet et notre réseau local. (Djiby Thiaw 2010).
Nous utiliserons également SAMBA pour le partage des
fichiers sur le serveur de notre réseau, Samba est une
ré-implémentation libre des protocoles SMB/CIFS sous GNU/Linux et
d'autres variantes d'Unix, initialement développée par
l'australien Andrew Tridgell. Son nom provient du protocole SMB (Server Message
Block), le nom du protocole standard de Microsoft,
3
auquel ont été ajoutées les deux voyelles
a : « SaMBa ». Samba fournit des fichiers et services
d'impression pour divers clients Windows et peut s'intégrer à un
domaine Windows Server, soit en tant que contrôleur de domaine principal
(PDC) ou en tant que membre d'un domaine. Il peut également faire partie
d'un domaine Active Directory. Il fonctionne sur la plupart des systèmes
Unix, comme GNU/Linux, Solaris, AIX et les variantes BSD, y compris Apple, Mac
OS X Server (qui a été ajoutée au client Mac OS X en
version 10.2). Samba est livrée dans presque
Objectifs
Nous sommes parti d'une observation sur la façon dont
les étudiants et/ou les autres utilisateurs du réseau de l'Uniluk
se comportent lorsqu'ils veulent effectuer une recherche sur l'internet et qui
nécessite un téléchargement. Notre objectif primordial est
de mettre en place un serveur mandataire des fichiers qui sera en mesure de
répondre aux critères habituellement utilisés par un
administrateur réseau de l'entreprise
Ici à la fin donc de ce travail, nous aurons
configuré et implanté un serveur mandataire des fichiers au sein
du réseau de l'UNILUK à fin de permettre à
l`administrateur réseau de bien gérer la connexion en
matière de téléchargement de fichiers par les
utilisateurs.
Choix et intérêt du sujet
Le choix du sujet était motivé par le fait que
la plupart d'entreprises actuelles utilisent toutes, le réseau internet.
A ce stade l'Uniluk n'échappe pas à cette réalité.
C'est pourquoi ce travail vise à faciliter aux utilisateurs du
réseau de télécharger au bon moment voulu et sans une
consommation abusive de la bande passante qui semble ne pas être
suffisante pour répondre aux besoins de tous les utilisateurs comme ils
le voudront. Notre choix de proxy s'est porté sur SQUID qui, en plus
d'être libre, est très souple, léger et facile à
mettre en place. C'est donc une façon d'améliorer la vitesse de
connexion à l'internet au sein du réseau informatique de
l'UNILUK.
4
Approche méthodologique
Pour atteindre nos objectifs, nous avons fait recours a un
certaine nombre des
méthodes.
C'est ainsi que pour notre travail, nous faisons recours aux
méthodes suivantes :
- La méthode documentaire
- La méthode UML
- La technique algorithmique
Delimitation du travail
Nous n'allons pas prétendre tout résoudre, mais
pour ce travail, nous allons seulement nous intéresser au
problème du téléchargement des fichiers et le
problème de sécurité du réseau géré
par le proxy à l'instar de la gestion de site web.
Plan du travail
Hors mis l'introduction du travail qui n'est rien d'autre
qu'une manière de montrer ou préciser aux lecteurs nos choix
méthodologiques, et la conclusion que nous trouvons à la fin du
travail, celui-ci est subdivisé à quatre chapitres.
Dans le premier chapitre, nous passerons en revue quelques
concepts avec leur définition et les résultats obtenus par
d'autres chercheurs au sujet de notre travail de recherche. Le deuxième
chapitre présente la méthodologie que nous allons utiliser pour
mener à bien ce travail de recherche et puis proposer un modèle.
Dans le chapitre troisième, nous modélisons et
implémentons le nouveau système et enfin présenter la
configuration du nouveau système dans le chapitre quatre.
5
CHAPITRE PREMIER:
REVUE DE LITTERATURE
Dans ce chapitre, nous passons en revue les théories,
les méthodes et les résultats obtenus par d'autres chercheurs en
ce qui concerne la mise en place d'un serveur mandataire, et un serveur des
fichiers. Nous nous intéresserons aux concepts de Serveurs, de Proxy et
Samba.
I.1. Serveur
Un serveur est un puissant ordinateur contenant des fichiers
et des ressources partagés avec d'autres ordinateurs sur un
réseau. Selon Basile NKONLA DJONTU (2009), les réseaux
Client/serveur comportent en général plus de dix postes. La
plupart des stations sont des « postes clients », c'est à dire
des ordinateurs dont se servent les utilisateurs, les autres stations sont
dédiées à une ou plusieurs tâches
spécialisées, on dit alors qu'ils sont des serveurs. Les «
postes serveurs » sont en général de puissantes machines,
elles fonctionnent à plein régime et sans
discontinuité.
Autre vue du serveur est que dans une organisation
client-serveur, les clients ne « voient » que le serveur. Le
système d'exploitation du serveur peut être différent de
celui des stations clientes. En tout cas, le système d'exploitation du
serveur doit être véritablement multitâche afin de pouvoir
servir un grand nombre de requêtes en même temps et de façon
équitable, c'est à dire en octroyant le même temps
processeur à chaque client.
En général, les serveurs fonctionnent comme
concentrateur d'un réseau d'ordinateurs reliés et traitent les
requêtes provenant de ces ordinateurs. (Babwine 2011). Pour cet auteur
qui a conçu un serveur proxy avec squid comme service à l'Uniluk,
il a estimé que l'installation d'un serveur Proxy taillé sur
mesure de l'UNILUK et la mise en place d'un réseau local le plus
efficace et efficient constituerait une solution efficace pour
l'amélioration de sa connexion internet. C'est à ce propos qu'il
est arrivé au résultat qui consistait à la mise ne place
d'un serveur proxy de pages web.
6
Plusieurs types de serveurs ont déjà
été réalisés par les différents auteurs,
nous listons quelques uns de ces serveurs avec un bref aperçu de ce
qu'ils sont capables de faire, puis un exemple d'un auteur qui en a fait
usage.
- Serveur de fichiers : utilisé pour
conserver tous les documents ou fichiers dans un emplacement centralisé,
créant une bibliothèque de documents. Lorsque les utilisateurs
veulent utiliser un fichier, celui-ci est extrait du serveur, traité
localement sur le PC de l'utilisateur réenregistré sur le
serveur.
Pour SIMON Robic qui a conçu son serveur des fichiers
avec FreeNAS, à mesure que nos étagères se vident des DVD
et autres CD qui les occupaient avant, nos disques durs se remplissent. La
question du stockage peut se poser rapidement lorsqu'on est un gros
consommateur de contenus et l'idée de se doter d'un serveur peut
très vite germer. De nombreux NAS sont en vente et fonctionnent
dès la sortie de leur boîte.
- Serveur d'impression : il permet
d'accéder à une ou plusieurs imprimantes. Un même serveur
peut être utilisé comme serveur de fichiers et serveur
d'impression.
- Serveur d'application : à l'instar
du serveur de fichier, un serveur d'application est un
référentiel d'information. Il peut par exemple stocker des bases
de données. Mais contrairement au serveur de fichier, un serveur
d'application peut traiter des informations pour fournir uniquement les
données demandées par l'utilisateur/client.
- Serveur de messagerie : un serveur de
messagerie est le « bureau de poste» du réseau, il gère
et stocke les messages, livre le courrier électronique aux ordinateurs
clients ou le conserve pour que les utilisateurs distants puissent y
accéder quand ils le souhaitent.
- Etc.
En effet, la conception et la mise en place de ces
différents serveurs présentent une certaines limites étant
donné qu'ils n'usent pas de tous les services qu'offre un proxy, mais
aussi ces différentes conceptions se faisaient dans des conditions
différentes selon les besoins qui se présentaient aux
différents bénéficiaires desdits serveurs, dans la section
suivante qui traite de Proxy, nous allons passer en revue ces quelques
conditions dans lesquelles ces serveurs proxy ont étés
conçus. C'est à ce propos que pour l'Uniluk, notre travail de
7
recherche essaiera d'intégrer le service de gestion de
fichiers pour optimiser la connexion, donc un serveur de fichiers au sein de
l'Uniluk.
I.1.1 Serveur Proxy
Le proxy est tout d'abord serveur, un serveur proxy aussi
appelé serveur mandataire est à l'origine une machine faisant
fonction d'intermédiaire entre les ordinateurs d'un réseau local
et internet. La plupart du temps le serveur proxy est utilisé pour le
web, il s'agit alors d'un proxy HTTP. Il nous permettra ainsi de gérer
l'accès à internet aux utilisateurs de notre réseau local
en fonction des heures d'accès, des ports de destination d'un service,
d'IP sources, etc. Il permet aussi de mettre en cache les sites les plus
visités afin d'accélérer le trafic. Comme serveur proxy,
nous allons utiliser le serveur SQUID qui est un logiciel libre
distribué selon les termes de la licence GNU GPL. Son rôle initial
est de relayer des requêtes HTTP entre un poste client de notre
réseau local et un serveur web se trouvant sur Internet. Il peut aussi
assurer d'autres fonctions essentielles. (Djiby Thiaw 2002).
Pour Alyck NGOY (2001), un proxy est un serveur informatique
dont le rôle est de servir de relais entre un client (vous) et un serveur
(le site web que vous souhaitez consulter). Les entreprises utilisent
très souvent un proxy afin de pouvoir contrôler les sorties de
leurs employés sur internet.
Autre point de vue sur le proxy est qu'un proxy (serveur
mandataire) est un serveur situé entre un réseau privé et
Internet. Constituant une protection pour le réseau d'une entreprise, il
peut également faire office de cache. Dans ce dernier cas, il enregistre
les pages Web transférées par les utilisateurs pour les
délivrer sans qu'il soit nécessaire de se connecter sur le
serveur initial. Ainsi, lorsqu'un utilisateur se connecte à internet
à l'aide d'une application cliente configurée pour utiliser un
serveur proxy, celle-ci va se connecter en premier lieu au serveur proxy et lui
donner sa requête. Le serveur proxy va alors se connecter au serveur que
l'application cliente cherche à joindre et lui transmettre la
requête. Le serveur va ensuite donner sa réponse au proxy, qui va
à son tour la transmettre à l'application cliente.
La plupart de temps, le proxy est utilisé pour le web,
il s'agit alors d'un proxy HTTP. Toutefois, il peut exister des serveurs proxy
pour chaque protocole applicatif (FTP,...)
Le principe de fonctionnement du proxy est assez simple : il
s'agit d'un serveur « mandaté » par une application pour
effectuer une requête sur l'internet à sa place. Ainsi, lorsqu'un
utilisateur se connecte à internet à l'aide d'une application
cliente configuré pour
8
utiliser un serveur proxy, celle-ci va se connecter au serveur
que l'application cliente cherche à joindre et lui transmettre la
requête. Le serveur va ensuite donner sa réponse au proxy, qui va
à son tour la transmettre à l'application cliente comme dit
ci-haut, l'image suivante montre son fonctionnement par rapport aux clients
:
Figure no1 : serveur proxy
I.1.1.1 Les fonctionnalités d'un serveur
Proxy
- La fonction de cache: la plupart de proxy
assurent ainsi une fonction de cache, c'est à dire la capacité de
garder en mémoire (en cache) les pages ou et fichiers les plus
visités par les utilisateurs du réseau local afin de pouvoir les
leur fournir le plus rapidement possible. En effet, en informatique, le terme
cache désigne un espace de stockage temporaire de données (le
terme de tempo est également parfois utilisé).
Voici le mécanisme à ces mots :
o Le serveur conserve en mémoire toutes les
requêtes effectuées par les clients
o Permet de conserver localement les informations afin
d'être réutilisées ultérieurement
Les conséquences sont telles que :
· Le cache accélère les consultations des
informations déjà demandées
· Le trafic réseau en est diminué
· Réduit les malveillances
9
- La fonction d'enregistrement : Comme tout
serveur qui se respecte, un proxy génère un fichier journal (log
file). On y trouve la trace de toutes les requêtes effectuées par
tous les postes clients dépendant du serveur en question
Figure no2 : serveur proxy avec service cache
- La fonction de filtrage: d'autre part,
grâce a l'utilisation d'un proxy, il est possible d'assurer un suivi des
connexion (logging ou tracking) via la constitution de journaux
d'activité (logs) en enregistrant systématiquement les
requêtes des utilisateurs lors de leurs demandes de connexion a
l'internet. Il est ainsi possible de filtrer les connexions a internet en
utilisant d'une part les requêtes des clients, d'autres part les
réponses des serveurs. lorsque le filtrage est réalisé en
comparant la requête du client à une liste de requêtes
autorisées, on parle de liste blanche. Lorsqu'il s'agit d'une liste de
sites interdits on parle de liste noire. Enfin, l'analyse des réponses
des serveurs conformément a une liste de critères (mots
clés, ...) est appelé filtrage de contenu.
En résumé:
o Il y a mise en place de filtrer au niveau des
requêtes
o Analyse des paquets qu'il reçoit et agit ainsi en
fonction de la politique de sécurité choisie
10
Figure no3 : serveur proxy avec service de filtre et
journal
- L'authentification : dans la mesure
où le proxy est l'intermédiaire indispensable des utilisateurs du
réseau interne pour accéder à des ressources externes, il
est parfois possible de l'utiliser pour authentifier les utilisateurs,
c'est-à-dire de leur demander de s'identifier a l'aide d'un nom
d'utilisateur et d'un mot de passe par exemple. Ce type de mécanisme
lorsqu'il est mis en oeuvre pose bien évidemment de nombreux
problèmes relatifs aux libertés individuelles et aux droits de
personnes.
Figure no4 : serveur proxy avec service
d'authentification
11
- La fonction de reserve-proxy : on appelle
reserve-proxy (en français le terme relais inverse est parfois
employé) un serveur proxy-cache « monté a l'envers »,
c'est a dire un serveur proxy permettant non pas aux utilisateurs
d'accéder au réseau internet, mais aux utilisateurs
d'accéder indirectement a un certains serveurs internes.
Enfin, grâce a des algorithmes perfectionnés, le
serveur-proxy peut server à repartir la charge en redirigeant les
requêtes vers différents serveurs équivalents, on parle
alors de répartition de charge (en anglais load balancing).
I.2 Utilité
Le proxy nous permettra de gérer l'accès
à internet aux utilisateurs de votre parc informatique en fonction des
heures d'accès, des ports de destination d'un service, d'ip sources,
etc. Il permet aussi de mettre en cache les sites visité afin
d'accélérer le trafic.
Au niveau mondial, le proxy s'impose de part son
utilité et ses avantages qu'il offre dans la gestion et administration
de réseau. C'est ainsi que dans son étude sur le pourquoi de
proxy dans une institution scolaire, REJEAN PAYETTE, (2001) a conçu un
proxy qui a permis de répondre aux différentes questions qu'il se
posait, celle de savoir si :
- Pourquoi alors une étude sur l'utilisation des «
Proxy » en milieu scolaire ?
- Pourquoi leur utilisation provoque-t-elle autant de
critiques de la part des enseignants et des conseillers pédagogiques
?
Le résultat qu'il a obtenu a la fin de sa recherche est
qu'il a remarqué que 5.1% de la bande passante totale utilisée
était consommé par des protocoles ayant un lien direct avec
l'audio et la vidéo. C'est une surprise pour tous, car on croyait que
prés de 50% de la bande passante serait utilisé par ces
applications. Apres de nouvelles analyses réalisées, on observe
qu'en une semaine l'utilisation tant de l'audio que de la vidéo consomme
3.4% de la bande passante totale utilisée. On a aussi constaté au
cours de cette même période, que la consommation de FTP est de
2.6%, que la part du courrier électronique (POP, First Class, SMTP) est
de 2.4% et que le protocole WEB demeure en tête de liste avec 72%, et ce
malgré l'utilisation d'un service de cache permettant
d'économiser environ 55% du nombre de requêtes.
Mais aussi, Basile NKONLA DJONTU (2009) de son coté a
implanté un proxy en partant de l'idée selon laquelle dans son
travail, il fallait décrire les besoins de la société
SONIC de la
12
production des chaussures qui trouve toujours des
problèmes au niveau de sécurité Il n'est pas le seul
à pouvoir faire usage de proxy, Djiby Thiaw (2009-2010) un
étudiant au sein de l''École Supérieure Polytechnique qui
fait partie intégrante de l'université Cheikh Anta DIOP de Dakar
a, dans son travail de recherche, fixé comme objectif de mettre en place
un serveur proxy sécurisé avec authentification LDAP, dans le
souci de s'authentifier à chaque connexion.
A la fin de son travail, il a obtenu comme résultat la
mise en place un proxy SQUID sécurisé avec une authentification
des utilisateurs via l'annuaire LDAP. Vu tout ce qui précède,
nous trouvons dans ce travail une seule vision ; celle de la
sécurité. C'est pourquoi, il utilise l'authentification LDAP en
fin que chaque membre de l'institution soit identifié par un login et un
mot de passé pour accéder à l'internet.
Il a résumé ces besoins à ces mots:
· La sécurisation des données.
· Zeroperte des données.
· La fiabilité
· L'intégrité
· Le bon fonctionnement du système d'information.
· L'authentification.
L'idée suggérée pour lui est
d'implémenter un serveur proxy qui a le but pour relayer des
requêtes entre un poste client et serveur, de sécuriser le
réseau local contre les menaces et le vol des données.
Le travail ne sera pas le 1er proxy pour l'UNILUK.
En effet, Lubanga (2010), a réfléchi sur les services minimum que
devrait avoir l'Uniluk pour permettre à toute sa communauté
d'utiliser efficacement le réseau pour réaliser ses travaux
quotidiens et les résoudre le problème des
téléchargements et des partages des fichiers sur le réseau
pour faciliter les dialogues, la transmission des connaissances sur le
réseau informatique de l'Université Adventiste de Lukanga.
Il est ainsi arrivé à concevoir et à mettre
en place un système qui à la fois avait incorporé les
services suivants:
- Serveur web : pour l'envoie et le téléchargement
de fichier sur le réseau ;
13
- Serveur de messagerie : pour l'expédition et la
réception des mails
- Serveur de messagerie instantanée : pour les dialogues
en temps réels sur le réseau ;
- Serveur DNS : pour la traduction du nom de domaine a l'IP
correspondant et vice versa ;
- Serveur DHCP : pour la distribution des adresses
- Serveur proxy : pour les pages web.
Babwine a également conçu le deuxième
serveur proxy pour l'Uniluk, le rôle primordial de son travail est le
cache c'est-à-dire garder les pages HTTP en local et les restituer aux
clients. Il joue aussi le rôle de filtre et de sécurité.
Nous avons vu que SQUID peut bloquer l'accès à un certains
nombres de sites qui vont à l'encontre de la vision et la mission de
l'institution.
Celui-ci avait pour objectifs de :
1. Gérer le réseau local,
2. la sécurité,
3. la confidentialité et
4. l'intégrité
Nous allons pour notre serveur des fichiers créer des
répertoires qui seront protégés par un user name et un mot
de passe pour les utilisateurs
I.1.2 Serveur des fichiers
Nous utilisons le plus célèbre logiciel Samba
pour la configuration de serveurs des fichiers, Samba est une
ré-implémentation libre des protocoles SMB/CIFS sous GNU/Linux et
d'autres variantes d'Unix, initialement développée par
l'australien Andrew Tridgell. Il est sous licence GNU GPL 3. Son nom provient
du protocole SMB (Server message block), le nom du protocole standard de
Microsoft, auquel ont été ajoutées les deux voyelles a
: « SaMBa ». Nous allons dans cette section, appréhender
d'autres notions sur Samba entre autre : ses fonctionnalités et son
interopérabilité.
14
I.1.2.1 Fonctionnalité de Samba:
Samba est la mise en oeuvre d'une dizaine de services et d'une
douzaine de protocoles. Il comprend NetBIOS sur TCP/IP (NBT), SMB, CIFS (un
système de fichier au travers de SMB), DCE/RPC ou, plus
spécifiquement MSRPC. La suite de protocoles du voisinage réseau,
un serveur WINS aussi connu sous le nom de NetBIOS (NBNS). Les protocoles d'un
domaine NT qui comprend l'ouverture d'une session NT, une base de
données Secure Accounts Manager (SAM), un service Local Security
Authority (LSA), un service d'impression (Spoolss) , NTLM et plus
récemment l'ouverture de session Active Directory comprenant une version
modifiée de Kerberos et de LDAP. Samba peut voir et partager des
imprimantes. Samba configure des partages réseaux pour les
répertoires UNIX (y compris le contenu de tous les
sous-répertoires). Ils apparaissent pour les utilisateurs de Windows
comme des dossiers Windows classiques accessibles via le réseau. Les
utilisateurs d'Unix peuvent lire les partages avec le smbclient (libsmb)
installé avec Samba.
Chaque répertoire peut avoir des privilèges
d'accès différents. Par exemple : les répertoires ayant un
accès en lecture/écriture pour tous les utilisateurs
définis, permettent à chacun d'eux d'accéder à
leurs propres fichiers. Mais ils n'ont pas accès aux dossiers des
autres, sauf si une autorisation est définie. À noter que le
partage netlogon (/etc/samba/netlogon), généralement accessible
en lecture, est le répertoire par défaut pour les scripts
d'ouverture de session utilisateur. La configuration est réalisée
par l'édition d'un fichier unique (généralement
installé dans /etc/smb.conf ou /etc/samba/smb.conf). Samba peut aussi
fournir des scripts d'ouverture de session utilisateur et une mise en place de
groupes de stratégies via poledit. Samba inclut un outil
d'administration web appelé Samba Web Administration Tool (SWAT).
Lorsque les deux systèmes de partage de fichiers (NFS,
Samba) sont installés pour comparaison, Samba se révèle
moins performant que NFS au niveau des taux de transferts. Néanmoins,
une étude a montré que Samba 3 était jusqu'à 2,5
fois plus rapide que la version SMB de Windows serveur 2003.
15
I.1.2.2 Interopérabilité de Samba:
Le protocole Samba permet d'assurer
l'interopérabilité entre plateformes différentes et
régions différentes par une gestion adéquate de l'encodage
des noms de fichiers
Différents auteurs ont fait usage de Samba dans leurs
études, ci -dessous nous trouvons l'exemple d'un auteur
sénégalais qui a mis en place un Serveur contrôleur de
domaine Samba.
L'administrateur réseau peut être aussi
administrateur système, il gère également les postes de
travail et les serveurs de l'entreprise pour mettre en place les moyens et les
procédures en garantissant les performances et la disponibilité
des systèmes.
Pour simplifier les accès aux ressources et l'optimisation
du trafic réseau, l'administrateur peut recourir à un
contrôleur de domaine centralisé. C'est dans ce cadre que Mahamat
Adam Abdou s'est engagés à faire une étude en se basant
sur l'administration réseau sous Linux et en particulier une mise en
place d'un serveur contrôleur de domaine Samba vue de son importance et
de sa qualité. Son objectif primordial était de mettre en place
un serveur contrôleur de domaine Samba qui sera en mesure de
répondre aux critères habituellement utilisés par un
administrateur réseau de l'entreprise, tels que :
- L'authentification des utilisateurs
- La gestion de droits d'accès
- Les partages des fichiers ou répertoires - Les types de
sécurité dans un domaine
C'est dans cette optique que la gestion de comptes et
l'authentification des utilisateurs s'effectueront via le serveur Samba.
16
I.2 Conclusion partielle
Eu égard à ce qui précède, notre
travail de recherche consistera à gérer la bande passante pour
l'optimisation da la connexion internet, chose qui manque dans les recherches
précédentes notre travail consistera à doter l'Uniluk de
son troisième proxy qui aura pour tâche principale la gestion la
bande passante pour pouvoir optimiser la connexion au réseau internet,
mais aussi nous interdiserons l'accès à un certains nombres de
sites. Et pour la gestion des fichiers à télécharger, nous
mettons en place un serveur des fichiers. Le moyen pour atteindre la
finalité de ce travail est présenté dans le chapitre qui
suit, celui traitant de la méthodologie
17
CHAPITRE DEUXIEME:
METHODOLOGIES ET TECHNIQUES DU TRAVAIL
Cette section du travail est consacrée à
l'étude des méthodes qui seront utilisées, nous allons
procéder à la modélisation de notre système. Par la
modélisation, nous créerons un modèle qui est construit
pour quelque chose (notre système) car il est facile à comprendre
que la chose physique elle-même. A plus de la modélisation et de
la simulation, nous allons également procéder au prototypage et
terminer par l'expérimentation dans notre laboratoire.
II.1 La modélisation
La modélisation est une représentation formelle
d'un phénomène. Formellement, nous allons utiliser des diagrammes
pour créer notre modèle comme les diagrammes en UML. Notre
modèle ne contiendra que les aspects essentiels et pertinents du
problème de notre recherche.
Plusieurs techniques peuvent nous aider dans la
modélisation, la MERISE définit par ROMAIN BARTOLO comme
étant une méthode d'analyse et de conception structurelle qui a
vu jour en 1978 et qui est très rependue en France. C'est une technique
qui vise à remplacer un système manuel d'une organisation par un
système automatisé du traitement de l'information, et tant
d'autres techniques. Malheureusement cette technique n'est pas orienté
objet, raison pour laquelle a ce qui concerne notre travail de recherche, nous
ferons recours a une celle qui est orienté objet, l'UML (Unified
Modeling Language), adopté et standardisé par l'Object Management
Group depuis 1997, UML est aujourd'hui un outil de communication
incontournable, utilisé sur des centaines de projets de par le monde ;
en conséquence, la connaissance d'UML est désormais une des
compétences qui sont exigées quasi systématiquement lors
d'un recrutement. Pourtant, trop nombreux sont encore les concepteurs qui
s'imaginent, à tort, posséder cette compétence parce
qu'ils connaissent la représentation graphique d'une classe
d'association, d'une activité ou d'un état, tandis qu'ils ne
savent pas expliquer ni défendre leur emploi dans un modèle,
même simple. C'est que, malgré la rigueur apportée à
la spécification d'UML, il y a parfois différentes façons
de représenter une même idée, ou, à l'inverse, une
idée donnée pourra être représentée avec plus
ou moins de précision selon que l'on aura utilisé telle ou telle
particularité syntaxique d'UML. (Pascal Roques 2005)
18
Pour ne pas mélanger les problèmes, cette
section est découpée suivant les trois points de vue classiques
de modélisation : fonctionnel, statique et dynamique, en insistant pour
chacun sur le ou les diagrammes UML prépondérants mais qui seront
plus détaillés de façon concrète pour notre
système dans le chapitre suivant.
Figure no5: Axes de l'UML
· Du point de vue fonctionnel :
Après avoir identifié les acteurs qui interagissent avec
le système, nous y développons un premier modèle UML de
haut niveau, pour pouvoir établir précisément les
frontières du système. Dans cette optique, nous allons identifier
les cas d'utilisation et construire un diagramme reliant les acteurs et les cas
d'utilisation de notre système. Ensuite, nous préciserons le
point de vue fonctionnel en détaillant les différentes
façons dont les acteurs peuvent utiliser le système. À cet
effet, nous allons rédiger des descriptions textuelles de cas
d'utilisation, ainsi que dessiner des diagrammes UML complémentaires
(comme les diagrammes de séquence ou d'activité).
19
Les cas d'utilisation
Comme l'affirme Grislin(2008), nos cas d'utilisation
décrivent les fonctionnalités fournies par le
système à nos acteurs. Le modèle de notre
système du point de vue de son utilisation, présentera
des fonctionnalités qui répondront à ces
questions:
Que devrait faire notre système ?
- Présenter les interactions entre le système et
nos acteurs
- Présenter les réactions du système aux
événements extérieurs
Les cas d'utilisation définiront :
Les limites du système (interne au système/
externe)
Le comportement attendu du système
Pour chaque acteur interagissant avec notre système,
nous spécifierons: Quels sont les services attendus ?
Dans quel cas l'acteur utilise le système ?
En sachant que le service = fonctionnalités Service
? action !!!! Représentation par :
· cas sur le diagramme
· liens acteurs-cas
· du texte
· Du point de vue statique : Le
diagramme de classes a toujours été le diagramme le plus
important dans toutes les méthodes orientées objet. C'est celui
que les outils de génération automatique de code utilisent en
priorité. C'est également celui qui contient la plus grande gamme
de notations et de variantes, d'où la difficulté d'utiliser
correctement tous ces concepts. Dans le chapitre suivant, nous allons:
· Identifier les concepts du domaine et les
modéliser en tant que classes,
· Identifier les associations pertinentes entre les
concepts,
· Réfléchir aux multiplicités
à chaque extrémité d'association,
· Ajouter des attributs aux classes du domaine.
20
· Du point de vue dynamique : En
commençant par identifier les acteurs et les cas d'utilisation, nous
dessinerons tout d'abord un diagramme de séquence « système
». Puis, nous réaliserons un diagramme de communication particulier
(que nous appellerons diagramme de contexte dynamique) afin de
répertorier tous les messages que les acteurs peuvent envoyer au
système et recevoir. Après ce travail préliminaire, nous
nous embarquerons dans une description en profondeur de la dynamique
souhaitée du système. Nous insisterons tout
particulièrement sur le diagramme d'états qui est à notre
avis trop souvent sous employé, alors que c'est un diagramme
extrêmement utile pour décrire avec précision des
comportements complexes, et ce dès l'analyse. UML a repris le concept
bien connu de machine à états finis, qui consiste
à s'intéresser au cycle de vie d'une instance
générique d'une classe particulière au fil de ses
interactions avec le reste du monde, dans tous les cas possibles. Cette vue
locale d'un objet, qui décrit comment il réagit à des
événements en fonction de son état courant et comment il
passe dans un nouvel état, est représentée graphiquement
sous la forme d'un diagramme d'états
II.2 Simulation
Nous utiliserons un modèle actif qui sera
exécuté et mesuré. Pour ce faire nous ferons usage de
packet tracert pour la création de notre réseau local et
confectionner une topologie pour ce fait. La simulation sera faite de sorte que
les serveurs et les autres équipements (ordinateurs, routeurs, hubs) se
communiquent. L'architecture sera donc client-serveur.
II.3 Le prototypage
Cette méthode de modélisation sera notamment
guidée par le paradigme de programmation, qui a son tour est un style de
traitement de la manière dont les solutions aux problèmes sont
formulées. C'est la vue qu'a le programmeur de l'exécution du
programme. Même si la construction des programmes est au centre de
l'informatique, il est surprenant que la programmation en elle seule ne
constitue pas de recherche scientifique. Les prototypes de programmes sont
écrits a la fin d'une recherche pour démontrer que le nouveau
modèle produit dans la recherche peut être
implémenté. C'est dans cet angle que nous allons au chapitre
suivant produire un prototype pour fournir les aperçus du
modèle.
21
Dans ce travail, il s'agira plus d'implémenter de
modèles conçus par une configuration optimale des logiciels
ouverts prêts à utiliser.
II.4 Expérimentation
Elle consiste soit à chercher à trouver quelque
chose d'intéressant (expérimentation exploratoire), soit à
tester une théorie ou un modèle (expérimentation de test)
ou soit à prouver un modèle (expérimentation de preuve).
Pour notre cas, nous allons utiliser l'expérimentation de test. Celle-ci
va nous permettre de tester notre modèle dans un laboratoire.
22
CHAPITRE TROISIEME:
CONFIGURATION DU SYSTEME
Comme souligné dans le chapitre
précédent, nous commençons par identifier les acteurs
auxquels nous attribuons les cas d'utilisations suivants avant de les relier
dans notre diagramme de cas d'activités pour le serveur des fichiers et
le serveur proxy.
- Etudiants :
o S'authentifier
o Uploader les fichiers
o Rechercher les fichiers
o Consulter les fichiers
o Télécharger les fichiers
o Installer le logiciel
- Enseignants :
o S'authentifier
o Uploader les fichiers
o Rechercher les fichiers
o Modifier les fichiers
o Télécharger les fichiers
o Installer le logiciel
o Consulter les fichiers
- Administrateur :
o S'authentifier
o Uploader les fichiers
o Rechercher les fichiers
o Consulter les fichiers
o Télécharger les fichiers
o
23
Maintenir le bon fonctionnement
o Mettre à jour les fichiers
o Installer le logiciel - Administratif :
o S'authentifier
o Uploader les fichiers
o Downloader les fichiers
o Installer le logiciel
- Internet
o Néant - Routeur
o Néant
24
3.1 DIAGRAMME DE CAS D'UTILISATION POUR TELECHARGER LE
FICHIER
Figure no6 : diagramme d'activité pour
télécharger le fichier
25
3.2 DIAGRAMME DE CAS D'UTILISATION POUR LE SERVEUR
PROXY
Figure no7 : diagramme d'activité pour le
proxy
26
3.3 DESCRIPTION TEXTUELLE DES CAS D'UTILISATION
Sommaire d'identification Titre : télécharger les
fichiers
Résumé : ce cas d'utilisation (principal) permet
à toute personne connectée au réseau internet de
copier les fichiers du serveur sur son ordinateur.
Acteur : Etudiants ; Enseignant, Administratif et Administrateur
(Principaux), Routeur (Secondaire)
Date de création : Date de mise à jour :
Version : 1.0 Responsable :
DESCRIPTION DES SCENARIOS
Préconditions :
- L'université doit avoir la connexion
- Le serveur doit avoir au moins un fichier
SCENARIO NOMINATIF
1. Les acteurs (principaux) se connectent au réseau
2. Ils se connectent au serveur avec un compte
3. Les acteurs accèdent au serveur
4. Les acteurs recherchent les fichiers voulus
5. Ils les téléchargent sur leurs machines
6. Ils se déconnectent du serveur
7. Ils se déconnectent de réseau
27
3.4 ENCHAINEMENT ALTERNATIF
1. Connexion au réseau échoué
Le processus de connexion commence
Serveur
Routeur
Etu Admin Ens Adminis
Verification de Mac
Autorisé
Déconnexion du serveur
Téléchargement
Recherche de fichier
Ok
Login
Fichier disponible
Connexion au reseau
Déconnexion du réseau
Figure no8: Enchainement alternatif
28
3.4 DIAGRAMME D'ACTIVITES POUR TELECHARGER LE
FICHIER
Demande Connexion
Et. Ens. Admin. Adminis. Réseau Serveur
Authentification de Mac
(Connexion)
|
Connecté au réseau
Mac non reconnue
Mac reconnue
Login
Refusé
Accepté
Connexion au serveur des fichiers
Fichier non trouvé
Fichier trouvé
Recherche de fichier
Téléchargement
Déconnexion du Serveur
Déconnexion du réseau
Figure no9 : Diagramme d'activité pour le
téléchargement de fichier
29
3.5 DU POINT DE VUE STATIQUE
3.5.1 REGLES DE GESTION POUR LE SERVEUR DES FICHIERS
Cette section du travail concerne le système
simplifié de téléchargement des fichiers pour un serveur
des fichiers pour l'Université Adventiste de Lukanga.
1. L'université dispose d'un ou plusieurs postes de
travail
2. L'université a un réseau internet avec la
connexion sans fil et la connexion avec fil
3. Le cyber peut avoir un ou plusieurs serveur (s)
4. Un utilisateur peut se connecter au serveur ou annuler sa
connexion
5. Les utilisateurs se connectent au serveur avec un mot de
passe
6. Pour le serveur des fichiers, les utilisateurs peuvent
l'utiliser en uploadant et downloadant les fichiers, leur mise à jour et
la modification de certains fichiers.
7. Tous les fichiers des utilisateurs peuvent être
stockés sur le serveur
8. Un téléchargement peut être annulé
ou confirmé
9. Les utilisateurs sont repartis en groupes (Enseignants,
Etudiants, Administratifs et Administrateurs)
Vu ce qui précède, nous tirons les entités
suivantes en analysant chaque règle de gestion :
- Utilisateurs (groupes)
o Enseignants,
o Etudiants,
o Administratifs et
o Administrateurs
- Ordinateur
- Réseau - Serveur
30
3.5.2 REGLES DE GESTION POUR LE SERVEUR PROXY
Les règles de gestion pour le serveur proxy sont obtenues
sur base de son fonctionnement :
1. Le proxy reçoit la requête de l'utilisateur
2. La requête est interceptée par le proxy
3. La requête est consultée dans la mémoire
cache qui est gérée par le proxy
4. Si la requête et trouvée, la réponse est
retournée à l'utilisateur, sinon
5. Le proxy la renvoie à l'internet
6. Si la page est introuvable, un message d'erreur est
retourné à l'utilisateur
7. Si le site est bloqué par le service de
paramétrage, un message d'interdiction d'accès est
retourné à l'utilisateur
8. Si le site est conforme, il est enregistré en cache
puis retourner à l'utilisateur
Vu les règles de gestion citées ci-haut, nous
retenons les classes suivantes :
- Utilisateur
- Proxy
- Requête
- Cache
- Paramétrage
- Réponse
- Internet
31
3.6 DIAGRAMMES DES CLASSES
Le diagramme de classes que nous présentons
ci-dessous sera implémenté dans ArgoUML pour
nous produire le prototype de notre système dans le chapitre suivant.
Nous présentons successivement le diagramme de classe pour le
téléchargement de fichier et le proxy
3.6.1 Diagramme des classes pour les serveurs
Figure no10: Diagramme de classe pour le
téléchargement de fichier
32
3.8 DU POINT DE VUE DYNAMIQUE
Notre diagramme d'états pour l'utilisateur du
système en vue de télécharger le fichier se
présente comme suit :
Figure no11 : Diagramme d'états pour un
utilisateur
33
Le diagramme d'états de la requête
envoyée par l'utilisateur pour notre serveur proxy est le
suivant :
Figure no12 : Diagramme d'états pour une
requête
34
CHAPITRE IV:
PROTOTYPAGE, TEST ET RESULTATS
IV.1 Prototype
1. Base des données o Utilisateurs
Pour implémenter les utilisateurs, les configurations
suivantes ont été réalisées. Cette configuration
permet de créer les objets de la classe utilisateur.
Nous créons donc dans un premier temps un seul et
même utilisateur Samba avec son mot de passe pour chaque dossier. Nous
commençons par la création de l'utilisateur Samba dans la base
UNIX et attribution du mot de passe puis nous ajoutons l'utilisateur à
la base des utilisateurs de Samba. C'est grace a la commande
adduser que nous creons les utilisateurs et
passwd pour le mot de passe. Pour son ajout à
la base des utilisateurs dans Samba nous utilisons la commandes
smbpasswd -a nom_de_lutilisateur. Après nous
allons lui attribuer un dossier sur
le serveur. Nous creons l'utilisateur
administ
Chown = commande qui permet de changer le propriétaire
d'un fichier
35
Figure no13: creation des utilisateurs
Pour la modification des droits d'accès du dossier, nous
écrivons cette commande
unilukproxy: ~ # chown nom_de_lutilisateur
/home/administrateur/Desktop/administratifs unilukproxy: ~ # chmod 770 -R /
home/administrateur/Desktop/administratifs
36
Chmod = commande qui permet de modifier le droit d'accès
à un fichier Dans l'edition du fichier avec nano, nous creons ce
script:
Figure no14: Attribution des dossiers aux utilisateurs
Utilisateurs :
· Feza
· Christian
· Forrest
· Solange
37
Voici l'algorithme pour la création des utilisateurs dans
l'interface de la base Unix:
Debut
Adduser
Mot de passé avec confirmation
Smbpasswd -a nom de l'utilisateur
Mot de passé avec confirmation
Droit sur le dossier avec chown et chmod
Au niveau de nano dans samba.conf Voir la fig. 18 dans la page
qui précède
Mariage de l'utilisateur au dossier
Fin
Configuration de squid.conf
O Le serveur
Nous avons configuré deux serveurs: un pour le proxy
et l'autre pour les fichiers. Pour le serveur squid : l'installation de squid :
apt-get install squid
38
Il est possible de faire une copie avant toute chose du fichier
de configuration pour des raisons de sécurités. On ouvre ensuite
le fichier de configuration de Squid (squid.conf) afin de le paramétrer.
Pour cela j'utilise l'éditeur nano (un autre comme vi peut tout à
fait convenir) : nano /etc/squid/squid.conf
Nous commençons par renseigner le paramètre
visible_hostname sous peine que squid ne démarre pas.
visible_hostname proxy
Mettons maintenant quelques règles : Il faut savoir que
toutes les règles que nous
désirons ajouter dans ce fichier se mettent à un
endroit spécifique ; après « Insert your rules ».
De plus l'ordre de ces règles est primordial. Les
interdictions se mettent donc avant les
autorisations.
Par défaut Squid refuse toute connections sortantes des
clients. Il faut donc autoriser le réseau à sortir
sur internet.
Acl mon_reseau src 10.50.0.0/16
Http_access allow mon réseau
On pourrait ensuite ajouter d'autres acl permettant de
filtrer les connexions mais il est préférable de confier cette
tâche à squidGuard par la suite.
Pour rendre notre proxy transparent, nous avons tapé la
commande suivante : iptables - t nat -A PREROUTING -i eth0 -p tcp --dport
80 -j REDIRECT --to-port 3128. Cette ligne indique à la machine
d'intercepter toutes les requêtes sur un port 80, et de les rediriger
vers le proxy. Et changer notre port à http_3128
transparent.
Le serveur proxy Squid est une solution efficace et
économique afin de filtrer les différents sites visité par
les utilisateurs du réseau. Tout d'abord nous devons rajouter la
commande visible_hostname Nom .Puis nous devons rajouter une
ACL (Access Control List) qui définira notre réseau interne. (Il
faut rajouter cette ligne juste après la ligne Connect method
Connect)
39
Pour le serveur Samba :
· Configuration de Samba: # aptitude install
samba
A l'installation, samba vous demandera surement le workgroup,
ici DOMAIN (hérité des serveurs microsoft NT)
Configuration du fichier /etc/samba/smb.conf
[global]
workgroup = DOMAIN (pour notre cas nous avons choisi UNILUK)
Pour faire fonctionner le serveur Samba, il faut le paquet samba
que l'on installe avec la commande : apt-get Install samba. La commande : mkdir
/etudiants nous permet de créer de dossier sur le serveur. Ou nous
pouvons le créer de façon graphique comme tout autre dossier.
Pour pouvoir partager ce dossier, il faut éditer le fichier smb.conf
:
# /etc/samba/smb.conf
Il faut rajouter a la fin de ce fichier le nom du partage, le
chemin du dossier à partager et des options.
40
[etudiants]
path=/etudiants
writable=yes
O Les services
Fichiers :
· Cours de télématique et réseaux
(dans le dossier des enseignants)
· Avast free (dans le dossier des étudiants)
· Les ifrs 2010 (dans le dossier des
étudiants)
· Apprenez à développer en C# (dans le
dossier des étudiants)
Site web :
·
www.facebook.com
·
www.porno.com
·
www.youtube.org
2. Réseau
Nous créons dans cette section un réseau local
pour nos utilisateurs.
Le réseau est de 10.50.0.0/16 avec un masque de sous
réseau de 255.255.255.0 Dans ce réseau nous créons 4 sous
réseaux notamment pour les administrateurs, les administratifs, les
étudiants et les enseignants.
- Les enseignants auront 50 machines dans leur sous
réseau
- Les étudiants 1000 machines
- Les administratifs 30 machines
- Les administrateurs 10 machines
41
Utilisateurs
|
Réseau
|
1ere machine
|
Dernière machine
|
Diffusion
|
Etudiants
|
10.50.248.0 /22
|
10.50.248.1
|
10.50.251.254
|
10.50.251.255
|
Enseignants
|
10.50.255.128
|
10.50.255.129
|
10.50.255.190
|
10.50.255.191
|
|
/26
|
|
|
|
Administratifs
|
10.50.255.192
|
10.50.255.193
|
10.50.255.222
|
10.50.255.223
|
|
/27
|
|
|
|
Administrateurs
|
10.50.255.224
|
10.50.255.225
|
10.50.255.238
|
10.50.255.239
|
|
/28
|
|
|
|
|
La connexion physique des matériels en
réseau
Cette phase consiste à faire passer les
câbles dans les goulottes et les connecter aux prises RJ45 qui seront
installées à côté de chaque poste de travail et
assureront la connexion (toujours à travers les câbles
réseaux) entre les prises RJ45 et les ordinateurs par les ports RJ45 des
cartes réseaux afin d'établir la liaison physique entre les
différents postes et le serveur en passant par le Hubs.
Nous allons utiliser 5 routeurs et 5 hubs pour relier les
ordinateurs du réseau pour la communication et chaque
routeur est destiné pour un sous réseau.
Topologie à utiliser
Figure no15 : Topologie
42
Les ordinateurs se trouvant dans ce réseau se
connecteront pour les uns aux hubs de différents ports souvent de 8
ports. Et pour les autres en Wireless. Pour la connexion des ordinateurs nous
allons utiliser soit le Hub soit le Switch.
Figure no16: Architecture du reseau local
43
Voici à quoi le diagramme de déploiement
de notre réseau ressemble
Figure no17: Diagramme de deploiemement
b. Les interfaces principales
Nous présentons dans cette section quelques principales
interfaces qui permettrons aux utilisateurs d'interagir avec notre
système. A chaque fois que nous voulons nous connecter au serveur, nous
devons d'abord nous connecter au réseau en fin d'attendre les dossiers
sur le serveur de fichiers. Nous accédons au serveur en écrivant
son adresse IP au niveau de menu démarrer ou dans la barre d'adresse
pour un quelconque navigateur précédée de deux antislashs
(\\10.50.0.40). Nous obtenons cette fenêtre après validation avec
la touche Entrée:
44
Figure no18: Fenetre du Serveur
Il est évident que tous les utilisateurs seront
d'abord authentifiés avant de faire une quelconque tache que ce soit sur
le serveur de fichiers. Pour ce faire, l'interface pour l'authentification de
nos utilisateurs se présente comme suit pour utiliser un
répertoire sur le serveur, nous devons nous connecter avec un user Name
et un mot de passe :
Addresse du blhost Serveur
Figure no19: Login
Nous avons deux façons de bloquer les sites. Nous vous
montrons toutes les deux possibilités que nous avons
utilisées.
45
Nous avons dans un premier temps créer un fichier «
listenoire.acl » dans ce fichier nous avons ajouté les sites que
nous voulons bloquer.
Une fois terminé, nous entrons dans le fichier squid.conf
pour ajouter la ligne suivante :
acl aclname url_regex [-i] ^http:// ...
http_access deny aclname
Interdire une liste de sites :
acl url_interdites url_regex /etc/squid/denied_url
http_access deny url_interdites
Pour notre cas, nous avons fait ce qui suit: Acl bad url_regex
«/etc/squid/listenoire.acl» Http_access deny bad.
La deuxième méthode est la création directe
des acl et le bloquer dans le fichier squid.conf de cette façon:
Acl blockregexurl url_regex -i sex
Http_access deny blockregexurl
46
Figure no20: script de filtre de site web
Nous donnons également les autres possibilités
pour filtrer l'accès soit par l'adresse IP du réseau ou d'une
machine du réseau, soit par l'adresse Mac.
- Pour interdire l'accès au serveur web à une
adresse IP du réseau ou d'une machine, nous procédons de la
manière suivante :
Dans l'exemple de ce chapitre nous prenons le cas de ce
réseau avec son masque de sous réseau,
myNet est le nom de notre réseau:
acl myNet src 10.0.0.0/255.255.0.0 http_access deny myNet
L'ACL ci-dessus correspondra lorsque l'adresse IP provient d'une
adresse IP entre 10.0.0.0 et 10.0.255.255. Au cours des dernières
années de plus en plus de personnes utilisent Internet sans classe du
domain Routing (ICDR) masques réseau de format, comme 10.0.0.0/16. Squid
gère à la fois le traditionnel IP / masque de réseau et
plus récente IP / notation Bits dans le type ACL src. Les plages
d'adresses IP peuvent aussi être spécifiés dans une autre
forme:
acl myNet src addr1-addr2/netmask http_access deny myNet
47
Figure no21: Interdiction par IP
- Pour les adresses Mac nous précédons
également de la façon suivante :
En principe il faut mettre une regle de filtrage de genre
(normalement dans un script de firewall au bon endroit):
/sbin/iptables -A INPUT -m mac --mac-source xx:xx:xx:xx:xx:xx
-j DROP
Pour interdire un client avec l'adresse MAC xx:xx:xx:xx:xx:xx.
On peut aussi mettre "REJECT" au lieu de "DROP". La différence c'est
avec REJECT le client recevra un message d'erreur qu'il a été
rejeté et avec DROP le client ne vois rien et pour lui c'est comme
l'adresse IP du serveur n'existerait pas. Si le firewall fait aussi NAT et si
on veut bloquer pour le sous-réseau il faut mettre une règle
similaire avec "FORWARD" au lieu de "INPUT".
De fois on veut aussi bloquer toutes les adresses MAC sauf une
dans ce cas on peut mettre un " ! " (Avec espaces devant et après!!),
devant le xx:xx:xx:xx:xx:xx.
48
IV.2 Protocole du test d'expérimentation
a. Matériel :
Les différents postes de travail seront dotés des
différents systèmes d'exploitation à l'exception du
serveur qui utilisera Debian 6.1 la distribution de linux qui fera de ce
réseau d'architecture client-serveur avec 500 Gb de capacité de
disque dur.
Figure no22: Detail du Serveur
49
Un système client/serveur fonctionne selon le
schéma suivant:
Figure no 23: Architecture client-Serveur
· Le client émet une requête vers le
serveur grâce à son adresse et le port, qui désigne un
service particulier du serveur
· Le serveur reçoit la demande et répond
à l'aide de l'adresse de la machine client et son port
IV.3 Résultats
Nous présentons dans cette optique quelques messages sur
les interfaces lorsque les règles de jeu ne sont pas respectées.
Cette fenêtre apparaît lorsque nous voulons nous connecter avec un
User Name incorrect ou un mot de passe incorrect. Pour cette illustration, nous
voulions nous connecter en tant qu'étudiante Feza au dossier des
enseignants mais avec un mot de passe incorrect.
50
Notre deuxième illustration se base sur le dossier des
enseignants avec Forrest comme utilisateur (ayant bien entendu le User Name et
Mot de passe des enseignants), il veut uploader le fichier d'Access 2003-vba1
(Télématique et réseaux) pour le conserver sur le
serveur.
Figure no24: Fenetre de login incorrect
Ceci est la fenêtre du répertoire des enseignants ou
nous avons choisi l'utilisateur Forrest qui s'est connecté avec le user
name et mot de passe correct des enseignants pour chercher un fichier à
télécharger ou qui veut mettre un fichier sur le serveur.
Figure no25 : le répertoire des enseignants
Les étudiants Christian et Solange ont à leur tour
uploader les fichiers suivant dans le répertoire des étudiants :
Avast free, Les ifrs 2010, Apprenez à développer en C# et autres
qu'ils ont trouvés déjà sur le serveur.
51
Figure no24: Fenetre de dossier des étudiants
Pour les quelques sites que nous avons pris pour tester la
configuration de notre proxy, nous présentons dans un premier temps le
résultat sous forme des interfaces. Pour le site
www.facebook.com, voici le
résultat après tentative de connexion.
Pour les quelques sites que nous avons pris pour tester la
configuration de notre proxy, nous présentons dans un premier temps le
résultat sous forme des interfaces.
Pour le site
www.facebook.com, voici le
résultat après tentative de connexion.
Figure no26: Interface de site bloqué (
www.facebook.com)
52
Pour le site
www.porno.com, voici le
résultat après également une tentative de connexion
Figure no27: Interface de site bloqué (
www.porno.com)
Pour le site
www.sexe.com, voici à
quoi se présente l'interface après tentative également de
connexion sur le site :
Figure no28: Interface de site bloqué (
www.sexe.com)
53
Toutes ces figures sont les résultats de scripts que nous
avions écrits dans la configuration de notre serveur proxy pour la
sécurité du réseau. Nous avons fait en sorte que ces trois
sites soient bloqués par notre proxy.
NB : Pour filtrer un site nous devons d'abord l'identifier non
conforme à la philosophie de l'institution puis nous pouvons alors le
filtrer. Parce que seul le nom du site ne suffit pas pour le bloquer. Nous
avons juste donné la possibilité de faire cette restriction avec
quelques illustrations.
54
CONCLUSION
Nos préoccupations dans ce travail portaient sur les
problèmes d'optimisation de la gestion de la bande passante au sein de
réseau de l'Uniluk. La gestion de la bande passante a un impact direct
sur la qualité du réseau. Le téléchargement des
fichiers se faisait de façon non contrôlée et sans une
quelconque logique, mais également l'université adventiste de
Lukanga est une institution chrétienne qui doit veiller sur la formation
de ses étudiants sur différent points. Pour l'aider à
résoudre cet épineux problème, nous avons pensé que
si nous concevions un serveur des fichiers pour gérer les fichiers des
utilisateurs et un serveur proxy pour la gestion de quelques sites selon la
philosophie de l'institution, nous aurons fait quelque chose d'important pour
l'université.
C'est ainsi que nous avons proposé quelques
modèles sous forme de diagrammes conçus en suivant les
règles utilisées en UML dans la démarche de ce travail de
recherche que nous avons testés par après et présenter les
résultats auxquels nous avons aboutit. Le serveur des fichiers comprend
quatre répertoires (administrateurs, administratifs, enseignants et
étudiants). Chaque répertoire est protégé par un
User Name et un mot de passe excepté celui des étudiants que nous
avons laissé à la portée de tout utilisateur. Le serveur
proxy à son tour est en mesure de filtrer quelques sites que nous avions
pris comme données d'essai dans la partie qui a
précédée. Notre finalité a été la
conception et la mise en place de deux serveurs, l'un pour les fichiers et
l'autre pour le proxy. Le serveur des fichiers servira les utilisateurs pour
stocker et puiser les fichiers en temps voulu et sans beaucoup d'acrobatie,
alors que le serveur proxy à son tour permettra également la
gestion de sites web et accélérer le trafic de pages web.
Toutefois, nous ne prétendons avoir tout
épuisé dans cette matière, certaines
fonctionnalités en outre n'ont pas été configurées
à l'instar de la transparence du proxy. Ce travail ne s'est
limité qu'en deux serveurs qui n'ont pas tous les services en
totalité, mais nous avons juste installé les quelques services
que nous trouvons important dans un premier temps. Nous savons que les autres
taches que peuvent avoir nos serveurs peuvent être mises en marche selon
les besoins et les exigences des utilisateurs ou pour la recherche scientifique
pour les autres, toutefois, la majorité des objectifs prévus ont
été atteint. Ainsi, nous invitons et encourageons les autres
chercheurs à nous tenir main forte pour cette partie restante.
55
BIBLIOGRAPHIE
Ouvrages :
Laurent Rayssiguier (2007) : Proxy
SQUID avec authentification via Samba, édition 2 Paris 2002
G.Haberer, A.Peuch, P.Saadé (2003-2004): Installation
et configuration d'un serveur samba de base,
http://www.commentcamarche.net/forum/affich-209877-limiter-l-acces-internet,
consulté le 2 juillet 2013
Rémy Malgouyres (2006) : Administration réseau
sous linux (Debian et Ubuntu)
http://www.tutorielsenfolie.com/tutoriels-34-proxy.html,
consulté le 16 mai 2013 Benoît VERRON (2004): Mise en place
d'un serveur Proxy sous Ubuntu / Debian
http://www.extpdf.com/configuration-serveur-proxy-sous-debian-pdf.html,
https://stux6.net/unix/linux/proxy-transparent-linux-squid
consulté le 16 Mai 2013
Pascal Véron(2007) : Systèmes de fichiers
distribués sécurisés
Guy Pujolle : les réseaux, édition 4.
Saint-Germain, Paris 2006
Andrew Tanenbaum : réseaux, édition 4.
Paris 2003
Aurelien Piechockie (2009) : UML 2
Pierre-Alain Muller (1997): Modélisation objet avec
UML. Eyrolles
Sylvie Bechard & Claude Desroches (2002) : Configuration
du serveur proxy avec internet
explore 5 et 6 avec une connexion modem, consulté le 14
juillet 2013
http://linuxtips.citoyendunet.org/OLD/article.php3?id_article=77
Pascal Roques (2006): UML 2 par la pratique,
édition 5. ÉDITIONS EYROLLES 61, bd Saint-Germain 75240
Paris Cedex 05
Cours :
Osée Masivi M. (2011) : Télématique et
réseaux informatiques, cours inédit, UNILUK Osée
Masivi M (2013) : Administration des réseaux, cours inédit,
UNILUK
Osée Masivi M (2013) : Approches
méthodologiques de la recherche scientifique en informatique
56
Travaux :
Jeanpy Babwine (2010-2011) : Conception et mise en place d'un
serveur proxy personnalisé, Mémoire Uniluk
Drajiro Lubanga (2009-2010) : Mise en place d'un serveur
local pour l'intranet de l'Uniluk, TFC Uniluk
Albecus Kasereka Kizito (2008-2009) : Modélisation du
réseau informatique selon le vade-mecum du gestionnaire d'une
institution d'enseignement supérieur et universitaire, Mémoire,
Uniluk.
Djiby Thiaw (2002) : Mise en place d'un proxy Squid
sécurisé avec authentification LDAP, Mémoire, Ecole
Supérieure Polytechnique de Dakar.
http://linuxtherapie.free.fr/index.php/proxy-squid-sur-active-directory?start=2,
consulté le 20 juin 2013
Mahamat Adam Abdou (2010) : Etude et mise en place d'un
serveur contrôleur de domaine Samba sur administration réseaux
sous Linux, Mémoire, Université Cheikh Anta Diop de Dakar
Alyck Ngoy (2001) : Conception et mise en
place d'un serveur proxy squid, Mémoire Isipa. http:
www.google.fr/search?conception
et administration d'un serveur Proxy sous linux, consulté le 20 juillet
2013
|