Mise en place d’un Proxy sous IPCOP

I. Présentation

IPCOP est avant tout un firewall, mais, la distribution contient d’autres services parmi lesquels le proxy qui est enfaite un Squid administrable par l’interface web d’IPCOP. Nous allons voir dans ce tutoriel la mise en place de la fonction de proxy sous IPCOP, mais avant de commencer je vous invite à suivre le tutoriel d’installation d’ICPOP 2.0.3 si nécessaire.

Pour ce tutoriel et tous ceux qui seront en rapport avec la fonction de proxy d’IPCOP, j’utiliserai l’architecture suivante :

Schéma

Pour rappel, l’intérêt d’un proxy est de pouvoir avoir une traçabilité de l’information, de mettre en cache les pages internet pour améliorer la vitesse de navigation lorsqu’il y a de nombreux clients, la demande d’authentification pour que les utilisateurs accèdent à internet, et d’effectuer du filtrage (URL grâce aux blacklistes, accès autorisé ou non selon une plage horaire, filtrage IP, filtrage MAC,…).

II. Proxy « non-transparent »

Un serveur proxy peut être « transparent » ou « non transparent » du point de vue de l’utilisateur. Dans le cas de ce tutoriel, le proxy sera « non transparent » c'est-à-dire que l’utilisateur devra préciser le proxy dans son navigateur pour pouvoir naviguer sur internet. De plus, le fait que le proxy soit « non transparent » permet de faire de l’authentification, ce qui n’est pas le cas lorsqu’il est transparent.

III. Accès au menu « Serveur mandataire »

Remarque : on appelle aussi un « serveur proxy » un « serveur mandataire ».

proxy1

Une fois que vous avez installé votre serveur IPCOP, connectez-vous à l’interface web de la manière suivante (si vous utilisez la version d’IPCOP 1.4.x, mettez « 445 » comme port) :

https://192.168.2.254:8443

Ensuite, allez dans « Services » puis « Serveur mandataire (proxy) ».

proxy2

IV. Activation du proxy

En quelques clics, il est possible d’activer la fonction de serveur Proxy sous IPCOP, autrement dit, de démarrer le service Squid.

Il suffit de cocher la case « Activé sur VERT » pour que les clients du LAN puissent l’utiliser, et ensuite, de cliquez sur « Enregistrer » plus bas dans la page. Le proxy passera « En fonction ».

Remarque : Quand vous modifiez des paramètres, n’oubliez pas de cliquer sur « Enregistrer ».

V. Configuration du proxy

Dans le cas de ce tutoriel, des champs de configuration de la partie « Paramètres communs » sont intéressants :

- Port serveur mandataire : Port sur lequel votre proxy « écoute ». C’est le port qu’il faudra indiquer dans le navigateur des clients. En général on trouve « 8080 » ou « 3128 ».

- Langues des messages d’erreurs : Indiquez la langue dans laquelle doivent s’afficher les messages d’erreurs générés par Squid sur la page web des clients.

- Affichage des messages d’erreurs : Indiquez la mise en page que vous voulez pour l’affichage des messages d’erreurs. C’est sensiblement équivalent.

- Supprimer l’information de version : Si vous souhaitez supprimer l’information de la version de Squid dans les messages d’erreurs, cochez cette case. Exemple : « (squid/3.1.19) ».

- E-mail de l’administrateur du Cache : Afficher une adresse E-mail dans les messages d’erreurs.

proxy3

La partie « Serveur proxy distant » quant à elle est inutile dans le cas d’un proxy unique et autonome.

Je vous conseil d’activer les journaux (appelé également logs) pour que le serveur Proxy enregistre les URL des sites visités par les utilisateurs et ainsi avoir une traçabilité sur le serveur des pages web visitées.

Pour se faire, il suffit de cocher la case « Journaux activés » et ensuite de cochez une des deux cases de gauche ou les deux. Selon le niveau d’enregistrement que vous souhaitez effectuer (plus ou moins complet/précis). Pour rappel, les « User-Agent », c’est le logiciel utilisé pour accéder au web donc un navigateur pour les utilisateurs faisant de la navigation.

proxy4

VI. Gestion du cache

Il est préférable de laisser les paramètres par défaut. Vous pouvez éventuellement agrandir la taille du cache si vous avez plus de place à y consacrer et que la machine supporte la charge.

Vous pouvez décider de ne pas mettre en cache certains domaines, si c’est le cas, remplissez la zone prévue à cet effet.

VII. Ports de destination

Vous devez indiquer dans ces deux zones les ports de destinations autorisés. Par défaut, les ports essentiels sont autorisés, comme le HTTP pour la navigation internet et le HTTPS pour la navigation HTTPS.

La plage de ports « 1025-65535 » autorise l’accès à tous les ports de cette plage, et, donc, pourquoi pas à une application distante qui écoute sur un des ports de la plage.

Il est préférable de mettre les ports nécessaires explicitement plutôt que de mettre une page parce que là ça laisse le champ libre aux personnes souhaitant contourner le proxy.

Par exemple, si vous souhaitez autoriser l’accès SSH il faut ajouter le port « 22 » à la liste.

proxy5

VIII. Contrôle des accès par le réseau

- La zone « Sous-réseaux permis » doit impérativement contenir l’adresse du sous-réseau ou se situe vos clients pour qu’ils puissent utiliser le proxy. Il est possible d’indiquer plusieurs adresses de sous-réseau, ce qui peut être utile si vous avez plusieurs VLANs dans votre architecture et que tout le monde utilise le même serveur proxy.

- Adresses IP non restreintes : indiquez les adresses IP auxquelles les règles de filtrage, de restrictions, ne s’appliquent pas. Ceci peut être utile pour les postes des membres du service informatique.

- Adresses IP interdites : indiquez les adresses IP qui n’ont pas le droit d’utiliser le serveur proxy, même si la machine a une adresse faisant parti d’un sous-réseau autorisé.

- Adresses MAC non restreintes : même principe que pour l’adresse IP mais en se basant sur l’adresse MAC c'est-à-dire l’adresse de la carte réseau.

- Adresse MAC interdites : même principe que pour les adresses IP interdites mais en se basant sur l’adresse MAC cette fois-ci.

proxy6

IX. Restriction de temps

Vous rêviez d’autoriser internet uniquement de 14h à 18h le mercredi ? IPCOP vous permet d’autoriser ou de refuser l’accès au proxy selon une plage horaire que vous définissez et pour chaque jour de la semaine.

Par exemple, pour autoriser l’accès de 07h00 à 19h00 tous les jours sauf le week-end, on indiquera ceci :

proxy7

Libre à vous de placer vos restrictions de temps selon vos besoins, ou d’autoriser l’accès internet tout le temps si vous ne souhaitez pas restreindre l’accès de cette manière.

X. Réduction du téléchargement

Il est possible de limiter la bande passante globale pour tous le LAN ou pour par machine lors des téléchargements, tout en se basant sur un type de contenu spécial (si vous le souhaitez).

Remarque : J’ai effectué des tests de téléchargement du même fichier, avec et sans restriction, la limitation s’applique bien sur le débit de téléchargement.

proxy8

XI. Filtre sur les types MIME

Il est possible de filtrer selon le contenu de la page en utilisant le filtrage par type MIME dont la liste est disponible sur internet. Ca peut permettre d’accélérer la navigation si vous filtrez les images par exemple, mais ça peut aussi vous permettre d’empêcher vos utilisateurs de regarder des vidéos.

Par exemple, pour ne pas afficher les images PNG, on utilise le type MIME « image/png ». Du coup, si après on va sur Neoflow.fr on ne voit plus les images :

MIME

Toutefois, il est possible de ne pas appliquer ces filtres à certains domaines en les ajoutant dans la zone « Ne pas filtrer ces destinations ».

proxy10

XII. Filtre par navigateur internet / application

Il est possible de dire au proxy d’autoriser l’accès uniquement certains navigateurs (Firefox, Internet Explorer, …) ou certaines applications (Media Player, apt-get,…) en utilisant ce filtre :

proxy11

XIII. La configuration du navigateur

Je n’en ai pas encore parlé, mais il faut indiquer au navigateur web ou à l’application que vous utilisez, le proxy à utiliser pour accéder à internet. Il suffit d’indiquer l’adresse IP de l’interface GREEN de votre serveur IPCOP et le port indiquez pour la configuration du proxy.

- Internet Explorer : Outils > Options Internet > Connexion > Paramètres réseaux > Proxy

proxy12

- Mozilla Firefox : Outils > Options > Avancé > Réseau > Paramètres > Configuration manuelle du proxy.

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5501.Voir tous les posts

5 thoughts on “Mise en place d’un Proxy sous IPCOP

  • tres bel article, mais moi j’ai installé ipcop en machine virtuelle cet article m’aidera à bien configurer le proxy. Peut-on aussi faire du filstrage de site web sociaux avec ipcop?Merci

    Répondre
    • Oui on peut bloquer les sites de réseaux sociaux grâce à une blacklist

      Répondre
  • Salut, pouvons-nous bloquer les images pornographiques de google?

    Ex : je tape dans google image : sexe

    Merci pour ton aide 🙂

    Répondre
  • Bonjour. Moi j’ai un problème concernant la redirection des ports. Je dispose d’un serveur d’application web derriere mon IPCOP et je n’arrive pas y accéder depuis le réseau RED. Et pourtant le pare feu du serveurs d’application est bassé. En local (green), je me connecte bien sur ledit serveur depuis une machine du reseau green. Mais pas depuis le réseau Red. meme le bureau à distance n’est pas accéssible depuis Red.
    J’ai constaté quele bureau à distance et même l’application Wamp installé sur une autre machine du réseau green sont accessibles depuis le réseau Red. Mais pas mon serveur d’applications.
    Si quelqu’un veut bien m’aider, j’enverrai des capture d’ecran si necessaire.
    Merci d’avance.

    Répondre
  • Bonjour! Est ce qu’on peut pas faire la réduction du téléchargement par Adresse IP ou par Groupe d’adresse IP?

    Répondre

Répondre à OUAHSAI Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.