Outils personnels

Proxy non-transparent et filtrage : Squid + SquidGuard

De wikiGite

Révision datée du 30 janvier 2013 à 16:33 par Pierrick (discussion | contributions) (vider le cache)

Installation et configuration

Installer les paquet squid dans system => Package. La configuration se fait dans Services => Proxy Server

Sur l'onglet General dans la configuration de squid:

  • proxy interface : LAN
  • Cocher la case Allow users on interface
  • cocher la case Transparent proxy.

mettre en cache les mises à jours

  • sur l'onglet general Ajouter ceci dans la partie Custom Options :
# Mises à jour des Os;
# En cache pendant 90 jours ;
refresh_pattern -i .*apple\.com/.*\.(pkg|dmg) 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 .*(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 ;
# 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 .*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;
# Cache 7 jours;
refresh_pattern -i /.*\.(jpg|bmp|tif|gif|png|tiff|jpeg|raw|pict|psd) 10080 100% 10080 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i /.*\.(doc|docx|xls|xlsx|ppt|pptx|pdf|dot|txt) 10080 100% 10080 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i /.*\.(iso|wmv|mov|rm|avi|wav|mp3|mp4|mpeg|mpg|divx|xvid|swf|flv|x-flv) 10080 100% 10080 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
# mises à jours des AntiVirus ;
# Cache 1 jour;
refresh_pattern -i .*symantecliveupdate\.com/.*\.(zip|exe) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*avast\.com/.*\.(vpu|vpaa) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
# refresh_pattern -i .*kaspersky\.com/.*\.(.*) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
# refresh_pattern -i .*kaspersky-labs\.com/.*\.(.*) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*update\.nai\.com/.*\.(.*) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*avg\.com/.*\.(bin) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*spywareblaster\.net/.*\.(dtb) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
refresh_pattern -i .*avira-update\.com/.*\.(gz) 1440 100% 1440 override-expire override-lastmod reload-into-ims ignore-reload ignore-no-cache ignore-private;
#pas de limite de taille; If range_offset_limit ist set to -1 the quick abort options will NOT work.;
range_offset_limit 0;
  • Sur l'onglet Cache mgmt :

Changer l'espace disque alloué pour stoker le cache sur Hard Disk Cache size par une valeur plus grande. Définir en fonction de l'espace disque disponible. Mettre minimum 3000 (3Go) pour mettre en cache les mises à jour.
Changer la taille maximum par fichier sur Maximum object size. Mettre minimum 512000 (512 Mo)

  • Sur l'onglet Traffic mgmt :

Finish transfer if more than x % finished 90


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

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