squid squidguard
TRANSCRIPT
-
8/19/2019 Squid SquidGuard
1/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Squid/SquidGuard Nous allons mettre en place un serveur pro!" avec #quid" lui ad$oindre des fonctions avanc%es defiltra&e avec #quid'uard" et m(me en faire un pro! transparent avec l)aide d)*Pta+les.
#i une mise en place minimum de #quid ne pr%sente &u,re de difficult%s" l)insertion du -helper-
#quid'uard reste tout de m(me plus d%licate et m%rite que l)on ! passe un peu de temps.
endre le pro! transparent est asse simple" du moment que l)on a compris un petit peu le
fonctionnement du -preroutin&- avec *Pta+les" mais nous verrons que cette m%thode impose
quelques restrictions sur les possi+ilit%s de #quid.
0ne fois n)est pas coutume 1mais pourrait ! amener2" nous allons travailler avec une distri+ution
3e+ian dite -sta+le- 1la 4ood!" 5 l)heure o6 $e r%di&e ce chapitre2.
Pourquoi 3e+ian 7
• Elle est sta+le"
• elle s)installe asse simplement" si l)on a d%$5 une petite ep%rience de Linu"
• elle est tr,s simple 5 mettre 5 $our" m(me en cas de mise 5 $our de version"
• il ! a tout ce qu)il faut comme paqueta&es pour ce que l)on veut faire" et m(me +ien
d)avanta&e encore.
8ien que la 3e+ian soit utilis%e ici" rien n)interdit de le transposer 5 une autre distri+ution" sous
r%serve d)utiliser des paqueta&es de +ases de donn%es 8er9ele! compati+les avec le fonctionnement
de #quid'uard. #uivant la distri+ution" des pro+l,mes peuvent apparatre.;)ai tout de m(me rencontr% pas mal de pro+l,mes avec les et =.? en ce qui concerne
#quid et #quid'uard. C)est aussi une +onne raison pour le faire avec 3e+ian.
Pa&e ? sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
http://christian.caleca.free.fr/squid/http://christian.caleca.free.fr/squid/
-
8/19/2019 Squid SquidGuard
2/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Plan du chapitre
Fonctionnement.................................................................................................................................... G+$ectif............................................................................................................................................ G
Pr%sentation &%n%rale....................................................................................................................... G
Principe de fonctionnement............................................................................................................. G
Administration du tout.....................................................................................................................@
#quid.....................................................................................................................................................D
Confi&uration mat%rielle utilis%e..................................................................................................... D
*nstallation....................................................................................................................................... D
Confi&uration minimale...................................................................................................................B
Cr%er une ACL repr%sentant le LAN.......................................................................................... I
J sur squid.......................................................................................................................................... ??
Affiner la confi&uration................................................................................................................. ??*dentifier les utilisateurs............................................................................................................??
Construire un fichier d)utilisateurs....................................................................................... ??
Confi&urer squid pour r%clamer l)authentification de vos utilisateurs..................................?
ptimiser le cache................................................................................................................?
endre le pro! transparent...................................................................................................... ?
La r,&le de redirection..........................................................................................................?I
Param%tra&e de #quid...........................................................................................................?I
Conclusions....................................................................................................................................>
#quid'uard.........................................................................................................................................?
*nstallation..................................................................................................................................... ?
*nstaller squid'uard depuis les paqueta&es 3e+ian..................................................................?*nstallation du module squid'uard pour 4e+min....................................................................?
Confi&uration.................................................................................................................................
0n squid'uard.conf minimum.................................................................................................
Les -#ource 'roups-.................................................................................................................G>
Les -Access Control Lists-....................................................................................................... GG
J sur #quid'uard................................................................................................................................GI
Kue faire maintenant 7...................................................................................................................GI
3estination 'roups et 8lac9lists....................................................................................................GI
3estination 'roups................................................................................................................... GI
8lac9lists...................................................................................................................................GI
Comment les construire 7..........................................................................................................G=Confi&urer les -3estination 'roups-.............................................................................................G=
Construire les +ases de donn%es................................................................................................@?
-
8/19/2019 Squid SquidGuard
3/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Fonctionnement
Objectif
*nstaller un s!st,me de pro! cache" principalement pour HTTP 1%ventuellement aussi pour FTP"
dans certains cas2. Ce pro! cache propose deu fonctions principales :
• l)optimisation de la +ande passante sur le lien *nternet" lorsque de nom+reu clients sont
connect%s et qu)ils visitent plus ou moins les m(mes sites 15 la condition" +ien sMr" que ces
sites ne soient pas trop d!namiques" A#P" ;#P" PHP...
• le contrle et le filtra&e de l)acc,s 5 la toile" en se servant des 0* et" %ventuellement" des
noms d)utilisateurs" si l)on fait de l)authentification de ces derniers" autant de choses qu)il est
difficile" voire impossi+le de faire avec du filtra&e de paquets.
Tout responsa+le d)un r%seau local 5 l)usa&e de mineurs et connect% 5 l)*nternet se doit de mettre en
place un tel s!st,me de filtra&e de mani,re 5 %viter" autant que possi+le" l)acc,s 5 des sites que la
morale r%prouve. Pas +esoin de faire un dessin" n)estOce pas 7
Présentation générale
#quid" principal composant de ce s!st,me" assure les fonctions de :
• cache" pour optimiser la +ande passante"
• authentification des utilisateurs" nous en verrons une simpliste"
• filtra&e d)acc,s -+asique-" mais d%$5 int%ressant.
#quid'uard propose un filtra&e puissant d)acc,s au e+" en fonction :
• de &roupes d)utilisateurs" d%finis de diverses mani,res. *ci" nous nous +aserons sur des *Ps ou
des &roupes d)*Ps" mais il est possi+le d)utiliser l)authentification des utilisateurs mise en
place sur #quid"
• de listes de domaines et d)0* qui serviront 5 d%finir soit des ci+les autoris%es" soit des
ci+les interdites"
•
de listes de domaines et d)0* qui ne serviront qu)5 interdire l)acc,s au ci+les sp%cifi%es"• de pla&es horaires pendant lesquelles l)acc,s sera autoris% ou interdit.
Et +ien d)autres choses encore" que nous ne verrons pas ici.
Principe de fonctionnement
#quid tourne en tche de fond 1daemon2. *l %coute sur un port sp%cifique 1G?I par d%faut" mais il
est possi+le d)utiliser I>I>" plus ha+ituel pour un pro!2. L)%ventuel module d)authentification vient
se &reffer dessus" ce qui fait apparatre un certain nom+re de processus fils 1D par d%faut2.
#quid'uard vient %&alement se &reffer dessus et apparat lui aussi sous la forme de processus fils
1%&alement D par d%faut2.
Pa&e G sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
4/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Au total" une fois #quid confi&ur%" il n)! aura qu)5 d%marrer #quid et les processus d)authentification
et de filtra&e avanc% d%marreront avec.
Pour aller tr,s vite" #quid'uard utilise le format de +ases de donn%es 8er9ele! pour travailler. Pour
d%finir ces +ases" l)administrateur a recours 5 des fichiers au format tete qui seront pr% compil%s en
+ase de donn%es ou compil%s 5 la vol%e" suivant la faQon de travailler.
Nous verrons que les -destination &roups- constituent des +ases pr% compil%es" alors que les
-+lac9lists- sont compil%es 5 la vol%e et r%sident uniquement en m%moire.
Ce d%tail a son importance" toute modification de l)un ou de l)autre a!ant un impact diff%rent sur le
fonctionnement de #quid'uard" pendant la recompilation des informations.
Administration du tout
*l eiste deu modules 4e+min suffisamment +ien faits pour que l)on puisse ne pas h%siter 5 s)enservir" m(me si l)er&onomie &%n%rale o+li&e 5 pas mal $on&ler entre les modules #quid et
#quid'uard.
*l faut faire tr,s attention 5 ce que l)on fait et v%rifier chaque fois que n%cessaire que le +ut recherch%
est atteint. #quid'uard r%serve pas mal de surprises 5 ce propos.
8ien entendu" il reste tout 5 fait possi+le de n)utiliser qu)un %diteur de tete" et Qa reste pro+a+lement
la solution la meilleure" si l)on a une confi&uration tr,s complee.
3ans le cas de #quid'uard principalement" une &estion fine des +ases de donn%es pour les &roupes
de destination et les +lac9lists ne pourra se faire qu)5 partir de la li&ne de commande. Nous ne
ferons qu)effleurer le pro+l,me" si vous en arrive l5" c)est que vous (tes d%$5 asse pointus sur le
su$et pour pouvoir vous d%+rouiller tout seul avec la documentation.
Pa&e @ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
5/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Squid
Configuration matérielle utilisée
0n P** G>> 6 '*:* %:% 4squid5 -D -s?eros:/etc#
Effectivement" il tourne. N)! auraitOil rien de plus 5 faire 7 R%rifions tout de suite" squid utilise par
d%faut le port G?I. Confi&urons donc un navi&ateur du LAN pour l)utiliser et essa!ons un 0* au
hasard...
Pa&e D sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
6/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
C)%tait trop +eau... *l faudra d%$5 mettre les mains dans le cam+ouis. Note qu)il vaut mieu une
confi&uration qui interdise trop qu)une confi&uration qui" par d%faut" autorise trop" comme font
certains...
Configuration minimale
Comme 4e+min est +ien install%" mis 5 $our et tout" et que le module pour squid est +ien pr%sent"
utilisonsOle :
Pa&e B sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
7/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Les ACL 1Access Control Lists2 permettent de d%finir des conditions sur les *Ps" les ports" le
contenu de certains tetes" et $)en passe. #i vous voule tout savoir sur les diverses ACL de #quid"
ne compte pas sur moi" compte plutt sur la documentation officielle.
Les restrictions indiquent quoi faire lorsque ces conditions sont v%rifi%es. n autorise ou on interdit
en fonction d)une ACL ou d)un &roupe d)ACLs" le sens de -restriction- est donc 5 prendre avec un
peu de recul" une restriction pouvant (tre une autorisation. La premi,re -restriction- v%rifi%e est la
+onne" d)o6 l)importance de l)ordre dans lequel elles sont plac%es.
#ans faire une anal!se d%taill%e" nous vo!ons que dans la confi&uration par d%faut" seul -localhost-
peut utiliser le pro! 1Allo localhost2. *l nous faut donc faire intervenir la notion de r%seau local.
Pa&e sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
8/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Créer une ACL représentant le LAN
Nous s%lectionnons dans la liste d%roulante -Client Address- et cliquons sur -Create Ne ACL- :
Nous pouvons d%finir une %tendue"
ou toute une classe" comme c)est le
cas dans l)eemple. Notre LAN
fonctionne avec la classe
?=.?BI.>.>.
#ave...
0ne nouvelle li&ne est apparue dans
la liste des ACLs" appel%e-Localnet-
Nous allons maintenant sur -Add
pro! restriction" choisissons
-Allo- et s%lectionnons-LocalNet- dans la liste ->D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
9/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Sa marche
8ien entendu" l)id%e de faire plutt -Allo all- est une mauvaise id%e. #i votre pro! a un pied dans
l)*nternet 1s)il est install% sur la passerelle2" vous risque un pro! ouvert" avec tous les usa&es
pervertis que l)on peut en faire...
A ce niveau" nous avons une premi,re confi&uration qui fonctionne. Le fichier squid.conf a cette
allure :hierarchy9stoplist cgi-$in >acl @8"R? urlpath9rege= cgi-$in A>no9cache deny @8"R?acl all src %.%.%.%/%.%.%.%acl (anager proto cache9o$ectacl localhost src '7.%.%.'/;;.;;.;;.;;acl 66L9ports port ,, ;* '%%%%acl 6afe9ports port +%acl 6afe9ports port 'acl 6afe9ports port ,, ;*acl 6afe9ports port 7%acl 6afe9ports port '%acl 6afe9ports port '%;-*;;;acl 6afe9ports port +%acl 6afe9ports port ,++
acl 6afe9ports port ;C'
Pa&e = sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
10/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
acl 6afe9ports port 777acl 6afe9ports port C%'acl purge (ethod P8R0"acl !!"T (ethod !!"Tacl Local!et src 'C.'*+.%.%/;;.;;.;;.%
http9access allo (anager localhosthttp9access deny (anagerhttp9access allo purge localhosthttp9access deny purgehttp9access deny E6afe9portshttp9access deny !!"T E66L9portshttp9access allo localhosthttp9access allo Local!ethttp9access deny allicp9access allo alllog9fqdn on
Pa&e ?> sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
11/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
+ sur squid
Affiner la configuration
*l ! a deu points importants" qu)il peut (tre utile d)%tudier" et qui correspondent au deu fonctions
principales d)un pro!.
Identifier les utilisateurs
Attention :Vous aure des ennuis pour aut!entifier "os utilisateurs# si "ous compte rendre "otre pro$%
transparent& 'es deu$ fonctionnalités sont incompatibles&
3ans la confi&uration mise en oeuvre ici" nous ne faisons pas de contrle sur les utilisateurs"
seulement sur les *Ps des machines clientes. Rous pouve souhaiter identifier vos utilisateurs
lorsqu)ils vont surfer sur le Net. 3ans ce cas" il vous faudra mettre en place un s!st,me
d)authentification.
*l ! a plusieurs m%thodes disponi+les pour authentifier les utilisateurs du pro!. Elles font toutes
appel 5 un pro&ramme et%rieur" diff%rent suivant le mo!en choisi. 3e+ian propose les modules
suivants :
ncsaUauth" sm+Uauth" &etpnamUauth" ldapUauth" pamUauth
Les plus int%ressants sont pro+a+lement :
• ldapUauth" qui permet d)authentifier les utilisateurs depuis un annuaire L3AP 1si vous
matrise d%$5 L3AP2"
• sm+Uauth" qui permet d)utiliser un contrleur de domaine 4indos NT"
• ncsaUauth" qui utilise un fichier d)utilisateurs local.
Nous allons mettre en oeuvre ncsaUauth" c)est le plus simple" ce ne sera peutO(tre pas le plus utile"
surtout si le r%seau local est un domaine >D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
12/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
chris:$nIu0LJ"%0pcgdaniel:6B8RpB)"=h?P@(ichele:*hD@KgRdfKg
Note que les mots de passe sont chiffr%s. *l aurait %t% possi+le d)utiliser le fichier passd desutilisateurs Linu" mais ce n)est pas forc%ment une tr,s +onne id%e...
R%rifions que Qa fonctionne" en lanQant -5 la main- le module d)authentification /usr/li+/ncsaUauth.
Nous entrerons alors dans une +oucle o6 il faudra entrer sur une li&ne un nom d)utilisateur et son
mot de passe" s%par%s par un espace :
# /usr/li$/squid/ncsa9auth /etc/squid/userschris Mchose truc"RR
Le s!st,me r%pond par V ou par E suivant que l)authentification r%ussit ou non.
#orte de la +oucle avec un -ctrlOd-.
#i Qa fonctionne comme Qa" c)est d%$5 +on si&ne.
Configurer squid pour réclamer l(aut!entification de "os utilisateurs
n peut le faire avec 4e+min" faisonsOle donc.
Pa&e ? sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
13/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Pa&e ?G sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
14/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Pour Aut!entification program" indique le chemin du module ncsaUauth" suivi du chemin dufichier des utilisateurs" s%par%s par un espace.
Pour )umber of aut!entication programs :
"Defaults to 5 if an authenticator has been enabled."
Lorsqu)un pro&ramme d)authentification a %t% choisi" le nom+re d)instances de ce pro&ramme est par
d%faut de D. #i vous ave de nom+reu utilisateurs" il sera peutO(tre n%cessaire d)au&menter ce
nom+re.
*ime to cac!e passords for :"How long Squid will cache a successful login for before querying the authentication program
again."
Com+ien de temps #quid va se souvenir d)une authentification r%ussie" avant de demander unenouvelle authentification.
*ime to bind user to an IP address for :
"If the same user tries to login twice from two different IP addresses during this period, he will
benied. his can be used to pre!ent the sharing of proy passwords between multiple users."
#i le m(me utilisateur essa!e de s)authentifier depuis deu machines diff%rentes dans un laps de
temps trop court" il sera refus%. Ceci peut (tre utilis% pour emp(cher le parta&e d)un droit d)acc,s
entre plusieurs utilisateurs.
Cette derni,re option est tout 5 fait di&ne d)int%r(t...
n -save-" on -appl! les chan&es- et on croit que c)est fini" mais non... #ans ACL pour utiliserl)authentification" squid ne demandera rien 5 vos utilisateurs.
R%rifions tout de m(me qu)apr,s rechar&ement de squid le module d)authentification est +ien
pr%sent :
g:/usr/li$/squid# ps au= < grep 1s2quidroot ';* %.% '.' +, '', > 6 ',: %:%% /usr/s$in/squid -D -s?pro=y ';+ %.% 7.% C*'* *7' > 6 ',: %:%, 4squid5 -D -s?
Non" il n)! est pas.
Pa&e ?@ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
15/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Passons donc au ACLs. n a d%$5
vu comment s)! prendre" nous
cr%ons une nouvelle ACL de t!pe
-Eternal auth- :
1save2
Nous plaQons une nouvelle li&ne
dans les restrictions" en interdisant
1den!2 5 tous ceu qui ne satisfont
pas 13on)t match ACLs2 5 l)ACL
0sers.
1save2
Enfin" nous remontons cette
restriction $uste au dessus de allo
LocalNet.
Application des chan&ements" nous v%rifions que maintenant le module d)authentification est +ienchar&% :
g:/usr/li$/squid# ps au= < grep 1s2quidroot ';* %.% '.' +, '', > 6 ',: %:%% /usr/s$in/squid -D -s?pro=y ';+ %.% 7.% C*'* *7' > 6 ',: %:%, 4squid5 -D -s?pro=y '7+ %.% %., '7' ++ > 6 '*:% %:%% 4ncsa9auth5 /etc/squid/userspro=y '7C %.% %., '7' ++ > 6 '*:% %:%% 4ncsa9auth5 /etc/squid/userspro=y '+% %.% %., '7' ++ > 6 '*:% %:%% 4ncsa9auth5 /etc/squid/userspro=y '+' %.% %., '7' ++ > 6 '*:% %:%% 4ncsa9auth5 /etc/squid/userspro=y '+ %.% %., '7' ++ > 6 '*:% %:%% 4ncsa9auth5 /etc/squid/users
Cette foisOci" il ! est. Sa devrait donc fonctionner :
Pa&e ?D sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
16/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Et voil5. Pour acc%der au monde et%rieur"#quid n%cessite maintenant une authentificaO
tion.
Comme nous l)avons param%tr%" cette authentiO
fication restera valide G> minutes 1si le navi&aO
teur n)est pas referm% entre temps2" et pendant
ces G> minutes" plus aucun autre utilisateur ne
pourra utiliser ce lo&in sur toute autre machine
de votre LAN.
#i nous allons faire un petit tour dans les derni,res li&nes de /var/lo&/squid/access.lo&" nous
constatons que le nom d)utilisateur fi&ure pour chaque requ(te :
'%;7+7;%.%* 7 pchris.(aison.(s TP9NIT/%% +C0"T http://.free.fr/i(g/picto9assunet.gif chris !!"/ -i(age/gif
'%;7+7;%.%*7 + pchris.(aison.(s TP9NIT/%% ,%'0"T http://.free.fr/i(/$lank93;3;3;.gif chris !!"/ -i(age/gif
'%;7+7**.%%, ; pchris.(aison.(s TP9NIT/%% C0"T http://.free.fr/pro(os/"gg-senior-,=7;-c.gif chris !!"/- i(age/gif
'%;7+77,.%+ , pchris.(aison.(s TP9NIT/%% 77+C0"T http://.free.fr/i(/$anniere-autopro(o-edengo.gif chris !!"/- i(age/gif
8i& 8rother se fait de plus en plus pr%sent...
Rotre fichier squid.conf ressem+le maintenant 5 ceci :
hierarchy9stoplist cgi-$in >acl @8"R? urlpath9rege= cgi-$in A>no9cache deny @8"R?acl all src %.%.%.%/%.%.%.%acl (anager proto cache9o$ectacl localhost src '7.%.%.'/;;.;;.;;.;;acl 66L9ports port ,, ;* '%%%%acl 6afe9ports port +%acl 6afe9ports port 'acl 6afe9ports port ,, ;*acl 6afe9ports port 7%acl 6afe9ports port '%
acl 6afe9ports port '%;-*;;;acl 6afe9ports port +%acl 6afe9ports port ,++acl 6afe9ports port ;C'acl 6afe9ports port 777acl 6afe9ports port C%'acl purge (ethod P8R0"acl !!"T (ethod !!"Tacl Local!et src 'C.'*+.%.%/;;.;;.;;.%acl 8sers pro=y9auth R"@8IR"Dhttp9access allo (anager localhosthttp9access deny (anagerhttp9access allo purge localhosthttp9access deny purgehttp9access deny E6afe9portshttp9access deny !!"T E66L9portshttp9access allo localhost
http9access deny E8sers
Pa&e ?B sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
17/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
http9access allo Local!ethttp9access deny allicp9access allo alllog9fqdn onauthenticate9progra( /usr/li$/squid/ncsa9auth /etc/squid/users
authenticate9ttl % (inuteauthenticate9ip9ttl % (inute
Note que vous pouve aussi &%rer la liste des utilisateurs avec la fonction -Pro! Authentication-
du module #quid de 4e+min" sans manipuler htpassd" 5 condition que :
• vous a!e cr%% le fichier des utilisateurs" m(me vide"
• vous a!e confi&ur% #quid pour utiliser ncsaUauth.
A ce moment" l)option -Pro! Authentication- fonctionnera aussi +ien que -htpassd-.
#i pour vous l)authentification est une chose primordiale" et que vous dispose d%$5 d)une source
d)authentification sur votre LAN" int%resseOvous peutO(tre 5 l)eistence d)un module
d)authentification qui vous permettrait de n)emplo!er qu)une seule +ase d)utilisateurs...
;)ai pu effectuer quelques tests avec le module d)authentification qui s)appuie sur #>D par Laurent 8A##E
http://www.hacom.nl/~richard/software/smb_auth.htmlhttp://www.hacom.nl/~richard/software/smb_auth.html
-
8/19/2019 Squid SquidGuard
18/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
op%rations :
• ediri&er en PE0T*N' le port I> 1vous devre vous contenter d)un seul port
transparent2 vers le port pro! sur son port 1G?I par d%faut pour squid2" Qa se fait
sans pro+l,mes sur votre routeur NAT avec *Pta+les"
• Confi&urer correctement squid pour qu)il interpr,te convena+lement les requ(tes
HTTP qu)il reQoit.
Attention&&&
• Cette mét!ode est incompatible a"ec l(aut!entification des utilisateurs& ,-me si squid
est configuré comme nous l(a"ons "u pour l(aut!entification ncsa# celle.ci ne
fonctionnera plus&
• cette mét!ode ne supporte que /**P& F*P est impossible en mode transparent#
• un seul port peut -tre redirigé de fa0on transparente# le 12# de préférence# puisque c(estle port !abituel pour /**P&
'a r3gle de redirection
Roici la r,&le 5 a$outer sur votre passerelle" en admettant que votre r%seau est dans ?=.?BI.>.> et
que votre pro! poss,de l)adresse ?=.?BI.>.D. Nous supposons que le pro! est install% sur la
machine qui assure %&alement le rle de passerelle 1commande 5 entrer sur une seule li&ne" +ien
entendu2 :
ipta$les -t nat - PR"R8TI!0 -s 'C.'*+.%.%/;;.;;.;;.%-p tcp -( tcp --dport +% - R"DIR"T --to-port '+
*l est possi+le de rediri&er de faQon transparente sur un pro! install% sur une autre machine que la
passerelle" 5 la condition que cette derni,re soit plac%e dans un autre r%seau *P que le LAN" faute de
quoi" la translation de port ne fonctionnera pas correctement.
Avec un routeur 5 trois voies" par eemple deu r%seau *P 1disons ?=.?BI.>.> et ?=.?BI.?.>2" et
un acc,s *nternet" si le LAN est sur ?=.?BI.>.>" il faudra placer le pro! sur ?=.?BI.?.>" disons
?=.?BI.?.. La r,&le *Pta+les s)%crira alors :
ipta$les -t nat - PR"R8TI!0 -s 'C.'*+.%.%/;;.;;.;;.%-p tcp -( tcp --dport +% - D!T --to-destination 'C.'*+.'.:'+
8ien entendu" il faudra que le routa&e se fasse entre les r%seau ?=.?BI.>.> et ?=.?BI.?.>. 3ans la
pratique" vous devre donc disposer de trois interfaces r%seau sur votre routeur NAT.
Paramétrage de Squid
Comme nous l)avons vu dans le chapitre sur HTTP?" Le client HTTP n)a&it pas de la m(me mani,re
suivant qu)il a affaire 5 un pro! ou non. *ci" le client ne sait pas qu)il ! a un pro!" il a&it donc
comme s)il interro&eait directement le serveur ci+le" alors que ce n)est pas le cas. Sa ne fonctionnera
+ien entendu pas" si #quid n)est pas inform% de cette situation.
>D par Laurent 8A##E
http://christian.caleca.free.fr/http/le_proxy.htmhttp://christian.caleca.free.fr/http/le_proxy.htm
-
8/19/2019 Squid SquidGuard
19/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Allons" avec 4e+min" dans l)option -no9cache deny @8"R?acl all src %.%.%.%/%.%.%.%acl (anager proto cache9o$ectacl localhost src '7.%.%.'/;;.;;.;;.;;acl 66L9ports port ,, ;* '%%%%acl 6afe9ports port +%acl 6afe9ports port 'acl 6afe9ports port ,, ;*acl 6afe9ports port 7%acl 6afe9ports port '%acl 6afe9ports port '%;-*;;;acl 6afe9ports port +%acl 6afe9ports port ,++
acl 6afe9ports port ;C'acl 6afe9ports port 777acl 6afe9ports port C%'acl purge (ethod P8R0"acl !!"T (ethod !!"Tacl Local!et src 'C.'*+.%.%/;;.;;.;;.%acl 8sers pro=y9auth R"@8IR"Dhttp9access allo (anager localhosthttp9access deny (anagerhttp9access allo purge localhosthttp9access deny purgehttp9access deny E6afe9portshttp9access deny !!"T E66L9portshttp9access allo localhosthttp9access deny E8sershttp9access allo Local!ethttp9access deny allicp9access allo all
Pa&e ?= sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
20/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
log9fqdn onauthenticate9progra( /usr/li$/squid/ncsa9auth /etc/squid/usersauthenticate9ttl % (inuteauthenticate9ip9ttl % (inutehttpd9accel9ith9pro=y on
httpd9accel9uses9host9header onhttpd9accel9host )irtualhttpd9accel9port +%
Conclusions
Comme nous l)avons vu" la transparence du pro! entrane de nom+reuses restrictions. A moins que
vous ! tenie a+solument" mieu vaut choisir une autre solution" principalement si vous voule
cacher le FTP et/ou le HTTP# ou si vous deve authentifier vos utilisateurs.
8eaucoup d)autres choses sont possi+les" $e ne les pas encore essa!%es" $e vous laisse faire.
Pour ce qui est du filtra&e d)acc,s" il est possi+le de faire d%$5 des choses avec #quid tout seul" maisle -helper- #quid'uard que nous allons voir dans la suite rend inutiles les tentatives de filtra&e avec
les seuls mo!ens de #quid.
Pa&e > sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
21/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Squid4uard
Installation
Autant il est simple de mettre en service une confi&uration minimale de #quid op%rationnelle" autant
squid'uard va n%cessiter un travail m%ticuleu et d%licat. Rous voil5 pr%venu...
Installer squidGuard depuis les paquetages e!ian
0tilisons -deselect-. 0ne recherche 1 commande -/- suivie de -squid&uard-2 permet de pointer
directement sur le paquet.
#%lection avec -J-" dselect va indiquer un certain nom+re de d%pendances n%cessaires" principalement des modules perl et %&alement un paqueta&e recommand% intitul% : -chastit!-. Ce
paqueta&e contient une liste de sites et d)0* que les +onnes moeurs d%conseillent de visiter. Nous
n)utiliserons pas ce paqueta&e" en pr%f%rant r%cup%rer ces informations ailleurs.
Apr,s installation" nous devrions retrouver :
• un fichier /etc/squid/squid'uard.conf par d%faut" que nous allons de suite renommer en
/etc/squid/squid'uard.conf.de+"
• un r%pertoire /var/li+/squid'uard/d+" normalement vide.
A ce stade" squid'uard est loin d)(tre op%rationnel" ce qui n)est d)ailleurs pas un pro+l,me" puisque
#quid" qui n)est pas encore inform% de sa pr%sence" ne l)utilise pas.
Installation du "odule squidGuard pour #e!"in
Ce module se trouve sur : http://.niemueller.de/e+min/. *l faut le t%l%char&er" puis l)installer
dans e+min :
Pa&e ? sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
http://www.niemueller.de/webmin/http://www.niemueller.de/webmin/
-
8/19/2019 Squid SquidGuard
22/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
L)installation proprement dite est termin%e.
Configuration
$n squidGuard%conf "ini"u"
Comme nous avons renomm% le fichier de confi&uration par d%faut" il n)! en a plus. Le module
squid'uard de 4e+min va nous aider 5 en faire un autre" tout neuf.
3epuis" l)on&let -#ervers- de 4e+min" d%marrons ce module. *l pourra se faire qu)il soit mal ou pas
confi&ur% et qu)il apparaisse ainsi :
Pa&e sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
23/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
*ndique le chemin o6 l)on doit disposer du fichier de confi&uration.
-
8/19/2019 Squid SquidGuard
24/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Le module va maintenant cr%er un squid'uard.conf minimum :
Rous n)ave pas le choi... -Create- donc.
Pa&e @ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
25/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
*ndique les chemins par d%faut pour 3e+ian et" surtout" faites attention 5 +ien s%lectionner -No
traffic- pour la r,&le par d%faut. #i l)on est en train de s)em+(ter" ce n)est pas pour r%aliser une
passoire
Comme ce module est intelli&ent" il va constater que squid n)est pas confi&ur% pour utiliser le
-helper- squid'uard. *l va donc vous en avertir :
Pa&e D sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
26/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Confi&ure donc #quid. Rous pourre v%rifier" tou$ours au mo!en de 4e+min" mais avec le module
#quid :
Pa&e B sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
27/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
3ans la pratique" 4e+min a a$out% pour vous la li&ne :
redirect9progra( /usr/$in/squid0uard -c /etc/squid/squid0uard.conf
3ans le fichier de confi&uration de #quid : /etc/squid.conf.
Nous devrions avoir ceci dans la fen(tre 4e+min de &estion de #quid'uard :
Pa&e sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
28/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
-
8/19/2019 Squid SquidGuard
29/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu
Cette li&ne part du principe que vous ave sur la machine locale un serveur HTTP en %tat de marcheet qu)il dispose d)un script squid'uard.c&i. Les param,tres transmis dans cet eemple permettent de
communiquer au script toutes les informations n%cessaires pour identifier les circonstances du
+loca&e.
8ien entendu" ce script" ou un autre 1pa&e php comprise2 peuvent (tre situ%s sur une machine autre"
il suffit de r%di&er l)0* de redirection en fonction.
Et voil5. 0ne ma&nifique confi&uration par d%faut est r%alis%e. *l faut maintenant relancer #quid et"
sans l)%tat actuel des choses" plus personne ne pourra visiter quoi que ce soit" #quid'uard
interdisant tout par d%faut 5 quiconque.
Nous avons actuellement un fichier squid'uard.conf qui a cette allure :## onfiguration 3ile for 6quid0uard## reated ith the 6quid0uard onfiguration e$(in odule# opyright 45 %%' $y Ti( !ie(ueller Fti(Snie(ueller.deH# http://.nie(ueller.de/e$(in/(odules/squidguard/## 3ile created on ,/ay/%% '':C#d$ho(e /)ar/li$/squidguard/d$logdir /)ar/log/squid
acl default redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu
pass none
Pa&e = sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
30/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
UU
Les &Source Groups&
Ce sont les &roupes d)utilisateurs de votre LAN. Rous pouve cr%er autant de &roupes que vous
voule" ces &roupes seront principalement +as%s sur les +locs d)*Ps. Ceci peut vous amener d%$5 5
reconsid%rer compl,tement vos strat%&ies d)attri+ution d)*Ps...
Pour le moment" nous allons redonner un acc,s sans limites 5 tous les utilisateurs de notre LAN en
cr%ant un -source &roup- rassem+lant toutes les *Ps que nous utilisons :
0n &roupe nomm% po%tiquement LAN. Rous pourre ais%ment trouver mieu...
Pa&e G> sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
31/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
*l faut maintenant d%finir son contenu :
Nous a$outons un -su+net-" mais +eaucoup de possi+ilit%s sont propos%es. 0ser et 0serlist ne seront
utilisa+les que s)il est mis en place un s!st,me d)authentification des utilisateurs de votre LAN. La
&estion par les domaines ne fonctionnera pas non plus dans la confi&uration #quid mise en oeuvre
Pa&e G? sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
32/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
ici. Nous nous contenterons donc de travailler avec les *Ps.
Tout notre r%seau local" constitu% ici d)une unique classe C priv%e.
-
8/19/2019 Squid SquidGuard
33/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
## onfiguration 3ile for 6quid0uard## reated ith the 6quid0uard onfiguration e$(in odule# opyright 45 %%' $y Ti( !ie(ueller Fti(Snie(ueller.deH
# http://.nie(ueller.de/e$(in/(odules/squidguard/## 3ile created on ,/ay/%% '':C#d$ho(e /)ar/li$/squidguard/d$logdir /)ar/log/squid
source LAN { ip 192.168.0.0/24U
acl default redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu pass none U
U
Les &Access Control Lists&
ien n)est encore chan&% quant au droits d)acc,s" tou$ours rien ne passe.
Nous allons maintenant cr%er une nouvelle ACL pour permettre au LAN de vo!a&er sur le Net" sans
aucune restriction pour le moment :
Pa&e GG sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
34/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Nous a$outons une ACL pour le &roupe LAN.
Pa&e G@ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
35/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Nous d%finissons maintenant cette ACL de faQon laiste 1nous n)avons pas pour l)instant les mo!ens
de faire autre chose que tout ou rien2 :
Pa&e GD sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
36/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Nous avons maintenant un fichier de confi&uration qui a cette allure :
## onfiguration 3ile for 6quid0uard## reated ith the 6quid0uard onfiguration e$(in odule# opyright 45 %%' $y Ti( !ie(ueller Fti(Snie(ueller.deH# http://.nie(ueller.de/e$(in/(odules/squidguard/## 3ile created on ,/ay/%% ';:%#
d$ho(e /)ar/li$/squidguard/d$logdir /)ar/log/squid
source L! ip 'C.'*+.%.%/,U
acl LAN { pass any redirect http://127.0.0.1/cgi!in/s"uid#uard.cgi$c%ientaddr&'a(srcc%ass&'s(targetc%ass&'t(ur%&'u )
default redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu pass none U
U
Pa&e GB sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
37/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
*l suffit de relancer squid et" cette foisOci" tout le LAN pourra passer sur le e+.
Pa&e G sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
38/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
+ sur Squid4uard
6ue faire maintenant ;
http://cri.univOtlse?.fr/documentations/cache/squid&uard.html
*l nous reste 5 confi&urer des -3estination 'roups- et des -8lac9lists- pour filtrer l)acc,s au 4e+.
Nous allons voir comment nous ! prendre.
lists
C)est maintenant que Qa va commencer 5 vraiment se compliquer...
La diff%rence entre une -+lac9list- et un -destination &roup- est une notion qui n)eiste pas dans
squid'uard" mais dans le module e+min associ%.
estination Groups
Les -3estination 'roups- sont des ensem+les de domaines" d)0* et/ou d)epressions r%&uli,res qui
d%finissent des ci+les potentielles pour les internautes de votre LAN.
Au mo!en de ces -3estination 'roups-" vous pourre d%finir des ci+les accessi+les" ou interdites.
Par eemple" vous pourre d%finir des ensem+les de domaines ou d)0* qui seront les seuls 5
pouvoir (tre atteints par certains -source &roups- ou" 5 l)inverse" d%finir des ensem+les de domaines
ou d)0* dont l)acc,s sera interdit.
Comme d)ha+itude" il est possi+le :
• d(interdire tout 5 part&&& ce qui est &%n%ralement trop restrictif" mais c)est 5 vous de
construire votre monde de faQon totalitaire" vous (tes che vous...
• d(autoriser tout sauf&&& ce qui est nettement plus -d%mocratique-" mais laissera
o+li&atoirement la porte ouverte 5 des ci+les que l)on aurait aim% interdire si l)on avait %t% au
courant de leur eistence...
Cruelle responsa+ilit% que de devoir choisir entre ces deu strat%&ies. Nous verrons ici comment
eploiter la seconde" mais si vous ave compris le principe" vous pourre sans plus de difficult%s
utiliser la premi,re.
Les epressions r%&uli,res sont volontairement mises de ct%" elles sont fortement consommatrices
de ressources s!st,me. ien ne vous emp(che cependant de faire quelques manipulations avec par
la suite.
'lac(lists
Comme leur nom l)indique" ces listes seront l5 uniquement pour interdire des acc,s. Par rapport au
-destination &roups-" elles pr%sentent deu diff%rences ma$eures :
• comme nous l)avons dit" elles ne peuvent servir qu)5 interdire"
• leur mode de &estion pr%sente quelques diff%rences par rapport au -destination &roups-.
Pa&e GI sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
http://cri.univ-tlse1.fr/documentations/cache/squidguard.htmlhttp://cri.univ-tlse1.fr/documentations/cache/squidguard.html
-
8/19/2019 Squid SquidGuard
39/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Co""ent les construire )
Nous trouvons des listes toutes faites sur le Net.
Prenons par eemple cellesOci : +lac9lists.tar.&
" maintenue par le centre de ressources informaOtiques de l)universit% de Toulouse.
Nous d%compressons cette archive dans /var/li+/squid&uard/d+/ :
Et nous faisons un peu de m%na&e.
• Le dossier -a&&ressive- ne pr%sente pas d)int%r(t" il vaudra mieu utiliser -a&ressif-" nous le
d%truisons.
• Les liens s!m+oliques sont l5 pour assurer une compati+ilit% avec les +lac9lists par d%faut de
squid'uard. Comme nous faisons nous m(me notre confi&uration" autant les supprimer.
• 3ans chacun de ces dossiers" il ! aura au moins deu fichiers : -domains- et -urls-. #i un
fichier intitul% -epressions- eiste" nous le supprimerons" nous allons %viter
s!st%matiquement les epressions r%&uli,res.
• Enfin" nous d%plaQons tous ces dossiers dans /var/li+/squid&uard/d+/ et nous utiliserons ces
donn%es comme -destination &roups- plutt que comme des -+lac9lists-.
Configurer les ?
-
8/19/2019 Squid SquidGuard
40/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
comme suit :
## onfiguration 3ile for 6quid0uard#
# reated ith the 6quid0uard onfiguration e$(in odule# opyright 45 %%' $y Ti( !ie(ueller Fti(Snie(ueller.deH# http://.nie(ueller.de/e$(in/(odules/squidguard/## 3ile created on ,/ay/%% ';:%#
d$ho(e /)ar/li$/squidguard/d$logdir /)ar/log/squid
source L! ip 'C.'*+.%.%/,U
destination pornographie urllist adult/urls
do(ainlist adult/do(ainsU
destination agressif urllist agressif/urls do(ainlist agressif/do(ainsU
destination audio-)ideo urllist audio-)ideo/urls do(ainlist audio-)ideo/do(ainsU
destination drogues urllist drugs/urls do(ainlist drugs/do(ainsU
destination foru(s urllist foru(s/urls do(ainlist foru(s/do(ainsU
destination eu= urllist ga($ling/urls do(ainlist ga($ling/do(ainsU
destination hackers urllist hacking/urls do(ainlist hacking/do(ainsU
destination redirecteurs urllist redirector/urls do(ainlist redirector/do(ainsU
destination )iolence urllist )iolence/urls do(ainlist )iolence/do(ainsU
destination areJ urllist areJ/urls do(ainlist areJ/do(ainsU
acl L! pass any
Pa&e @> sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
41/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu U
default redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu pass none UU
Rous l)ave compris" il s)a&it d)epliquer 5 squid'uard o6 vont se trouver les d%finitions de nos
&roupes de destination" 5 partir du r%pertoire de +ase" mentionn% au d%+ut du fichier.
Construire les !ases de données
*l nous faut maintenant construire les +ases 8er9ele! associ%es. Pour ! arriver" c)est simple" utilise
la commande suivante :
squid0uard - all
et attende que Qa se passe... Et Qa risque d)(tre lon&.
A la fin" vous aure la $oie de trouver dans les r%pertoires de vos &roupes de destination" les +ases
de donn%es associ%es. Elles portent le m(me nom que les fichiers tete de d%finition" suivi du
suffie .d+
>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
42/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Ce qui ne veut pas dire qu)un quelconque filtra&e ait %t% a$out%. *l nous faut maintenant modifier
l)ACL de LAN :
Pa&e @ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
43/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
Nous vo!ons +ien apparatre dans la liste -3estination 'roups- tous les &roupes que nous avons
import%s" de m(me que leurs contraires 1ils sont pr%c%d%s d)un point d)eclamation2.
• #i vous voule que vos %tudiants ne puissent acc%der qu(au$ sites porno&raphiques"
s%lectionne uniquement -porno&raphie- et faites -save-"
• #i vous pr%f%re que vos %tudiants puissent acc%der 5 tout sauf au sites porno&raphiques"
s%lectionne seulement -porno&raphie- et faites -save-.
8ien entendu" vous pouve choisir plusieurs items dans la liste en cliquant dessus avec la touche
-Ctrl- enfonc%e.
3ans l)eemple" le LAN acc,dera 5 tout sauf 5 la porno&raphie" les $eu" les forums" les sites
a&ressifs... Ce qui donne le fichier de confi&uration suivant :
## onfiguration 3ile for 6quid0uard## reated ith the 6quid0uard onfiguration e$(in odule# opyright 45 %%' $y Ti( !ie(ueller Fti(Snie(ueller.deH# http://.nie(ueller.de/e$(in/(odules/squidguard/## 3ile created on ,/ay/%% ';:%#
d$ho(e /)ar/li$/squidguard/d$logdir /)ar/log/squid
Pa&e @G sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
44/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
source L! ip 'C.'*+.%.%/,U
destination pornographie
urllist adult/urls do(ainlist adult/do(ainsU
destination agressif urllist agressif/urls do(ainlist agressif/do(ainsU
destination audio-)ideo urllist audio-)ideo/urls do(ainlist audio-)ideo/do(ainsU
destination drogues urllist drugs/urls
do(ainlist drugs/do(ainsU
destination foru(s urllist foru(s/urls do(ainlist foru(s/do(ainsU
destination eu= urllist ga($ling/urls do(ainlist ga($ling/do(ainsU
destination hackers urllist hacking/urls do(ainlist hacking/do(ainsU
destination redirecteurs urllist redirector/urls do(ainlist redirector/do(ainsU
destination )iolence urllist )iolence/urls do(ainlist )iolence/do(ainsU
destination areJ urllist areJ/urls do(ainlist areJ/do(ainsU
acl L! pass Epornographie Eagressif Eaudio-)ideo Edrogues Eforu(s Eeu= Ehackers Eredirecteurs E)iolenceEareJ redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu U
default redirect http://'7.%.%.'/cgi-$in/squid0uard.cgi>clientaddrOaQsrcclassOsQtargetclassOtQurlOu pass none UU
elance squid et v%rifie que tout se passe comme pr%vu.
Pa&e @@ sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
45/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
*odifier ces listes
4e+min permet de modifier ces listes ou m(me d)en cr%er 5 partir de rien. Rous aure pro+a+lement
l)occasion de vous servir de ces fonctionnalit%s. e&ardons ce que Qa donne dans un &roupe pas trop
encom+r% :
Rous pouve :
• consulter la liste actuelle"
• a$outer ou supprimer un domaine ou un 0*.
#i vous a$oute ou enleve quelque chose" #quid'uard s)arr(tera" parce que vous ave a&i sur les
fichiers tete et que les +ases 8er9ele! ne sont plus s!nchronis%es. elance #quid et les +ases
seront reconstruites automatiquement 1normalement2.
Créer de nou+elles listes , partir de rien
Rous pouve le faire. Le module de 4e+min acceptera de cr%er de nouveau &roupes vides et de les
inscrire dans squid'uard.conf" en cr%ant les fichiers tete qui vont avec. Ceci peut vous permettre
de cr%er de petits &roupes suppl%mentaires si le +esoin s)en fait sentir.
Pa&e @D sur @ %alis% 5 partir des pa&es du site" du B mars >>D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
46/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
'es =lac>lists
Le module de 4e+min ne vous permet pas de cr%er de +lac9lists" il ne vous permet que d)en
t%l%char&er. #i vous le faites 5 partir du site de #quid'uard" vous retom+ere sur les m(mes 1ou 5 peu pr,s2 que celles que nous avons utilis%es. Aurions nous pris le pro+l,me 5 l)envers 7
Risi+lement" il sem+lerait que oui. >D par Laurent 8A##E
-
8/19/2019 Squid SquidGuard
47/47
Le protocole HTTP © Christian CALECA
http://christian.caleca.free.fr/squid/
de #quid pendant ce temps.
*l eiste en effet la possi+ilit% de cr%er des fichiers tete suppl%mentaires" destin%s 5 a$outer ou a
enlever des enre&istrements dans la +ase" sans pour autant le reconstruire totalement" mais cette
possi+ilit% n)est pas accessi+le depuis 4e+min.
A propos du "odule -e!"in pour squidGuard
Tel qu)il est conQu" ce module pr%sente des dan&ers dans la mesure o6 certaines confi&urations
devront (tre reprises manuellement dans le fichier squid'uard.conf. 3e plus" il ne relance pas squid
apr,s une modification des +ases.
Pratiquement" $e vous conseille la plus &rande prudence et la confi&uration directe sem+le nettement
pr%f%ra+le.