Vous êtes sur la page 1sur 19

MINISTERE DES ENSEIGNEMENTS SUPERIEURS DE LA

RECHERCHE SCIENTIFIQUE ET DE L’INNOVATION


BURKINA FASO
********************
Unité-Progrès-Justice
UNIVERSITE NAZI BONI DE BOBO-DIOULASSO (UNB)

******************

ECOLE SUPERIEURE D’INFORMATIQUE (ESI)

01 BP 1091, Tél : (226) 20 97 27 64


*****************

THEME

LES MEMBRES DU GROUPE (7) :


❖ COULIBALY Sié Bakary
❖ DEM Abdoul Kader
❖ GUIEBRE Ange Samira
ENSEIGNANT :
❖ KABORE Ben Lionel Mr. KAFANDO
❖ KONE Fenom Déborah Delchan Patrice
❖ OUEDRAOGO Adama
❖ PODA Yves Emile
❖ SANOU François d’Assise
ANNEE ACADEMIQUE 2019-2020 06/06/2020

SOMMAIRE
INTRODUCTION.......................................................................................................................... 2
I. PROBLEMATIQUE ............................................................................................................ 3
II. GENERALITES SUR LES PROXYS ....................................................................................... 3
III. ETUDE DE PROXY ......................................................................................................... 4
1. ROLES ET FONCTIONNALITES....................................................................................... 4
2. LES DIFFERENTS « TYPES » DE PROXY.......................................................................... 5
3. LIMITES ........................................................................................................................ 6
IV. ETUDE DU PROXY SQUID ............................................................................................. 7
Figure 1 ........................................................................................................................ 7
1. FONCTIONNEMENT DU SQUID .................................................................................... 7
Figure 2 ........................................................................................................................ 8
Figure 3 ........................................................................................................................ 8
2. INSTALLATION .............................................................................................................. 9
2.1 INSTALLATION MANUELLE ................................................................................... 9
2.2 INSTALLATION AUTOMATIQUE .......................................................................... 10
3. CONFIGURATION ....................................................................................................... 10
Figure 4 ...................................................................................................................... 11
4. DEPLOIEMENT............................................................................................................ 13
Figure 5 ...................................................................................................................... 14
Figure 6 ...................................................................................................................... 15
Figure 7 ...................................................................................................................... 15
CONCLUSION ............................................................................................................................ 17
BIBLIOGRAPHIE ET WEBOGRAPHIE ......................................................................................... 18

Thème : Mise en place et configuration d’un proxy


I
ANNEE ACADEMIQUE 2019-2020 06/06/2020

INTRODUCTION
L’internet fait partie intégrante de notre vie de tous les jours, nous
comptabilisons aujourd’hui plus d’un milliard de connecté par jour : entreprise,
école, famille, sont toutes concernées. Il s’avère nécessaire de mettre en place
des systèmes de gestions de leurs connectivités, aussi la question de sécurité, de
filtrage des sites web, de contrôle d’accès deviennent alors incontournable et
nous fait recourir à divers outils comme les VPN, Firewall et les proxys.
Pour la réalisation de notre projet, nous aborderons d’abord les différentes
problématiques pouvant pousser à l’utilisation des proxys dans nos milieux et
présenter ensuite une généralité sur ces proxys. Nous terminerons en mettant
en exergue l’outil que nous aurons choisi : le SQUID à travers son installation, sa
configuration et le déploiement.

Thème : Mise en place et configuration d’un proxy


2
ANNEE ACADEMIQUE 2019-2020 06/06/2020

I. PROBLEMATIQUE
Les entreprises ont besoin de se protéger face à certaines menaces interne
tel le téléchargement de contenu musicaux et/ou pédophile avec un ordinateur
appartenant à l’entreprise. Celle-ci doivent aussi faire face aux menaces externes
via l’infection malicieuse (virus, malware) et la fuite d’information (documents
confidentiels, bases de données). L’administrateur se doit donc d’être en mesure
de différencier les sites à risques pour l’utilisateur afin de restreindre leur accès.
De plus, la très forte accélération des réseaux sociaux tels que Instagram,
Facebook, twitter et le média de partage et de visionnage de vidéo YouTube
pausent de sérieuses difficulté en matière de filtrage de contenu internet dans
l’éducation nationale. Car si YouTube peut contribuer à former ou divertir les
élèves il contient également de nombreux contenu inapproprié pour les enfants.
Ainsi certains écoles et entreprises peuvent censurer ces réseaux sociaux ; c’est
le cas de la chine qui restreint tout accès à ses différents réseaux de
divertissement. Quels sont les outils qui peuvent nous permettre de sécuriser,
contrôler les accès et les utilisations faits sur Internet ? Nous allons tenter de
répondre à ces questions en s’aidant d’un serveur proxy. Il serait judicieux de
préciser que le proxy n’est pas le seul outil capable de répondre aux
préoccupations posées ci-haut sans oublier les limites et les failles que celui-ci
peut présenter.

II. GENERALITES SUR LES PROXYS


Encore appelé serveur mandataire, un serveur proxy est un hôte qui fait le
relais entre un réseau local et l’internet permettant d’y faciliter ou surveiller le
trafic. Plusieurs protocoles comme FTP, SOCKS, Gopher streaming … l’utilisent
même s’il fait plus office pour les requêtes HTTP. Certaines de leurs
caractéristiques faisant référence à la réalisation technique de ces composants
de réseau ainsi que sur les différences liées à leur application fait état d’une
classification courantes : proxy de niveau circuit, proxy de niveau application et
le serveur dédié et générique.
➢ Proxy de niveau circuit : fonctionne sur la couche transport du modèle
OSI et ne peut analyser les données, généralement utilisé comme
module de filtre et de pare-feu via des ports et des adresses IP. Le

Thème : Mise en place et configuration d’un proxy


3
ANNEE ACADEMIQUE 2019-2020 06/06/2020

filtrage se base sur le principe du tout ou rien ; les paquets sont soit
transmis soit bloqués.
➢ Proxy de niveau application : se trouve la couche 7 du modèle OSI et
dispose de fonctions dont le but d’analyser des paquets de données,
de les bloquer et de transmettre en fonction des règles préconfigurées.
➢ Proxy dédié : définie un protocole de communication particulier. En
général celui-ci fonctionne parallèlement aux protocoles tels que HTTP,
FTP, ou SMTP.
➢ Proxy générique : contrairement aux proxys dédiés, celui-ci n’est pas
spécialisé et est utilisé pour plusieurs protocoles de communication.
Dans la pratique un proxy de niveau application est un serveur de proxy dédié et
les serveurs de proxy génériques ont eux utilisés au niveau circuit.

III. ETUDE DE PROXY


1. ROLES ET FONCTIONNALITES
Les proxys intègrent plusieurs fonctionnalités à savoir :
Authentification & Filtrage : contrôle de contenu de sites web en
interdisant leur accès. Défini également des droits différents pour
chaque client, les heures autorisées et les sites accessibles. Il est
possible d’imposer une authentification des utilisateurs avant de leurs
ouvrir l’accès au réseau extérieur afin de : renforcer la sécurité en
limitant l’accès au seule personne autorisée.
Fonction cache : cela leur permet d’assurer une accélération de la
navigation car après une requête HTTP à travers un proxy, les réponses
sont stockées au niveau de sa mémoire cache et pour une même
requête ultérieure plus besoin d’aller jusqu’au serveur web.
La journalisation des requêtes : Génère des fichiers de journalisations
comprenant toutes les requêtes effectuées par tous les clients. Ces
fichiers « LOGS contiennent au minimum les informations suivantes :
dates et heures, identités du client (adresse IP, Nom), l’URL demandée
le résultat de la requête. L’exploitation de ces LOGS permet à
l’administrateur de contrôler l’utilisation faite par ses clients de
redéfinir la politique de sécurité du réseau, de redimensionner sa
bande passante ou encore d’intervenir auprès d’un utilisateur qui visite
des sites malveillants ou sans rapport avec son activité

Thème : Mise en place et configuration d’un proxy


4
ANNEE ACADEMIQUE 2019-2020 06/06/2020

La protection du réseau locale : elle protège les machines en bloquant


les ports particulièrement vulnérables.
L’anonymat : Etant donné que les serveurs proxy empêchent les
connexions directes entre les émetteurs et les récepteurs, il est
possible de cacher l’adresse IP d’un client ; chaque requête d’un client
vers une cible distante via un proxy aura pour adresse expéditeur, celui
du proxy permettant ainsi de préserver un certain anonymat.
Le contrôle de la bande passante et répartition des charges : Le
serveur proxy octroie aux clients d’un réseau les ressources définies en
amont en fonction de leur charge. Ainsi, on peut garantir un bon
fonctionnement de la bande passante, sans que des applications ne la
bloquent. En tant qu’interface centrale, un serveur proxy permet
également de mutualiser sur différents systèmes des requêtes des
clients qui exigent beaucoup de ressources ou alors des réponses du
serveur. Ainsi, les charges sont uniformément réparties au sein du
réseau informatique.

2. LES DIFFERENTS « TYPES » DE PROXY


Plusieurs types de proxy existent à savoir les proxys transparents qui
laissent passer l’adresse IP et signale aussi l’utilisation d’un proxy. Les proxys
anonymes qui permettent de masquer la véritable adresse IP, cependant leur
utilisation ne rend pas totalement indétectable l’adresse IP. Nous avons
également des proxys hautement anonymes plus efficaces de tous permettent
de naviguer sur internet de manière totalement anonymes.
On retrouve des logiciels serveurs proxys diversifiés à savoir :
Squid : serveur open source le plus utilisé
Gatejs : server proxy http open source avec comme objectif la
performance, la simplification et la factorisation des codes informatiques
Privoxy : serveur open source dont l’objectif est la protection des
informations personnelles des utilisateurs
FreeProxy : serveur permettant une navigation anonyme et sécurisée sur
le Web
JanusVM : même fonction que FreeProxy

Thème : Mise en place et configuration d’un proxy


5
ANNEE ACADEMIQUE 2019-2020 06/06/2020

JonDonym : logiciel populaire et open source pour se connecter aux


chaines des anonymiseurs
Ghost navigattor : navigateur Web préconfiguré pour se connecter à
plusieurs serveurs proxys repartis dans plusieurs pays.
TcpCatcher : serveur proxy TCP et HTTP gratuit à but éducatif.
Microsoft Forefront Threat Managment Gateway : logiciel proposant un
proxy et un pare-feu.
Varnish : serveur proxy simple efficace.
Proxy Olfeo : logiciel proposant un proxy en SaaS.
SSH Proxy : serveur proxy open source pour le protocole SSH.
IMAPproxy : serveur proxy open source pour le protocole IMAP
SMAP : serveur proxy pour le protocole SMTP.
DeleGate (networking) : serveur proxy multiplateforme multi-usage
mandaté au niveau applicatif ou au niveau session
Kproxy : rapide et gratuit avec un navigateur portable pour surfer en
déplacement un service basé sur navigateur ; une extension pour chrome
ou Firefox.
Ces logiciels présentant tous des solutions, nous nous focaliserons sur le serveur
proxy squid qui est un logiciel libre avec une licence GPL qui nous donne
beaucoup de fonctionnalité avec de nombreux avantages mais qui a également
un certain nombre d’inconvénient.

3. LIMITES
L’utilisation des ces serveurs proxys qui s’est avérée nécessaire pour
leur avantage multiple peut se révélés comme un danger si son utilisation n’est
pas faite de manière judicieuse. L’emploi de caches à leur sein peut être un
moyen de sauvegarder des informations confidentielles : mot de passe lors de
connexion à une banque par exemple, pouvant être divulguées ou utiliser à des
fins malveillantes.

Thème : Mise en place et configuration d’un proxy


6
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Aussi avec la technologie utilisée sur les sites web, l’utilisation d’un
mandataire peut être source de lenteur ou même un empêchement dans la
communication entre le client et le serveur web puisque certains sites utilisent
des technologies de connexion directes entre ceux-ci.

IV. ETUDE DU PROXY SQUID

Figure 1

Squid est un proxy libre de référence crée sous licence GPL en juillet 1996
qui offre de nombreuses fonctionnalités comme le contrôle d’accès, la mémoire
DNS, le mandataire réserve, la mémoire cache. Contrairement aux serveurs
proxy classiques, un serveur Squid gère toutes les requêtes en un seul processus
d’entrée/sortie, non bloquant.
Il est à préciser que notre serveur proxy sera déployé sur une machine linux avec
toutes les dispositions nécessaires.

1. FONCTIONNEMENT DU SQUID
Le principe de fonctionnement basique d’un serveur proxy est assez
simple : il s’agit d’un serveur “mandaté’’ par une application pour effectuer une
requête sur Internet a sa place. Ainsi, lorsqu’un utilisateur se connecte à
l’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.

Thème : Mise en place et configuration d’un proxy


7
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Le serveur proxy va alors se connecter au serveur que l’application cliente


cherche à joindre et lui transmettre la requête. Le serveur va ensuit donner sa
réponse au proxy, qui va à son tour transmettre à l’application cliente. Les objets
consultés par les clients sur internet, sont stockés en cache disque par le serveur.
A partir du deuxième accès, la lecture se fera en cache, au lieu d’être réalisée sur
le serveur d’origine. De ce fait il permet d’accélérer nos connections à internet
en plaçant en cache les documents les plus consultés.

Figure 2

Figure 3

Thème : Mise en place et configuration d’un proxy


8
ANNEE ACADEMIQUE 2019-2020 06/06/2020

2. INSTALLATION
2.1 INSTALLATION MANUELLE
Avant de commencer, il serait préalable de télécharger la dernière version
stable de SQUID. On peut l’acquérir sur le site officiel de SQUID à l’adresse
suivante : http://www.squid-cache.org/Versions/. La dernière version actuelle
stable est la version 4.11 (au 19 Avril 2020).
Une fois le logiciel au format tar.gz (c’est-à-dire compressé sous ce format)
téléchargé, on pourra alors l’installer et on suppose que le fichier décompressé
sera placé dans le répertoire /usr/local/src.
Décompression via la commande :

# tar –zxvf squid-4.5-20190208-r568e66b7c.tar.gz –directory = /usr/local/src.

On obtient ce répertoire : /usr/local/src/ squid-4.5-20190208-r568e66b7c.

On se place ensuite dans le répertoire obtenu :

# cd /usr/local/src/squid-4.5-20190208-r568e66b7c.

Préparation des options de compilation :

# ./configure –prefix =/usr/local/squid

Si tout s’est bien passé, il ne reste plus qu’à compiler.


Compilation avec la commande :
# make all

Installation :
# make install

A la fin de l’installation, les répertoires suivants seront créés :


- /usr/local/squid : répertoire de base de SQUID.

Thème : Mise en place et configuration d’un proxy


9
ANNEE ACADEMIQUE 2019-2020 06/06/2020

- /usr/local/squid/etc : répertoire contenant la configuration de SQUID.


- /usr/local/squid/bin : répertoire contenant les fichiers binaires et les
scripts.
- /usr/local/squid/logs : répertoire contenant les logs (l’historique).

2.2 INSTALLATION AUTOMATIQUE


Pour l’installation automatique de SQUID, il suffit juste de disposer d’une
connexion internet, de se connecter en tant que root sur le terminal de la
machine et de taper la commande :

# apt-get install squid

C’est le système qui se chargera maintenant de télécharger la dernière version


stable disponible dans les dépôts et éventuellement les dépendances s’il y en a.
L’installation automatique est ainsi recommandée car cette dernière se charge
d’acquérir à notre place tous les fichiers nécessaires et aussi de les placer à
l’endroit qu’il faut.
❖ Le fichier de configuration se trouvera dans le répertoire /etc/squid et
portera le nom de squid.conf.
❖ Les logs se trouveront dans le répertoire /var/log/squid.

3. CONFIGURATION
Pour configurer le serveur proxy, il va falloir modifier le fichier de
configuration squid.conf en y ajoutant des instructions.
Avant de commencer il faut figer l’adresse IP de votre machine de sorte à
avoir une adresse IP statique pour la machine hôte.
Aussi il est conseillé de dupliquer le fichier de configuration squid de sorte à
pouvoir le restaurer en cas de mauvaise manipulation.

# cp /etc/squid/squid.conf /etc/squid/squid.conf.old

Thème : Mise en place et configuration d’un proxy


10
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Figure 4

Extrait du fichier de configuration « squid.conf »


Pour commencer nous allons d’abord nommer le proxy avec l’instruction
suivante :

Visible_hostname Squid

Ensuite nous allons définir le port sur lequel le proxy écoute. Par défaut squid
écoute sur le port 3128

http_port 3128

Les ACL (Access Control List)


Les ACL sont des règles qui permettent de contrôler tout ce qui passe par le
serveur proxy. Cela permet d’autoriser ou d’interdire certaines transactions.
Les ACL sont des listes qui permettent de définir et de contrôler des accès à des
ressources

Thème : Mise en place et configuration d’un proxy


11
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Syntaxe :

Acl aclname acltype string [string2]

. Acl mot clé de la directive


. aclname nom de la liste
.acltype : il existe plusieurs types
. src adresse IP source (client)
Adresse/ masque ou plage d’adresse
.dst adresse IP de la destination (Cible)
. Srcdomain : domaine du client
. dstdomain : domaine de destination
. Url_regex : chaine contenue dans l’URL
▪ Possibilité d’utiliser des fichiers
▪ Sensible à la casse
Nous allons définir une ACL pour contrôler les accès depuis un réseau donné :

Acl localnet src 192.168.43.208/24

Acl nom_reseau src 192.168.0.0/255.255.0.0

Dans notre liste nous avons décidé d’interdire l’accès aux domaines :
www.facebook.com et www.youtube.com

acl black_list dstdomain www.facebook.com


acl black_list dstdomain www.youtube.com

Interdire l’accès à tous les sites contenant le mot « porn »

acl mauvais url_regex porn

En se servant d’un fichier nano /etc/squid/nom_fichier

Thème : Mise en place et configuration d’un proxy


12
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Acl interdiction url_regex ‘’/etc/squid/nom_fichier ‘’

Les ACL étant définies, pour pouvoir les utiliser, il faut les activer dans les
directives http_access.
Syntaxe :
http_access allow | deny [ !]aclname

http_access : mot clé de la directive


allow : autorisation d’une ACL
deny : interdiction d’une ACL
aclname : nom de l’ACL
Il est possible d’indiquer deux noms d’ACL à la suite. Les ACL doivent
être vraies en même temps.
Il est obligatoire de commencer par les autorisations et terminer par les
interdictions.
Autorisation des accès depuis le réseau « nom réseau »

http_access allow nom_reseau

Interdiction d’accès aux domaines facebook.com et youtube.com définis dans


l’ACL « black_list »
http_access deny black_list

Interdiction d’accès aux sites contenant le mot « porn » défini dans l’ACL
« url_regex »

http_access deny url_regex

4. DEPLOIEMENT
Il y a plusieurs façons d’utiliser un proxy :
➢ Utilisation optionnelle :

Thème : Mise en place et configuration d’un proxy


13
ANNEE ACADEMIQUE 2019-2020 06/06/2020

L’accès direct à Internet peut être possible, sans passer par le proxy, en faisant
fit des avantages du proxy.
➢ Utilisation obligatoire et explicite :
Le seul moyen d’accéder à Internet est alors de passer à travers le proxy-cache
mais les utilisateurs doivent configurer manuellement leur navigateur (ou autre
application) pour utiliser ce proxy-cache
Illustration de la configuration des navigateurs :

Figure 5

Thème : Mise en place et configuration d’un proxy


14
ANNEE ACADEMIQUE 2019-2020 06/06/2020

Figure 6

Figure 7

Thème : Mise en place et configuration d’un proxy


15
ANNEE ACADEMIQUE 2019-2020 06/06/2020

➢ Utilisation peut être obligatoire et implicite :


Le seul moyen d’accéder à Internet est de passer à travers le proxy-cache mais
les utilisateurs n’ont pas besoin de configurer leur navigateur, leur connexion
passe par le proxy-cache de manière transparente. Il s’agit ici de configurer le
routage du réseau pour l’utilisateur final soit oriente vers le serveur mandataire
sans avoir à modifier sa configuration.
Cette configuration est obtenue par la translation d’adresse IP.
Pour activer le proxy transparent il suffit de taper la ligne suivante :

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --


to-port 3128

Cette ligne indique a la machine d'intercepter toutes les requêtes sur un port 80
, et de les rediriger vers le proxy.

iptables -t nat -A PREROUTING -i eth0 -s 192.168.6.0/24 -p tcp --


dport 80 -j REDIRECT --to-port 3128

Cette ligne provoque le même effet que la ligne précédente, à la différence


qu'elle restreint son action uniquement au réseau local.
Avec les deux lignes citées précédemment, les machines clientes de notre réseau
local qui tentent d'accéder par exemple à www.google.fr sur le port 80 seront
tout simplement redirigées sur le serveur proxy http.

Thème : Mise en place et configuration d’un proxy


16
ANNEE ACADEMIQUE 2019-2020 06/06/2020

CONCLUSION
Pour un maximum de sécurité, en entreprise, les services de type mail sont gérés par des
serveurs locaux, afin d'éviter que les utilisateurs du réseau utilisent leurs comptes existants
sur internet et ainsi importer des virus et autres spywares issus de leurs comptes mail mal ou
pas du tout protégés.
En pratique, ce projet a été très bénéfique pour nous car il nous a permis de non seulement
comprendre ce qui est un proxy avec tous ses utilités, mais aussi de comprendre son
fonctionnement dans plusieurs circonstances. Nous avons compris qu’il est souvent
nécessaire de diriger tous les ports de connexion des entreprises, des établissements, des
universités vers un proxy pour permettre à ces employés, élèves et étudiants de se concentrer
sur leurs tâches quotidienne

Thème : Mise en place et configuration d’un proxy


17
ANNEE ACADEMIQUE 2019-2020 06/06/2020

BIBLIOGRAPHIE ET WEBOGRAPHIE
BIBLIOGRAPHIE

WEBOGRAPHIE

Thème : Mise en place et configuration d’un proxy


18