You are on page 1of 48

Mise en place de Squid avec Squidguard

Introduction:
Dans ce tutoriel nous allons voir comment mettre en place un proxy Squid avec
filtrage d'url grce a Squidguard un plugin permettant de filtrer les URL avec de
multiples options.
our cela !'utilise "m#are layer avec une U$untu %&.'( install).
*out d'a$ord il faut +tre en mode root sur la mac,ine pour cela ouvre- un terminal et
faite:
sudo su -
*aper votre mot de passe et le prompt devrait se trouver comme ceci:
root.votre/mac,ine:01
2nsuite t)l)c,arger le paquet squid:
apt-get install squid3
Une fois install) faites un copie de votre squid.conf d'origine 3 ceci est le
fic,ier de configuration de Squid4
cp /etc/squid3/squid.conf /etc/squid3/squid.conf.bak
2nsuite editer le fic,ier squid.conf5 nous allons faire le m)nage pour le rendre
$ien plus lisi$le )tant donn) qu'il contient $eaucoup de possi$ilit) qui ne nous
sont pas utile pour ce tuto:
gedit /etc/squid3/squid.conf
2ffacer tout ce qu'il y a dans ce fic,ier et y mettre ceci :
////////////////////////////////////////////////////////////////////
#port utilis par Squid
,ttp/port 6%&7
cac,e/dir ufs /var/spool/squid6 %'&( &89 &89
# Les journaux de Squid
cac,e/access/log /var/log/squid6/access.log common
cac,e/log /var/log/squid6/cac,e.log
cac,e/store/log /var/log/squid6/store.log
cac,e/s#ap/log /var/log/squid6/cac,e/s#ap.log
emulate/,ttpd/log on
# Configuration minimum recommande
acl manager proto cac,e/o$!ect
acl local,ost src %&:.'.'.%/&88.&88.&88.&88
acl Safe/ports port 7' # http
acl Safe/ports port &% # ftp
acl Safe/ports port ((6 896 # https, snews
acl Safe/ports port :' # gopher
acl Safe/ports port &%' # wais
acl Safe/ports port %'&8;98868 # ports non rservs
acl Safe/ports port &7' # http-mgmt
acl Safe/ports port (77 # gss-http
acl Safe/ports port 8<% # filemaker
acl Safe/ports port ::: # multiling http
acl =>??2=* met,od =>??2=*
# finition des rseaux, les adresses ip seront ! mettre en fonction de la
#configuration de votre rseau
acl mon/reseauet, src %<&.%97.%.'/&88.&88.&88.'
acl mon/reseau#ifi src %<&.%97.&.'/&88.&88.&88.'
# finition des acc"s
# autorise le groupe mon#reseaueth, mon#reseauwifi prcdemment crs
,ttp/access allo# mon/reseauet,
,ttp/access allo# mon/reseau#ifi
,ttp/access deny all
# La redirection sur Squid$uard pour le contr%le ! commenter si vous n&utilise' pas
Squid$uard
redirect/program /usr/$in/squid@uard ;c /etc/squid6/squid@uard.conf
redirect/c,ildren 8
# (n renseigne le nom de machine qui fait serveur
visi$le/,ostname votre#machine
2nregistrer5 une fois les modifications effectu)es5 le fic,ier Squid.conf.
Aaire un restart de Squid pour que les c,angements soit pris en compte:
/etc/init.d/squid3 restart
?ous avons donc B pr)sent le proxy d'install) cependant pour le filtrage nous devons
install) squid@uard 3 vous deve- +tre tou!ours en mode root pour effectuer ce qui
suit4.
apt-get install squidguard
2nsuite on se place donc dans le dossiers CvarCli$CsquidguardCd$C
cd /var/lib/squidguard/db/
>n r)cupDre la $lacElist grce a cette commande
wget ftp://ftp.univtlse1.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz
>n des;arc,ive le fic,ier et on g)nDre les $ases de listes noires.
tar xzf blacklists.tar.gz
chown - prox!:prox! blacklists
ln -s /etc/squid/squid"uard.conf /etc/squid3/squid"uard.conf
su prox!
squid"uard -d -c /etc/squid3/squid"uard.conf -# all
Squid@uard )tant pr)vu pour fonctionner avec une ancienne version de squid on
)ta$li un lien sym$olique du squidguard.conf dans le dossier squidC avec un
squidguard.conf dans le dossier squid6C grce a la commande ln ;s
Une fois tout ceci faites une copie de votre squidguard.conf d'origine.
cp /etc/squid/$quid"uard.conf /etc/squid/$quid"uard.conf.bak
2t )diter le fic,ier Squid@uard.conf nous allons faire le m)nage pour le rendre
$ien plus lisi$le )tant donn) qu'il contient $eaucoup de possi$ilit) qui ne nous
sont pas utile pour ce tuto:
gedit /etc/squid3/$quid"uard.conf
____________________________________________________________________
)ffacer tout ce qu&il *&a dans ce fichier et * mettre ceci+
#
# C(,-.$ -.L) -(/ S01.$12/
#
d$,ome /var/li$/squidguard/d$/$lacElists
logdir /var/log/squid6
#
# 3.4) /1L)S+
# 5our de la semaine+
# s 6 sun, m 6 mon, t 6tue, w 6 wed, h 6 thu, f 6 fri, a 6 sat
# u 78 au 79 dcem:re de 7;h<< ! 9h<< ok pour tout
time FoursSpecifique {
date *.%&.&( &%:'' ; '':''
date *.%&.&8 '':'' ; '8:''
G
# on peut par exemple dfinir des horaires de travail avec les jours concerns
time #orE,ours {
#eeEly mt#,f '7:6' ; %<:''
G
#on indique ici les diffrents groupes que l&on veut proposer=remplacer les ip
#par les param"tres de votre rseau>
src admin {
ip %<&.%97.%.&68
}
src D@ {
ip %<&.%97.%.%%
}
src #orEers {
ip %<&.%97.%.'/&(
}
src all {
ip %<&.%97.&.'/&(
}
dest adulte {
# Sites adultes ! proscrire
urllist adult/urls
domainlist adult/domains
expressionlist adult/very/restrictive/expression
}
dest drogues {
# Sites drogues ! proscrire
urllist drugs/urls
domainlist drugs/domains
}
dest p,is,ing {
# Site de phishing
urllist p,is,ing/urls
domainlist p,is,ing/domains
}
dest marc,ands/de/guerre {
# 4archands d&armes
urllist marEeting#are/urls
domainlist marEeting#are/domains
}
re#rite test {
s@fucE@ooops@ir
s@$londe@ooops@ir
s@Hot@ooops@ir
s@sex@ooops@ir
s@porns@ooops@ir
s@$iEini@ooops@ir
}
acl {
admin {
pass any
}
D@ {
pass any
}
#orEers #it,in #orE,ours {
pass !adulte !drogues !p,is,ing !marc,ands/de/guerre any
#redirect http+??;7@A<A<A;?cgi-:in?squid$uardAcgiBclientaddr6CaDclientname6
CnDclientident6
CiDsrcclass6CsDtargetclass6CtDurl6Cu
redirect ,ttp://de$ian/interdit.,tml
}
all {
pass !adulte !drogues !p,is,ing !marc,ands/de/guerre any
#redirect http+??;7@A<A<A;?cgi-:in?squid$uardAcgiBclientaddr6CaDclientname6
CnDclientident6
CiDsrcclass6CsDtargetclass6CtDurl6Cu
redirect ,ttp://de$ian/interdit.,tml
}
all #it,in FoursSpecifique {
pass any
#redirect http+??;7@A<A<A;?cgi-:in?squid$uardAcgiBclientaddr6CaDclientname6
CnDclientident6
CiDsrcclass6CsDtargetclass6CtDurl6Cu
redirect ,ttp://de$ian/interdit.,tml
}
default {
pass none
#redirect http+??;7@A<A<A;?cgi-:in?squid$uardAcgiBclientaddr6CaDclientname6
CnDclientident6
CiDsrcclass6CsDtargetclass6CtDurl6Cu
redirect ,ttp://de$ian/interdit.,tml
}
}
2nregistrer le fic,ier et relancer Squid6:
/etc/init.d/squid3 restart
Aaites un test avec une mac,ine cliente 3la premiDre connexion peut +tre longue4.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 1



Guide Pfsense 2.0








Suivi du document :
Mai 2012 : Version 0.1 Installation et paramtrages de Pfsense avec les rgles sur les ports et le filtrage squid

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 2

1) Installation et premiers paramtrages de Pfsense ......................................................................... 3
1.1) Installation de PfSense ............................................................................................................ 3
1.2) Premiers paramtrages de Pfsense ......................................................................................... 6
2) Les rgles daccs .......................................................................................................................... 14
2.1) Paramtrer les rgles de base .................................................................................................... 14
2.2) Bloquer laccs au https de facebook ........................................................................................ 19
2.2.1) Cration dun alias facebook ............................................................................................... 19
2.2.2) Dfinir les plages horaires daccs Facebook ................................................................... 20
2.2.3) Rgle pour le blocage de laccs https Facebook ............................................................. 22
2.3) Rgles dfinir dans le cas de plusieurs LAN ............................................................................. 23
3) Le filtrage Internet ......................................................................................................................... 24
3.1) Installation des paquets pour le filtrage Internet ...................................................................... 25
3.2) Configuration du serveur proxy ................................................................................................. 26
3.3) Configuration du filtrage ............................................................................................................ 27
3.3.1) Configuration gnrale du filtrage ...................................................................................... 27
3.3.2) Filtrage en fonction des horaires ........................................................................................ 30
3.3.3) Filtrage en fonction des adresses IP .................................................................................... 32
3.3.4) La page de redirection du proxy ......................................................................................... 33
3.3.5) Mise jour automatique de la blacklist .............................................................................. 34
3.4) Les journaux du proxy ................................................................................................................ 35
4) Les VPNs ........................................................................................................................................ 35
4.1) VPN entre un pare-feu Pfsense et un pare-feu ipcop ................................................................ 35
4.2) VPN entre deux pare-feu Pfsense .............................................................................................. 35
4.3) VPN avec des clients mobiles laide du logiciel ................................................................. 35
5) Mise en place dune DMZ .............................................................................................................. 35
6) Les mises jour de PfSense ........................................................................................................... 36


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 3

1) Installation et premiers paramtrages de Pfsense
1.1) Installation de PfSense

Ce document traite de linstallation de la version 2.0.1 de Pfsense (la dernire la date de rdaction)
sur une nouvelle machine.
Tout d'abord, il faut se rendre sur le site http://www.pfsense.org afin de rcuprer les images ISO
graver sur CDs pour installer PfSense :
o pfSense-2.0.1-RELEASE-i386.iso.gz pour les Pcs anciens avec des processeurs ne
grant pas le 64 bits
o pfSense-2.0.1-RELEASE-amd64.iso.gz pour les Pcs avec des processeurs 64 bits
Une fois l'image grave, on boot sur le CD et on arrive aux menus suivants :


Pressez Entre pour dmarrer sur l'option par dfaut (1)

Linstallation va se poursuivre un moment, avec un dfilement de commandes, jusqu sarrter sur
lcran suivant :
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 4


Tapez la lettre I pour lancer l'installation (sinon on boot sur le live-cd Pfsense mais on ne l'installe pas)

Placez-vous sur Accept these Settings et tapez Entre
NB : Jai choisi de garder ces paramtres car mes nombreuses tentatives pour changer la langue se
sont rvles infructueuses.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 5


Placez-vous sur Quick/Easy Install et tapez Entre


Tapez Entre
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 6


Choisissez la premire option (pour les processeurs multi-curs)

L'installation est termine. Tapez sur Entre pour redmarrer la machine.
Enlevez le CD du lecteur.

1.2) Premiers paramtrages de Pfsense

Linstallation termine, il va dsormais falloir effectuer quelques paramtrages afin de pouvoir
accder au pare-feu depuis son interface web (la quasi-totalit de la configuration se fait via
navigateur web).
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 7

Si linstallation sest bien droule, la machine dmarre sur le nouveau systme, et on doit obtenir
cet cran :

Le temps de chargement des divers paramtres du systme dexploitation peut tre long, mais on
arrive ensuite lcran suivant :

Il est demand sil y a des VLANs configurer. Ici, rpondre non ( adapter selon votre cas bien
videmment)

Ensuite, il va falloir paramtrer les cartes rseaux afin de correctement les attribuer. Le nommage
des diffrentes cartes tant parfois peu explicite, je vous conseille de prparer les cbles rseaux
connecter (au moins ceux du rseau local (LAN) et celui reli la box Internet (WAN)).
En effet, PfSense pourra vous dtecter automatiquement la bonne carte si vous branchez le cble au
moment opportun.
Par contre, ne branchez pas les cbles avant quon vous le demande !!
On arrive donc lcran suivant :
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 8


Tapez a pour dclencher la dtection automatique (attention, le clavier est srement en qwerty !!).
Branchez le cble qui sera reli au WAN (Pfsense vous dira quil voit un lien sactiver (up)) puis validez
par Entre . Rptez lopration pour le cble LAN (et les ventuels autres).
Une fois la configuration des cartes effectue, on arrive un cran qui rcapitule les diffrentes
cartes rseau et leur association :

Tapez y et validez par Entre
A ce moment-l, Pfsense est accessible via son interface web sur ladresse IP 192.168.1.1. Nous allons
donc la modifier pour lintgrer notre rseau et poursuivre la configuration.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 9

On est donc devant lcran suivant :

Tapez 2 puis Entre .Choisissez ensuite le numro associ la carte LAN et validez finalement
par Entre

Une fois ladresse IP et le masque de sous-rseau renseigns, il vous est demand si vous vous voulez
remettre le configurateur web en http (il est en https dorigine).Rpondre y (contrairement la
capture dcran) car n peut poser quelques soucis avec les configurations ultrieures.
NB : Il est possible de paramtrer galement le(s) autre(s) carte(s) rseaux mais nous le ferons depuis
linterface web.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 10

A ce stade l, vous pouvez laisser pfsense tranquille, la configuration se fera depuis un PC du rseau
via un navigateur web.
Lancez un navigateur web, et dans la barre dadresse, saisissez http://adresse-ip-pfsense/ puis
validez par Entre . On arrive sur la page didentification suivante :

Connectez-vous avec les identifiants suivants :
Login : admin
Mot de passe : pfsense
La premire chose faire est de modifier le mot de passe par dfaut. Pour cela, il faut se rendre dans
longlet System/User Manager :

On clique sur le e pour diter le profil de ladministrateur
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 11

NB : Sur chaque onglet, il existe deux icones : le e permettant dditer le paramtre et le +
permettant dajouter un paramtre.

Renseignez le nouveau mot de passe sur les deux lignes surlignes. Confirmez en cliquant sur Save .

Ensuite, il faut se rendre dans longlet System/Advanced et cocher la case suivante (en bas de la
page), ce qui permettra dactiver la connexion via SSH au pare feu :

Confirmez la modification en cliquant sur Save .

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 12

Puis, il faut configurer ladresse IP du WAN. Pour cela, se rendre dans longlet Interfaces/WAN :

Dans cet onglet, renseignez ladresse IP (avec ladresse IP publique de votre fournisseur daccs) avec
son masque de sous-rseau et ladresse de la passerelle (cliquez sur add a new one ). Validez bien
en cliquant sur Save

Enfin, il est ncessaire de paramtrer les DNS du fournisseur daccs. Pour cela, se rendre dans
longlet : System/General Setup
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 13


Renseignez le hostname (nom donn la machine), le(s) serveur(s) DNS ainsi que la Time Zone (qui
permettra de synchroniser le pare-feu avec un serveur de temps).
Vous pouvez galement renseigner le domaine (pas obligatoire) mais en vitant de mettre local .
Validez en cliquant sur Save
NB : Sur cet onglet, vous avez la possibilit de changer le thme des pages de configuration de
pfsense.
Attention, partir de ce moment-l, Internet
est accessible toutes les machines du
rseau, sans restriction ni filtre !!

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 14

2) Les rgles daccs

Pfsense permet de raliser un filtrage par protocole(s), port(s),, sur chaque interface. Pour cela, il
faut paramtrer les rgles dans longlet Firewall/Rules.
Les rgles fonctionnent de manire hirarchique. En effet, Pfsense va lire les rgles de haut en
bas, et ds quil trouvera une rgle sappliquant au trafic, il lappliquera. Par exemple, avec deux
rgles, une bloquant le protocole https, et lautre lautorisant, Pfsense appliquera la premire quil
rencontrera (la plus haute)
Ici, la rgle applique est celle bloquant le https.
2.1) Paramtrer les rgles de base

Par dfaut, Pfsense bloque tout trafic sur linterface WAN et autorise tout trafic du LAN :
Rgles par dfaut sur linterface WAN
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 15

Les rgles concernant le WAN ne doivent tre modifies que pour laisser passer du trafic entrant
(VPN, DMZ,..). Il ne faudra donc pas y toucher pour le moment.

Rgles par dfaut sur linterface LAN
Afin de raliser un meilleur filtrage, il est dabord conseill de bloquer tout trafic et densuite
autoriser un un les ports et/ou protocole.
Concernant les deux rgles par dfaut du LAN, il ne faut surtout pas dsactiver la rgle Anti-
Lockout , qui permet de se connecter linterface web de Pfsense via un autre PC (sous peine de
devoir reconfigurer voir rinstaller Pfsense).
Par contre, la seconde rgle est celle qui autorise tout le trafic. Il faut donc soit la dsactiver, soit la
supprimer (je lavais dans un premier temps dsactive car au besoin, javais juste la ractiver pour
avoir de nouveau accs Internet rapidement)
Pour la supprimer, cliquez sur la croix correspondant la rgle, et validez le message de confirmation
de suppression :

Cliquez sur la croix surligne pour supprimer la rgle


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 16

Pour uniquement la dsactiver, cliquez sur la rgle puis sur le bouton e . Lcran suivant arrive :

Cochez la case surligne pour dsactiver la rgle. Validez en cliquant sur Save .

Ensuite, il faudra crer une rgle qui bloque tout. En effet, comme cela, tout le trafic ne rpondant
pas une rgle dfinie dans pfsense sera automatiquement bloqu par cette rgle-ci.
Il est donc impratif de positionner cette rgle en dernire position sur la liste de toutes les rgles.
Cliquez donc sur le bouton +

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 17


Rgle bloquant tout trafic provenant du LAN
A ce stade-ci, tout trafic depuis le LAN est bloqu.

Rgles avec tout le trafic bloqu
Dsormais, il va falloir crer une rgle par port, protocole, Cest--dire pour chaque besoin
spcifique.

A titre dexemple, la rgle autorisant le trafic http se crera de la manire suivante :
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 18


Rgle autorisant le trafic http
Ensuite, pour plus de facilit, il est possible de cliquer sur le bouton + suivant pour crer un
clone dune rgle existante (pratique lorsque lon cre des rgles qui diffrent uniquement sur le
port par exemple)

Vous trouverez donc pour vous aider, une liste des ports utiles au sein dun EPL en annexe :
Annexe 1 : Liste des ports
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 19

Voici, titre dexemple, les rgles en vigueur pour le rseau pdagogique du lyce de Montauban :

Rgles en vigueur sur le rseau pdagogique du lyce de Montauban au 03 mai 2012
2.2) Bloquer laccs au https de facebook
Avec la blacklist de Toulouse, tous les rseaux sociaux seront bloqus (voir chapitre 3, le filtrage
Internet). Mais, il persiste le souci de Facebook, toujours accessible via https. Il existe diverses
manires de bloquer cet accs (fichier host modifi, protocole https bloqu par dfaut et rouvert
site par site,..) mais dans ce cas prcis, comme facebook doit tre autoris sur certaines plages
horaires, la solution suivante a t adopte :
2.2.1) Cration dun alias facebook
Il va falloir crer un alias pour les adresses IP publiques de facebook. Pour crer un alias, il faut se
rendre dans longlet Firewall/Aliases. Cliquer sur le + et donner les caractristiques suivantes :

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 20

La liste des adresses IP publiques de facebook est assez longue, la voici ci-dessous :

Attention bien respecter les masques de sous-rseau !
2.2.2) Dfinir les plages horaires daccs Facebook

Si vous souhaitez uniquement bloquer tout le temps laccs facebook, vous pouvez passer
directement au chapitre suivant : Rgle pour le blocage de laccs https Facebook


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 21

Ensuite, comme les utilisateurs ont besoin de se connecter durant certaines plages horaires et que
pour se connecter, le protocole https est utilis, il va falloir crer un calendrier pour ces plages
horaires. Pour cela, il faut se rendre dans longlet Firewall/Schedules. Cliquez sur le bouton + pour
ajouter un calendrier :

Dans cet exemple, un calendrier nomm horaires_cours va tre cr. En cliquant sur Add Time ,
une plage horaire, allant de minuit 12h15, les lundis, mardis, mercredis, jeudis et vendredis, sera
cre.
Il va falloir dfinir ici toutes les plages horaires pendant lesquelles laccs Facebook sera bloqu.

Calendrier pour Facebook autoris les mercredis aprs-midi (de 12h15 19h), les lundis, mardis et
jeudis de 12h15 13h30, les lundis et jeudis de 17h30 18h et les mardis de 17h30 19h.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 22


Une fois toutes les plages horaires dfinies, cliquez sur Save pour enregistrer votre calendrier. Il
ne reste plus dsormais qu dfinir la rgle pour bloquer laccs.
2.2.3) Rgle pour le blocage de laccs https Facebook
Enfin, il faut crer une rgle associe cet alias. Pour cela, se rendre dans Firewall/Rules, puis cliquer
sur le + . La rgle doit alors avoir les caractristiques suivantes :

Rgle pour bloquer le https de Facebook

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 23

Si vous souhaitez permettre laccs au site pendant certaines plages horaires, vous devez en plus
compltez les paramtres suivants :

Leffet de Schedule est dactiver la rgle pendant les plages horaires dfinis (ici horaires_cours) et
de la dsactiver hors de ces horaires.
2.3) Rgles dfinir dans le cas de plusieurs LAN

Dans le cas o plusieurs LAN sont dfinis (par exemple, un rseau pdagogique et un rseau
administratif), il va falloir bloquer les accs entre ces deux rseaux. Pour cela, il va falloir crer une
rgle sur chaque interface :

Rgle de blocage sur linterface du LAN Pdago


Rgle de blocage sur linterface du LAN Admin

Ci-dessous, le dtail de la rgle sur linterface du LAN Pdago .
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 24


Dtails de la rgle de blocage sur linterface du LAN Pdago

Ensuite, de la mme manire, il vous sera possible de crer des rgles en fonction des besoins de
communications entre plusieurs LAN (serveur web, partage de fichiers, dimprimantes,)
3) Le filtrage Internet

Il est ncessaire de tracer toutes les communications vers lInternet au sein des tablissements, et
pour cela, il va falloir installer des paquets additionnels pfsense. Pour cela, il faut se rendre dans
longlet System/Package Manager.

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 25

Longlet installed Packages dcrit les paquets installs sur la machine et longlet Available
Packages ceux disponibles pour une installation.
3.1) Installation des paquets pour le filtrage Internet

Pour permettre de filtrer les accs Internet, les paquets squid (pas squid3), squidGuard et
Lightsquid.
Pour installer un paquet, cliquez sur le bouton +

Une boite de dialogue demande confirmation

Puis, linstallation se droule toute seule .


Une fois les trois paquets installs, passez la configuration.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 26

3.2) Configuration du serveur proxy

Afin de configurer le proxy, se rendre dans longlet Services/Proxy Server :

Paramtres modifier pour configurer le serveur proxy
Une fois ces paramtres renseigns, laccs internet est inactif. En effet, il va falloir crer une rgle
concernant le port utilis par le serveur proxy (ici 3128).

Ensuite, il faut configurer le filtrage en lui-mme.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 27

3.3) Configuration du filtrage
3.3.1) Configuration gnrale du filtrage
Se rendre dans longlet Services/Proxy Filter :

Paramtres modifier pour configurer le filtre proxy. La blacklist de luniversit de Toulouse sera
utilise. Son adresse pour pfsense est la suivante:
ftp://ftp.univ-tlse1.fr/blacklist/blacklists_for_pfsense.tar.gz
Ensuite, se rendre dans longlet Blacklist . La blacklist sera tlcharge afin dtre intgre
pfsense :

Cliquez sur le bouton Download
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 28

Une fois le tlchargement complt, se rendre dans longlet Common ACL et cocher les
lments suivants :

Avec ces paramtres :
laccs aux sites Internet directement avec les adresses IP sera bloqu
les moteurs de recherche ne retourneront pas de rsultats pour certains types de
recherches
les demandes daccs (autorises ou non) seront journalises.

Ensuite, en cliquant sur la flche verte, le dtail des diffrentes catgories de la blacklist sera
accessible :

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 29


Extrait du dtail des catgories de la blacklist
Il conviendra donc ici de dfinir la stratgie gnrale daccs aux diffrentes catgories de la blacklist
de Toulouse. Le dtail de ces catgories est accessible ladresse suivante : http://cri.univ-
tlse1.fr/blacklists/ .
Attention toutefois bien dfinir la dernire ligne (default acces) sur le paramtre allow , sinon
laccs tous les sites sera impossible.
Une fois les accs dfinis, validez en cliquant sur Save .
NB : Il est possible que Pfsense ne prenne pas tout de suite en compte les modifications. Pour une
prise en compte plus rapide, dsactiver puis activer le filtre en dcochant puis cochant la case
suivante

Cliquez sur Apply et attendez que le service passe de Started Stopped (et vice-versa)
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 30

A ce stade-l, le filtrage est oprationnel et identique pour tous, tout moment de la journe. Il peut
tre ncessaire de procder des rglages particuliers (en fonction des heures, des personnes,...).
3.3.2) Filtrage en fonction des horaires

Afin de pouvoir dfinir des rgles de filtrages en fonction des horaires, il convient tout dabord de
dfinir la ou les plages horaires. Pour cela, se rendre dans longlet Times , puis cliquez sur le
bouton + afin dajouter une plage horaire :


Dfinition des horaires en dehors des priodes de cours

Une fois la plage horaire dfinie, se rendre dans longlet Groups ACL . Cliquez sur le + pour
crer une nouvelle ACL pour des rgles de filtrages.
Il faudra dfinir les rgles de filtrage qui sappliqueront pendant les horaires dfinis prcdemment
et celles qui sappliquent en dehors.
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 31



Configuration dune ACL en fonction des horaires
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 32

3.3.3) Filtrage en fonction des adresses IP
De la mme manire quil est possible de crer des rgles de filtrages en fonction de horaires, il est
possible de crer des rgles en fonction des adresses IP. Il suffit de crer une nouvelle ACL :

Configuration dune ACL en fonction des adresses IP
La notion importante concernant les ACL est que, comme pour les rgles, pfsense va les appliquer en
fonction de leur classement . Par exemple sur la capture dcran ci-dessous :
LACL service-info est applique en premier, lACL dfiltrer est dsactive et lACL hors-cours
est applique ensuite. Toute machine ne correspondant aucune de ces ACL se verra appliquer les
rgles de filtrage dfinies dans longlet Common ACL

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 33

3.3.4) La page de redirection du proxy
Une fois le proxy configur, la page de redirection en cas de site bloqu est assez austre.

Extrait de la page de redirection
Si lon souhaite modifier cette page, il convient alors de modifier le fichier suivant de pfsense:
/usr/local/www/sgerror.php
Pour une question de pratique, se connecter laide du logiciel WinSCP (tlchargeable sur la page
suivante http://winscp.net/eng/download.php ).
Copiez le fichier depuis pfsense sur votre poste. Ainsi, vous pourrez faire une copie de sauvegarde du
fichier dorigine afin de commencer les modifications.
NB : Il est possible de modifier le fichier directement depuis le logiciel WinSCP.
Il est possible de modifier de nombreux paramtres, mais, afin dafficher une page sans les codes
erreurs, le fichier a t modifi de la manire suivante :

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 34

Ce qui donne la page de redirection suivante :

Page de redirection modifie

IMPORTANT : une fois votre page correctement configure, faites une copie de sauvegarde du fichier
sgerror.php. En effet, lors des mises jour de squid et/ou squidguard, la mise jour remplace le
fichier par le fichier dorigine !

3.3.5) Mise jour automatique de la blacklist

Sous pfsense, il nexiste pas de possibilit par dfaut pour mettre jour la blacklist (si ce nest se
rendre manuellement dans longlet Proxy Filter/Blacklist et cliquer sur le bouton download). Afin
dautomatiser la mise jour, il est ncessaire deffectuer quelques paramtrages.
Tout dabord, lorsque Pfsense met jour la blacklist, il cre un script dans le dossier tmp. Il va falloir
rcuprer ce script. Pour cela, laide de WinSCP, copier le fichier squidGuard_blacklist_update.sh
dans un dossier (il a t choisi de le copier dans le dossier etc, il est tout fait possible de le copier
ailleurs voir de crer un dossier).
Une fois le fichier copi, rajoutez les lignes ci-dessous dans le fichier /cf/conf/config.xml :
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 35

Lignes ajouter pour la mise jour automatique de la blacklist (ces lignes dfinissent en fait
lexcution du script copie dans le dossier etc tous les jours 23h30)


3.4) Les journaux du proxy
A FAIRE OU EN COURS D'ECRITURE
4) Les VPNs
4.1) VPN entre un pare-feu Pfsense et un pare-feu ipcop
Une documentation permettant la mise en place dun VPN entre un ipcop et un pfsense existe dj.
Elle est accessible en Annexe 2
NB : Bien que cette mthode soit parfaitement fonctionnelle, une mthode base de certificats
serait plus scurise. Des tests sont en cours afin de permettre une telle mthode. Si ceux-ci
aboutissent, la documentation sera mise jour.
4.2) VPN entre deux pare-feu Pfsense
A FAIRE OU EN COURS D'ECRITURE
4.3) VPN avec des clients mobiles laide du logiciel
A FAIRE OU EN COURS D'ECRITURE
5) Mise en place dune DMZ
A FAIRE OU EN COURS D'ECRITURE
Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 36

6) Les mises jour de PfSense
A FAIRE OU EN COURS D'ECRITURE

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 37

ANNEXES
Annexe 1 : Liste des ports utiliss au sein dun rseau
Ports & Protocoles Services
TCP : 80 HTTP (pas obligatoire si proxy transparent)
TCP : 110 POP3
TCP : 25 SMTP
TCP : 443 HTTPS
TCP & UDP : 22 SSH
TCP & UDP : 21 FTP
TCP & UDP : 119 NNTP
TCP : 143 IMAP
TCP & UDP : 123 NTP
TCP : 510 FirstClass
TCP : 81 Nocia/Page de redirection SquidGuard
TCP : 1717 Module Java d'EVA
TCP : 1494 Luciole
UDP : 10000 Magellan
TCP : 264 Prisme / EPICEA
TCP : 256 Prisme / EPICEA
TCP : 709 Prisme / EPICEA
UDP : 2746 Prisme / EPICEA
UDP & TCP : 500 (Isakmp) Prisme / EPICEA / Magellan
TCP : 389 (LDAP) Prisme / EPICEA
TCP & UDP : 8080 Webcache
TCP & UDP : 8081 tproxy
TCP : 18231, 18232, 18233, 18234 Checkpoint
TCP & UDP : 53 DNS
TCP & UDP : 800 Proxy Squid
TCP : 1863 MSN Messenger
TCP: 1495 Citrix
TCP: 2598 Citrix

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 38

Annexe 2 : Mise en place dun VPN entre un ipcop et un pfsense

Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 39


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 40


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 41


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 42


Guide PfSense 2.0

Michel Bonnefond Version 0.1 du document Page 43

You might also like