HTTP Proxy sur Zeroshell
Sommaire
I. Présentation
Zeroshell propose nativement un service de proxy HTTP couplé à un antivirus Opensource qui se nomme ClamAV. Ces outils peuvent être d'une grande utilité lors du déploiement d'une solution Zeroshell en entreprise, car ils permettent de garantir un minimum de sécurité et de contrôle sur le comportement des utilisateurs sur Internet. Nous allons apprendre à les mettre en place et à les utiliser dans ce tutoriel .
Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell
II. Les pré-requis
Il faut tout d'abord que votre Zeroshell agisse comme le routeur d'un réseau LAN afin que la configuration en proxy transparent fonctionne. Un proxy est dit transparent lorsqu'aucune configuration n'est à faire du côté des clients pour que son action soit effective.
Les paquets sont physiquement obligés de passer par le proxy pour sortir sur d'autres réseaux ou sur Internet. En voici une illustration :
Le proxy filtre donc toutes les requêtes et les traites selon une blacklist (une liste d'URL interdites) ou une whiteliste. Le Zeroshell doit donc agir entre deux réseaux (un LAN et un WAN) et doit en être la passerelle.
III. La mise en place
Il faut donc commencer par se rendre sur l'interface web de notre Zeroshell via un navigateur :: http://<IpZeroshell>
Une fois ligué, rendez-vous dans HTTP Proxy dans la colonne de gauche. Il faut savoir que le proxy de Zeroshell agit en tant que filtre sur les requêtes que passent les clients, mais il utilise également un antivirus qui scanne les échanges afin de les sécuriser. La configuration et l'action de cet antivirus sont configurables via l'interface graphique de Zeroshell.
La fonction de filtrage est gérée par des blacklists/ whitelists qu'il est possibles de manager via l'interface graphique également. La fonction de proxy cache (le stockage des pages souvent visitées) n'est pas effectuée par le proxy de Zeroshell. Ceci est dû au fait que Zeroshell est un LiveCD et qu'il ne stocke que sa configuration sur une partition de disque. Il ne peut donc pas écrire et effacer des URL de sites constamment.
Nous arrivons alors sur l'interface de gestion principale du proxy de Zeroshell :
Nous allons commencer par déterminer sur quelle interface le proxy sera actif. Par exemple, si votre LAN se situe sur l'interface ETH00 de votre Zeroshell, il faut cliquer sur le "+" présent à droite de "HTTP Capturing Rules". C'est ici qu'on va dire sur quelle interface/ réseau le proxy doit filtrer les requêtes. Il faut alors remplir la fenêtre comme suivant :
Il faut cliquer sur "Save" une fois que les paramètres sont entrés.
Il est aussi possible de déterminer un filtrage en fonction de l'IP source ou destination des requêtes, il faut alors utiliser la forme suivante : 192.168.23.0/255.255.255.0 pour le réseau 192.168.23.0.
On peut également gérer des exceptions sur le contrôle des requêtes, si l'on souhaite que toutes les requêtes provenant de ETH00 soient filtrées sauf celles du réseau 192.168.3.0/255.255.255.0, il faut recliquer sur le "+" pour faire réapparaitre la fenêtre puis la remplir comme ceci :
Une fois encore, il faut cliquer sur "Save" pour valider les changements.
Nous pouvons ensuite passer à la configuration du proxy en lui même, il est préférable de le configurer en mode filtrage de tous les accès dans l'option HAVP Configuration (HTTP AntiVirus Proxy), comme ceci :
La suite des paramètres concerne la configuration de l'antivirus libre ClamAV que l'on peut configurer comme ceci :
- Check Images : Permet le scan des images qui transitent dans les requêtes.
- AutoUpdate Virus Signatures : permet la mise à jour automatique de la base de données antivirus.
- Number of Checks per Day : nombre de tentative de mise à jour de l'antivirus.
- Country of the Mirror : Position du miroir pour le téléchargement et la mise à jour de l'antivirus
IV. Gestion des listes
Nous pouvons enfin commencer à gérer une blacklist, nous décidons par exemple l'interdiction d'accès au site www.youtube.com. Il nous suffit de cliquer sur "Manage" et d'entrer les URLs que nous souhaitons interdire. Exemple pour www.youtube.com :
Il faut ensuite cliquer sur "Save". Il faut enfin cocher la case "Enable" en haut de la fenêtre de configuration puis cliquer sur "Save" pour appliquer les changements. Si c'est la première fois que vous activez le Proxy HTTP avec l'antivirus, le premier démarrage peut durer quelques minutes, car la base de données de l'antivirus ClamAV se met à jour, il faut alors attendre quelques minutes pour que l'activation soit effective.
V. Test à partir d'un poste client
Depuis un poste client qui utlise Zeroshell comme passerelle, il va falloir tester le bon fonctionnement de notre Proxy. Nous avons interdit l'accès à www.youtube.com, nous allons donc tenter d'y accéder via navigateur. Voici le message d'interdiction qui apparaitra :
Assurez vous bien de la route que prend votre client pour sortir de son réseau, il doit bien avoir le serveur Zeroshell comme passerelle !
VI. Analyse des logs
Il est possible de voir trois sortes de logs sur le Proxy HTTP de Zeroshell . Les logs des mise à jours de l'antivirus, il faut alors cliquer sur "Update logs" :
On peut y voir des informations sur l'état de notre antivirus. Nous voyons par exemple que la version de ClamAV est dépassé "OUTDATED" et que la dernière vérification a été faite à 20:52:53. Il est également possible de voir les logs du proxy en lui même en cliquant sur "Proxy log", nous voyons par exemple ici que des accès à un site blacklisté ont été tentés :
Nous voyons également qu'elle adresse IP a tentée d'accéder à cette URL ainsi que l'heure précise de lancement de la requête. Les derniers logs sont ceux de l'antivirus, ils sont intéressants si celui-ci détecte un virus lors d'une requête ou d'un échange, mais sinon seuls les accès à la base de données de ClamAV y sont notés :
Voila à quoi ressemble la page de configuration une fois celle-ci finie :
Article intéressant n’y aurait il pas une manip lorsqu’on est en load balancing avec 2 wan (multiwan) et le proxy pour que ce dernier utilise bien le load balancing et ne pas passer toujours par le meme lien
Merci
Hello Brad,
Je t’oriente vers ce tutoriel que j’ai également rédigé sur Zeroshell, j’y explique comment gérer de multiples passerelles avec Zeroshell
http://www.it-connect.fr/netbalancer-avec-zeroshell%EF%BB%BF/
En espérant que cela va t’aider ! =)
Si tu as d’autres questions, je t’encourage à utiliser notre beau forum.
A bientôt
salut aufait je ne parviens pas à interdire l’acces aux cites internet avec le zeroshell bien que respectant vos instructions, une fois connecté les sites web indiqués dans la black list s’ouvrent toujours.
j’utilise la 3.2.0
merci
Salut ! J’ai la même préoccupation avec la version 3.8.2
Une aide stp ?