Outils personnels

Proxy non-transparent et filtrage : Squid + SquidGuard : Différence entre versions

De wikiGite

(vider le cache)
(Sources)
 
(18 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
== Introduction ==
 +
Notes concernant l'installation d'un pfsense et d'un proxy pour filtrer le HTTP et le HTTPS.
 +
Pour filtrer le HTTPS le proxy doit être en mode non-transparent, ce qui implique une configuration explicite sur les postes clients (navigateurs).
 +
 +
<br/>
 +
 
== Installation et configuration ==
 
== Installation et configuration ==
Installer les paquet squid dans ''system => Package''. La configuration se fait dans ''Services => Proxy Server''
+
Dans ''system => Package'' installer les paquets :
 +
* Squid
 +
* SquidGuard
 +
 
 +
La configuration de Squid se fait dans ''Services => Proxy Server''
  
Sur l'onglet ''General'' dans la configuration de squid:
+
Sur l'onglet ''General'' dans la configuration de Squid:
* proxy interface : LAN
+
* S'assurer que proxy interface pointe sur la bonne carte
 
* Cocher la case Allow users on interface
 
* Cocher la case Allow users on interface
* cocher la case Transparent proxy.
+
* Sauver la configuration
 +
 
 +
Ici Squid devrait fonctionner, en mode non-transparent. Configurer un poste client avec les infos du proxy pour vérifier.
  
 +
<!--
 
== mettre en cache les mises à jours ==
 
== mettre en cache les mises à jours ==
 
* sur l'onglet ''general'' Ajouter ceci dans la partie ''Custom Options'' :
 
* sur l'onglet ''general'' Ajouter ceci dans la partie ''Custom Options'' :
Ligne 15 : Ligne 28 :
 
refresh_pattern -i .*microsoft\.com/.*\.(cab|exe|dll|msi|msp|psf) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
refresh_pattern -i .*microsoft\.com/.*\.(cab|exe|dll|msi|msp|psf) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
refresh_pattern -i .*windowsupdate\.com/.*\.(cab|exe|dll|msi|msp|psf) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
refresh_pattern -i .*windowsupdate\.com/.*\.(cab|exe|dll|msi|msp|psf) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*(ubuntu.|canonical.)com/.*\.(tar|bz|bz2|gpg|gz|zip|deb) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
+
refresh_pattern -i .*(ubuntu|canonical)\.com/.*\.(tar|bz|bz2|gpg|gz|zip|deb) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
# Mises à jour Adobe et Pinnacle ;
 
# Mises à jour Adobe et Pinnacle ;
 
# En cache pendant 90 jours;
 
# En cache pendant 90 jours;
refresh_pattern -i .*adobe\.com/.*\.(exe|msi) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
+
refresh_pattern -i .*(adobe|macromedia)\.com/.*\.(exe|msi) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
#refresh_pattern -i .*pinnaclesys\.com/.*\.(cab|exe|msi|rar|zip) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
#refresh_pattern -i .*pinnaclesys\.com/.*\.(cab|exe|msi|rar|zip) 129600 100% 129600 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
 
#Dokument, Videos, Audio;
 
#Dokument, Videos, Audio;
Ligne 45 : Ligne 58 :
 
* Sur l'onglet ''Traffic mgmt'' :
 
* Sur l'onglet ''Traffic mgmt'' :
 
Finish transfer if more than x % finished 90
 
Finish transfer if more than x % finished 90
 +
-->
  
 +
== Configuration de SquidGuard ==
  
== vider le cache ==
+
La configuration de SquidGuard se fait dans ''Services => Proxy filter''
 +
 
 +
* Activer les blacklists :
 +
 
 +
Dans l'onglet général, en bas de la page, cocher "Enable blacklists" et remplir le champ avec l'adresse de téléchargement d'un fichier de blacklists (http://dsi.ut-capitole.fr/blacklists/download/blacklists_for_pfsense.tar.gz). Sauvegarder.
 +
 
 +
Dans l'onglet blacklists, le lien entré à l'étape précédente doit apparaître. Cliquer sur "Download".
 +
 
 +
* Paramètrer les blacklists
 +
 
 +
Dans l'onglet "Common ACL", cliquer sur "Target Rules List" dans le bandea rouge pour dérouler la liste des Blacklists. Trois états possibles pour les listes :
 +
 
 +
'''Allow''' Les connexions seront autorisées <br/>
 +
'''Deny''' Les connexions seront bloquées <br/>
 +
'''Whitelist''' Les connexions seront autorisées MEME SI le site figure également dans une liste marquée "Deny".
 +
 
 +
<br/>
 +
 
 +
== Vider le cache ==
  
 
Voici la procédure pour supprimer tous le cache de squid manuellement. Une tache cron redémare squid toutes les 5 minutes. Il faut donc réaliser ces étapes rapidement.
 
Voici la procédure pour supprimer tous le cache de squid manuellement. Une tache cron redémare squid toutes les 5 minutes. Il faut donc réaliser ces étapes rapidement.
Ligne 61 : Ligne 94 :
 
* Redémarrer Squid :
 
* Redémarrer Squid :
 
/usr/local/etc/rc.d/squid.sh start
 
/usr/local/etc/rc.d/squid.sh start
 +
 +
<br/>
  
 
== Lightsquid ==
 
== Lightsquid ==
Ligne 66 : Ligne 101 :
  
 
La visualisation se fait dans ''Services => Proxy Reports''
 
La visualisation se fait dans ''Services => Proxy Reports''
 +
 +
<br/>
 +
 +
== Listes personnalisées ==
 +
En plus des listes de catégories disponibles sur internet, on créer notre propre catégorie. Pour se faire, dans la page de configuration du filtre proxy, sous l'onglet "Target Categories" et "Add Item" (à droite de la liste).
 +
 +
Vous pouvez ensuite entrer des noms de domaine ou URLs de sites dans les champs correspondants.
 +
 +
Une fois enregistrée, cette catégorie apparaîtra avec les autres sous l'onglet "Common ACLs".
 +
 +
Deux cas de figures : <br/>
 +
'''Bloquer des sites''' :
 +
Il suffit, comme pour les autres de régler le menu déroulant à droite de la liste sur "Deny"
 +
<br/>
 +
 +
'''Autoriser des sites''' :
 +
Par défaut les site bloqués (Deny) sont prioritaires sur les sites autorisés (Allow). Pour passer au dessus, régler sur "Whitelist"
 +
 +
<br/>
  
 
== Sources ==
 
== Sources ==
 
http://forum.pfsense.org/index.php?topic=46791.0;prev_next=prev : bug squid télécharge en continue les mises a jours
 
http://forum.pfsense.org/index.php?topic=46791.0;prev_next=prev : bug squid télécharge en continue les mises a jours
 +
 
http://doc.pfsense.org/index.php/Setup_Squid_as_a_Transparent_Proxy : doc officielle
 
http://doc.pfsense.org/index.php/Setup_Squid_as_a_Transparent_Proxy : doc officielle

Version actuelle datée du 18 août 2015 à 10:05

Introduction

Notes concernant l'installation d'un pfsense et d'un proxy pour filtrer le HTTP et le HTTPS. Pour filtrer le HTTPS le proxy doit être en mode non-transparent, ce qui implique une configuration explicite sur les postes clients (navigateurs).


Installation et configuration

Dans system => Package installer les paquets :

  • Squid
  • SquidGuard

La configuration de Squid se fait dans Services => Proxy Server

Sur l'onglet General dans la configuration de Squid:

  • S'assurer que proxy interface pointe sur la bonne carte
  • Cocher la case Allow users on interface
  • Sauver la configuration

Ici Squid devrait fonctionner, en mode non-transparent. Configurer un poste client avec les infos du proxy pour vérifier.


Configuration de SquidGuard

La configuration de SquidGuard se fait dans Services => Proxy filter

  • Activer les blacklists :

Dans l'onglet général, en bas de la page, cocher "Enable blacklists" et remplir le champ avec l'adresse de téléchargement d'un fichier de blacklists (http://dsi.ut-capitole.fr/blacklists/download/blacklists_for_pfsense.tar.gz). Sauvegarder.

Dans l'onglet blacklists, le lien entré à l'étape précédente doit apparaître. Cliquer sur "Download".

  • Paramètrer les blacklists

Dans l'onglet "Common ACL", cliquer sur "Target Rules List" dans le bandea rouge pour dérouler la liste des Blacklists. Trois états possibles pour les listes :

Allow Les connexions seront autorisées
Deny Les connexions seront bloquées
Whitelist Les connexions seront autorisées MEME SI le site figure également dans une liste marquée "Deny".


Vider le cache

Voici la procédure pour supprimer tous le cache de squid manuellement. Une tache cron redémare squid toutes les 5 minutes. Il faut donc réaliser ces étapes rapidement.

  • Arrêter Squid :

/usr/local/etc/rc.d/squid.sh stop

  • Vider le cache de Squid :

echo "" > /var/squid/cache/swap.state

  • Supprimer tous les répertoires sous /var/squid/cache/ :

rm -Rf /var/squid/cache/0*

  • Redémarrer Squid :

/usr/local/etc/rc.d/squid.sh start


Lightsquid

Installer lightsquid pour visualiser des statistiques sur l'utilisation du réseau dans system => package. Dans la configuration générale de squid, vérifier que la valeur de squid Log store directory pointe bien sur /var/squid/log sans S.

La visualisation se fait dans Services => Proxy Reports


Listes personnalisées

En plus des listes de catégories disponibles sur internet, on créer notre propre catégorie. Pour se faire, dans la page de configuration du filtre proxy, sous l'onglet "Target Categories" et "Add Item" (à droite de la liste).

Vous pouvez ensuite entrer des noms de domaine ou URLs de sites dans les champs correspondants.

Une fois enregistrée, cette catégorie apparaîtra avec les autres sous l'onglet "Common ACLs".

Deux cas de figures :
Bloquer des sites : Il suffit, comme pour les autres de régler le menu déroulant à droite de la liste sur "Deny"

Autoriser des sites : Par défaut les site bloqués (Deny) sont prioritaires sur les sites autorisés (Allow). Pour passer au dessus, régler sur "Whitelist"


Sources

http://forum.pfsense.org/index.php?topic=46791.0;prev_next=prev : bug squid télécharge en continue les mises a jours

http://doc.pfsense.org/index.php/Setup_Squid_as_a_Transparent_Proxy : doc officielle