config firewall et proxy

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 grâce a Squidguard un plugin permettant de filtrer les URL avec de multiples options. Pour cela j'utilise Vmware Player avec une Ubuntu 12.04 installé. Tout d'abord il faut être en mode root sur la machine pour cela ouvrez un terminal et faite: sudo su - Taper votre mot de passe et le prompt devrait se trouver comme ceci: root@votre_machine:~# Ensuite télécharger le paquet squid: apt-get install squid3 Une fois installé faites un copie de votre squid.conf d'origine ( ceci est le fichier de configuration de Squid) cp /etc/squid3/squid.conf /etc/squid3/squid.conf.bak Ensuite editer le fichier squid.conf, nous allons faire le ménage pour le rendre bien plus lisible étant donné qu'il contient beaucoup de possibilité qui ne nous sont pas utile pour ce tuto: gedit /etc/squid3/squid.conf Effacer tout ce qu'il y a dans ce fichier et y mettre ceci : ____________________________________________________________________ #port utilisé par Squid http_port 3128 cache_dir ufs /var/spool/squid3 1024 256 256 # Les journaux de Squid cache_access_log /var/log/squid3/access.log common cache_log /var/log/squid3/cache.log cache_store_log /var/log/squid3/store.log cache_swap_log /var/log/squid3/cache_swap.log emulate_httpd_log on # Configuration minimum recommandée acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl Safe_ports port 80 # http

Upload: dago-bilton

Post on 19-Jan-2016

79 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Config Firewall Et Proxy

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 grâce a Squidguard un plugin permettant de filtrer les URL avec de multiples options.Pour cela j'utilise Vmware Player avec une Ubuntu 12.04 installé.

Tout d'abord il faut être en mode root sur la machine pour cela ouvrez un terminal et faite:sudo su -

Taper votre mot de passe et le prompt devrait se trouver comme ceci:root@votre_machine:~#

Ensuite télécharger le paquet squid:apt-get install squid3

Une fois installé faites un copie de votre squid.conf d'origine ( ceci est lefichier de configuration de Squid)cp /etc/squid3/squid.conf /etc/squid3/squid.conf.bak

Ensuite editer le fichier squid.conf, nous allons faire le ménage pour le rendrebien plus lisible étant donné qu'il contient beaucoup de possibilité qui ne noussont pas utile pour ce tuto:gedit /etc/squid3/squid.conf

Effacer tout ce qu'il y a dans ce fichier et y mettre ceci :____________________________________________________________________#port utilisé par Squidhttp_port 3128cache_dir ufs /var/spool/squid3 1024 256 256# Les journaux de Squidcache_access_log /var/log/squid3/access.log commoncache_log /var/log/squid3/cache.logcache_store_log /var/log/squid3/store.logcache_swap_log /var/log/squid3/cache_swap.logemulate_httpd_log on# Configuration minimum recommandéeacl manager proto cache_objectacl localhost src 127.0.0.1/255.255.255.255acl Safe_ports port 80 # http

Page 2: Config Firewall Et Proxy

acl Safe_ports port 21 # ftpacl Safe_ports port 443 563 # https, snewsacl Safe_ports port 70 # gopheracl Safe_ports port 210 # waisacl Safe_ports port 1025-65535 # ports non réservésacl Safe_ports port 280 # http-mgmtacl Safe_ports port 488 # gss-httpacl Safe_ports port 591 # filemakeracl Safe_ports port 777 # multiling httpacl CONNECT method CONNECT# Définition des réseaux, les adresses ip seront à mettre en fonction de la#configuration de votre réseauacl mon_reseaueth src 192.168.1.0/255.255.255.0acl mon_reseauwifi src 192.168.2.0/255.255.255.0# Définition des accès# autorise le groupe mon_reseaueth, mon_reseauwifi précédemment crééshttp_access allow mon_reseauethhttp_access allow mon_reseauwifihttp_access deny all# La redirection sur SquidGuard pour le contrôle à commenter si vous n'utilisez pas SquidGuardredirect_program /usr/bin/squidGuard -c /etc/squid3/squidGuard.confredirect_children 5# On renseigne le nom de machine qui fait serveurvisible_hostname votre_machine

Enregistrer, une fois les modifications effectuées, le fichier Squid.conf.Faire un restart de Squid pour que les changements soit pris en compte:/etc/init.d/squid3 restart

Nous avons donc à présent le proxy d'installé cependant pour le filtrage nous devons installé squidGuard ( vous devez être toujours en mode root pour effectuer ce qui suit).apt-get install squidguard

Ensuite on se place donc dans le dossiers /var/lib/squidguard/db/cd /var/lib/squidguard/db/

On récupère la blacklist grâce a cette commandewget ftp://ftp.univtlse1.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz

On des-archive le fichier et on génère les bases de listes noires.tar xzf blacklists.tar.gz

Page 3: Config Firewall Et Proxy

chown -R proxy:proxy blacklistsln -s /etc/squid/squidGuard.conf /etc/squid3/squidGuard.confsu proxysquidGuard -d -c /etc/squid3/squidGuard.conf -C all

SquidGuard étant prévu pour fonctionner avec une ancienne version de squid onétabli un lien symbolique du squidguard.conf dans le dossier squid/ avec unsquidguard.conf dans le dossier squid3/ grâce a la commande ln -s

Une fois tout ceci faites une copie de votre squidguard.conf d'origine.cp /etc/squid/SquidGuard.conf /etc/squid/SquidGuard.conf.bak

Et éditer le fichier SquidGuard.conf nous allons faire le ménage pour le rendrebien plus lisible étant donné qu'il contient beaucoup de possibilité qui ne noussont pas utile pour ce tuto:gedit /etc/squid3/SquidGuard.conf____________________________________________________________________Effacer tout ce qu'il y'a dans ce fichier et y mettre ceci:## CONFIG FILE FOR SQUIDGUARD#dbhome /var/lib/squidguard/db/blacklistslogdir /var/log/squid3## TIME RULES:# Jour de la semaine:# s = sun, m = mon, t =tue, w = wed, h = thu, f = fri, a = sat# Du 24 au 25 décembre de 21h00 à 5h00 ok pour touttime JoursSpecifique {date *.12.24 21:00 - 00:00date *.12.25 00:00 - 05:00}# on peut par exemple définir des horaires de travail avec les jours concernéstime workhours {weekly mtwhf 08:30 - 19:00}#on indique ici les différents groupes que l'on veut proposer(remplacer les ip#par les paramètres de votre réseau)src admin {ip 192.168.1.235}src PDG {ip 192.168.1.11}

Page 4: Config Firewall Et Proxy

src workers {ip 192.168.1.0/24}src all {ip 192.168.2.0/24}dest adulte {# Sites adultes à proscrireurllist adult/urlsdomainlist adult/domainsexpressionlist adult/very_restrictive_expression}

dest drogues {# Sites drogues à proscrireurllist drugs/urlsdomainlist drugs/domains}dest phishing {# Site de phishingurllist phishing/urlsdomainlist phishing/domains}dest marchands_de_guerre {# Marchands d'armesurllist marketingware/urlsdomainlist marketingware/domains}rewrite test {s@fuck@ooops@irs@blonde@ooops@irs@Hot@ooops@irs@sex@ooops@irs@porns@ooops@irs@bikini@ooops@ir}acl {admin {pass any}PDG {pass any}workers within workhours {pass !adulte !drogues !phishing !marchands_de_guerre any

Page 5: Config Firewall Et Proxy

#redirect http://127.0.0.1/cgi-bin/squidGuard.cgi?clientaddr=%a&clientname=%n&clientident=%i&srcclass=%s&targetclass=%t&url=%uredirect http://debian/interdit.html}all {pass !adulte !drogues !phishing !marchands_de_guerre any#redirect http://127.0.0.1/cgi-bin/squidGuard.cgi?clientaddr=%a&clientname=%n&clientident=%i&srcclass=%s&targetclass=%t&url=%uredirect http://debian/interdit.html}all within JoursSpecifique {pass any#redirect http://127.0.0.1/cgi-bin/squidGuard.cgi?clientaddr=%a&clientname=%n&clientident=%i&srcclass=%s&targetclass=%t&url=%uredirect http://debian/interdit.html}default {pass none#redirect http://127.0.0.1/cgi-bin/squidGuard.cgi?clientaddr=%a&clientname=%n&clientident=%i&srcclass=%s&targetclass=%t&url=%uredirect http://debian/interdit.html}}

Enregistrer le fichier et relancer Squid3:/etc/init.d/squid3 restart

Faites un test avec une machine cliente (la première connexion peut être longue).

Page 6: Config Firewall Et Proxy

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 paramétrages de Pfsense avec les règles sur les ports et le filtrage squid

Page 7: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 2

1) Installation et premiers paramétrages de Pfsense ......................................................................... 3

1.1) Installation de PfSense ............................................................................................................ 3

1.2) Premiers paramétrages de Pfsense ......................................................................................... 6

2) Les règles d’accès .......................................................................................................................... 14

2.1) Paramétrer les règles de base .................................................................................................... 14

2.2) Bloquer l’accès au https de facebook ........................................................................................ 19

2.2.1) Création d’un alias facebook ............................................................................................... 19

2.2.2) Définir les plages horaires d’accès à Facebook ................................................................... 20

2.2.3) Règle pour le blocage de l’accès https à Facebook ............................................................. 22

2.3) Règles à définir 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 générale 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 » à l’aide du logiciel ................................................................. 35

5) Mise en place d’une DMZ .............................................................................................................. 35

6) Les mises à jour de PfSense ........................................................................................................... 36

Page 8: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 3

1) Installation et premiers paramétrages de Pfsense

1.1) Installation de PfSense

Ce document traite de l’installation de la version 2.0.1 de Pfsense (la dernière à la date de rédaction)

sur une nouvelle machine.

Tout d'abord, il faut se rendre sur le site http://www.pfsense.org afin de récupérer 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 gérant 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 gravée, on boot sur le CD et on arrive aux menus suivants :

Pressez « Entrée » pour démarrer sur l'option par défaut (1)

L’installation va se poursuivre un moment, avec un défilement de commandes, jusqu’à s’arrêter sur l’écran suivant :

Page 9: Config Firewall Et Proxy

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 « Entrée »

NB : J’ai choisi de garder ces paramètres car mes nombreuses tentatives pour changer la langue se

sont révélées infructueuses.

Page 10: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 5

Placez-vous sur « Quick/Easy Install » et tapez « Entrée »

Tapez « Entrée »

Page 11: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 6

Choisissez la première option (pour les processeurs multi-cœurs)

L'installation est terminée. Tapez sur « Entrée » pour redémarrer la machine.

Enlevez le CD du lecteur.

1.2) Premiers paramétrages de Pfsense

L’installation terminée, il va désormais falloir effectuer quelques paramétrages afin de pouvoir

accéder au pare-feu depuis son interface web (la quasi-totalité de la configuration se fait via

navigateur web).

Page 12: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 7

Si l’installation s’est bien déroulée, la machine démarre sur le nouveau système, et on doit obtenir

cet écran :

Le temps de chargement des divers paramètres du système d’exploitation peut être long, mais on

arrive ensuite à l’écran suivant :

Il est demandé s’il y a des VLANs à configurer. Ici, répondre non (à adapter selon votre cas bien

évidemment)

Ensuite, il va falloir paramétrer les cartes réseaux afin de correctement les attribuer. Le nommage

des différentes cartes étant parfois peu explicite, je vous conseille de préparer les câbles réseaux à

connecter (au moins ceux du réseau local (LAN) et celui relié à la «box» Internet » (WAN)).

En effet, PfSense pourra vous détecter automatiquement la bonne carte si vous branchez le câble au

moment opportun.

Par contre, ne branchez pas les câbles avant qu’on vous le demande !!

On arrive donc à l’écran suivant :

Page 13: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 8

Tapez « a »pour déclencher la détection automatique (attention, le clavier est sûrement en qwerty !!).

Branchez le câble qui sera relié au WAN (Pfsense vous dira qu’il voit un lien s’activer (up)) puis validez

par « Entrée ». Répétez l’opération pour le câble LAN (et les éventuels autres).

Une fois la configuration des cartes effectuée, on arrive à un écran qui récapitule les différentes

cartes réseau et leur association :

Tapez « y » et validez par « Entrée »

A ce moment-là, Pfsense est accessible via son interface web sur l’adresse IP 192.168.1.1. Nous allons

donc la modifier pour l’intégrer à notre réseau et poursuivre la configuration.

Page 14: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 9

On est donc devant l’écran suivant :

Tapez « 2 » puis « Entrée .Choisissez ensuite le numéro associé à la carte LAN et validez finalement

par « Entrée »

Une fois l’adresse IP et le masque de sous-réseau renseignés, il vous est demandé si vous vous voulez

« remettre » le configurateur web en http (il est en https d’origine).Répondre « y » (contrairement à la

capture d’écran) car « n » peut poser quelques soucis avec les configurations ultérieures.

NB : Il est possible de paramétrer également le(s) autre(s) carte(s) réseaux mais nous le ferons depuis

l’interface web.

Page 15: Config Firewall Et Proxy

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 réseau

via un navigateur web.

Lancez un navigateur web, et dans la barre d’adresse, saisissez http://adresse-ip-pfsense/ puis

validez par « Entrée ». On arrive sur la page d’identification suivante :

Connectez-vous avec les identifiants suivants :

Login : admin

Mot de passe : pfsense

La première chose à faire est de modifier le mot de passe par défaut. Pour cela, il faut se rendre dans

l’onglet System/User Manager :

On clique sur le « e » pour éditer le profil de l’administrateur

Page 16: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 11

NB : Sur chaque onglet, il existe deux icones : le « e » permettant d’éditer le paramètre et le « + »

permettant d’ajouter un paramètre.

Renseignez le nouveau mot de passe sur les deux lignes surlignées. Confirmez en cliquant sur « Save ».

Ensuite, il faut se rendre dans l’onglet « System/Advanced » et cocher la case suivante (en bas de la

page), ce qui permettra d’activer la connexion via SSH au pare feu :

Confirmez la modification en cliquant sur « Save ».

Page 17: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 12

Puis, il faut configurer l’adresse IP du WAN. Pour cela, se rendre dans l’onglet Interfaces/WAN :

Dans cet onglet, renseignez l’adresse IP (avec l’adresse IP publique de votre fournisseur d’accès) avec

son masque de sous-réseau et l’adresse de la passerelle (cliquez sur « add a new one »). Validez bien

en cliquant sur « Save »

Enfin, il est nécessaire de paramétrer les DNS du fournisseur d’accès. Pour cela, se rendre dans

l’onglet : System/General Setup

Page 18: Config Firewall Et Proxy

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 thème des pages de configuration de

pfsense.

Attention, à partir de ce moment-là, Internet

est accessible à toutes les machines du

réseau, sans restriction ni filtre !!

Page 19: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 14

2) Les règles d’accès

Pfsense permet de réaliser un filtrage par protocole(s), port(s),…, sur chaque interface. Pour cela, il

faut paramétrer les règles dans l’onglet Firewall/Rules.

Les règles fonctionnent de manière hiérarchique. En effet, Pfsense va « lire » les règles de haut en

bas, et dès qu’il trouvera une règle s’appliquant au trafic, il l’appliquera. Par exemple, avec deux

règles, une bloquant le protocole https, et l’autre l’autorisant, Pfsense appliquera la première qu’il

rencontrera (la plus haute)

Ici, la règle appliquée est celle bloquant le https.

2.1) Paramétrer les règles de base

Par défaut, Pfsense bloque tout trafic sur l’interface WAN et autorise tout trafic du LAN :

Règles par défaut sur l’interface WAN

Page 20: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 15

Les règles concernant le WAN ne doivent être modifiées que pour laisser passer du trafic entrant

(VPN, DMZ,..). Il ne faudra donc pas y toucher pour le moment.

Règles par défaut sur l’interface LAN

Afin de réaliser un « meilleur » filtrage, il est d’abord conseillé de bloquer tout trafic et d’ensuite

autoriser un à un les ports et/ou protocole.

Concernant les deux règles par défaut du LAN, il ne faut surtout pas désactiver la règle « Anti-

Lockout », qui permet de se connecter à l’interface web de Pfsense via un autre PC (sous peine de

devoir reconfigurer voir réinstaller Pfsense).

Par contre, la seconde règle est celle qui autorise tout le trafic. Il faut donc soit la désactiver, soit la

supprimer (je l’avais dans un premier temps désactivée car au besoin, j’avais juste à la réactiver pour

avoir de nouveau accès à Internet rapidement)

Pour la supprimer, cliquez sur la croix correspondant à la règle, et validez le message de confirmation

de suppression :

Cliquez sur la croix surlignée pour supprimer la règle

Page 21: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 16

Pour uniquement la désactiver, cliquez sur la règle puis sur le bouton « e ». L’écran suivant arrive :

Cochez la case surlignée pour désactiver la règle. Validez en cliquant sur « Save ».

Ensuite, il faudra créer une règle qui bloque tout. En effet, comme cela, tout le trafic ne répondant

pas à une règle définie dans pfsense sera automatiquement bloqué par cette règle-ci.

Il est donc impératif de positionner cette règle en dernière position sur la liste de toutes les règles.

Cliquez donc sur le bouton « + »

Page 22: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 17

Règle bloquant tout trafic provenant du LAN

A ce stade-ci, tout trafic depuis le LAN est bloqué.

Règles avec tout le trafic bloqué

Désormais, il va falloir créer une règle par port, protocole, … C’est-à-dire pour chaque besoin

spécifique.

A titre d’exemple, la règle autorisant le trafic http se créera de la manière suivante :

Page 23: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 18

Règle autorisant le trafic http

Ensuite, pour plus de facilité, il est possible de cliquer sur le bouton « + » suivant pour créer un

« clone » d’une règle existante (pratique lorsque l’on crée des règles qui diffèrent uniquement sur le

port par exemple)

Vous trouverez donc pour vous aider, une liste des ports utiles au sein d’un EPL en annexe :

Annexe 1 : Liste des ports

Page 24: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 19

Voici, à titre d’exemple, les règles en vigueur pour le réseau pédagogique du lycée de Montauban :

Règles en vigueur sur le réseau pédagogique du lycée de Montauban au 03 mai 2012

2.2) Bloquer l’accès au https de facebook

Avec la blacklist de Toulouse, tous les réseaux sociaux seront bloqués (voir chapitre 3, le filtrage

Internet). Mais, il persiste le souci de Facebook, toujours accessible via https. Il existe diverses

manières de bloquer cet accès (fichier host modifié, protocole https bloqué par défaut et réouvert

site par site,..) mais dans ce cas précis, comme facebook doit être autorisé sur certaines plages

horaires, la solution suivante a été adoptée :

2.2.1) Création d’un alias facebook

Il va falloir créer un alias pour les adresses IP publiques de facebook. Pour créer un alias, il faut se

rendre dans l’onglet Firewall/Aliases. Cliquer sur le « + » et donner les caractéristiques suivantes :

Page 25: Config Firewall Et Proxy

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-réseau !

2.2.2) Définir les plages horaires d’accès à Facebook

Si vous souhaitez uniquement bloquer tout le temps l’accès à facebook, vous pouvez passer

directement au chapitre suivant : Règle pour le blocage de l’accès https à Facebook

Page 26: Config Firewall Et Proxy

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 créer un calendrier pour ces plages

horaires. Pour cela, il faut se rendre dans l’onglet 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

créée.

Il va falloir définir ici toutes les plages horaires pendant lesquelles l’accès à Facebook sera bloqué.

Calendrier pour Facebook autorisé les mercredis après-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.

Page 27: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 22

Une fois toutes les plages horaires définies, cliquez sur « Save » pour enregistrer votre calendrier. Il

ne reste plus désormais qu’à définir la règle pour bloquer l’accès.

2.2.3) Règle pour le blocage de l’accès https à Facebook

Enfin, il faut créer une règle associée à cet alias. Pour cela, se rendre dans Firewall/Rules, puis cliquer

sur le « + ». La règle doit alors avoir les caractéristiques suivantes :

Règle pour bloquer le https de Facebook

Page 28: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 23

Si vous souhaitez permettre l’accès au site pendant certaines plages horaires, vous devez en plus

complétez les paramètres suivants :

L’effet de « Schedule » est d’activer la règle pendant les plages horaires définis (ici horaires_cours) et

de la désactiver hors de ces horaires.

2.3) Règles à définir dans le cas de plusieurs LAN

Dans le cas où plusieurs LAN sont définis (par exemple, un réseau pédagogique et un réseau

administratif), il va falloir bloquer les accès entre ces deux réseaux. Pour cela, il va falloir créer une

règle sur chaque interface :

Règle de blocage sur l’interface du LAN Pédago

Règle de blocage sur l’interface du LAN Admin

Ci-dessous, le détail de la règle sur l’interface du LAN «Pédago ».

Page 29: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 24

Détails de la règle de blocage sur l’interface du LAN Pédago

Ensuite, de la même manière, il vous sera possible de créer des règles en fonction des besoins de

communications entre plusieurs LAN (serveur web, partage de fichiers, d’imprimantes,…)

3) Le filtrage Internet

Il est nécessaire de tracer toutes les communications vers l’Internet au sein des établissements, et

pour cela, il va falloir installer des paquets additionnels à pfsense. Pour cela, il faut se rendre dans

l’onglet System/Package Manager.

Page 30: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 25

L’onglet « installed Packages » décrit les paquets installés sur la machine et l’onglet « Available

Packages » ceux disponibles pour une installation.

3.1) Installation des paquets pour le filtrage Internet

Pour permettre de filtrer les accès à Internet, les paquets squid (pas squid3), squidGuard et

Lightsquid.

Pour installer un paquet, cliquez sur le bouton « + »

Une boite de dialogue demande confirmation

Puis, l’installation se déroule « toute seule ».

Une fois les trois paquets installés, passez à la configuration.

Page 31: Config Firewall Et Proxy

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 l’onglet Services/Proxy Server :

Paramètres à modifier pour configurer le serveur proxy

Une fois ces paramètres renseignés, l’accès à internet est inactif. En effet, il va falloir créer une règle

concernant le port utilisé par le serveur proxy (ici 3128).

Ensuite, il faut configurer le filtrage en lui-même.

Page 32: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 27

3.3) Configuration du filtrage

3.3.1) Configuration générale du filtrage

Se rendre dans l’onglet Services/Proxy Filter :

Paramètres à modifier pour configurer le filtre proxy. La blacklist de l’université de Toulouse sera

utilisée. Son adresse pour pfsense est la suivante:

ftp://ftp.univ-tlse1.fr/blacklist/blacklists_for_pfsense.tar.gz

Ensuite, se rendre dans l’onglet « Blacklist ». La blacklist sera téléchargée afin d’être intégrée à

pfsense :

Cliquez sur le bouton « Download »

Page 33: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 28

Une fois le téléchargement complété, se rendre dans l’onglet « Common ACL » et cocher les

éléments suivants :

Avec ces paramètres :

l’accès aux sites Internet directement avec les adresses IP sera bloqué

les moteurs de recherche ne retourneront pas de résultats pour certains types de

recherches

les demandes d’accès (autorisées ou non) seront journalisées.

Ensuite, en cliquant sur la flèche verte, le détail des différentes catégories de la blacklist sera

accessible :

Page 34: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 29

Extrait du détail des catégories de la blacklist

Il conviendra donc ici de définir la stratégie générale d’accès aux différentes catégories de la blacklist

de Toulouse. Le détail de ces catégories est accessible à l’adresse suivante : http://cri.univ-

tlse1.fr/blacklists/ .

Attention toutefois à bien définir la dernière ligne (default acces) sur le paramètre « allow », sinon

l’accès à tous les sites sera impossible.

Une fois les accès définis, 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, désactiver puis activer le filtre en décochant puis cochant la case

suivante

Cliquez sur « Apply » et attendez que le service passe de « Started » à « Stopped » (et vice-versa)

Page 35: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 30

A ce stade-là, le filtrage est opérationnel et identique pour tous, à tout moment de la journée. Il peut

être nécessaire de procéder à des réglages particuliers (en fonction des heures, des personnes,...).

3.3.2) Filtrage en fonction des horaires

Afin de pouvoir définir des règles de filtrages en fonction des horaires, il convient tout d’abord de

définir la ou les plages horaires. Pour cela, se rendre dans l’onglet « Times », puis cliquez sur le

bouton « + » afin d’ajouter une plage horaire :

Définition des horaires en dehors des périodes de cours

Une fois la plage horaire définie, se rendre dans l’onglet « Groups ACL ». Cliquez sur le « + » pour

créer une nouvelle ACL pour des règles de filtrages.

Il faudra définir les règles de filtrage qui s’appliqueront pendant les horaires définis précédemment

et celles qui s’appliquent en dehors.

Page 36: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 31

Configuration d’une ACL en fonction des horaires

Page 37: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 32

3.3.3) Filtrage en fonction des adresses IP

De la même manière qu’il est possible de créer des règles de filtrages en fonction de horaires, il est

possible de créer des règles en fonction des adresses IP. Il suffit de créer une nouvelle ACL :

Configuration d’une ACL en fonction des adresses IP

La notion importante concernant les ACL est que, comme pour les règles, pfsense va les appliquer en

fonction de leur « classement ». Par exemple sur la capture d’écran ci-dessous :

L’ACL « service-info » est appliquée en premier, l’ACL « défiltrer » est désactivée et l’ACL « hors-cours

est appliquée ensuite. Toute machine ne correspondant à aucune de ces ACL se verra appliquer les

règles de filtrage définies dans l’onglet « Common ACL »

Page 38: Config Firewall Et Proxy

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 austère.

Extrait de la page de redirection

Si l’on 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 à l’aide du logiciel WinSCP (téléchargeable 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 d’origine 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 paramètres, mais, afin d’afficher une page sans les codes

erreurs, le fichier a été modifié de la manière suivante :

Page 39: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 34

Ce qui donne la page de redirection suivante :

Page de redirection modifiée

IMPORTANT : une fois votre page correctement configurée, 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 « d’origine » !

3.3.5) Mise à jour automatique de la blacklist

Sous pfsense, il n’existe pas de possibilité par défaut pour mettre à jour la blacklist (si ce n’est se

rendre manuellement dans l’onglet Proxy Filter/Blacklist et cliquer sur le bouton download). Afin

d’automatiser la mise à jour, il est nécessaire d’effectuer quelques paramétrages.

Tout d’abord, lorsque Pfsense met à jour la blacklist, il crée un script dans le dossier tmp. Il va falloir

récupérer ce script. Pour cela, à l’aide 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 créer un dossier).

Une fois le fichier copié, rajoutez les lignes ci-dessous dans le fichier /cf/conf/config.xml :

Page 40: Config Firewall Et Proxy

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 définissent en fait

l’exécution 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 d’un VPN entre un ipcop et un pfsense existe déjà.

Elle est accessible en Annexe 2

NB : Bien que cette méthode soit parfaitement fonctionnelle, une méthode à base de certificats

serait plus sécurisée. Des tests sont en cours afin de permettre une telle méthode. 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 » à l’aide du logiciel

A FAIRE OU EN COURS D'ECRITURE

5) Mise en place d’une DMZ

A FAIRE OU EN COURS D'ECRITURE

Page 41: Config Firewall Et Proxy

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

Page 42: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 37

ANNEXES

Annexe 1 : Liste des ports « utilisés »au sein d’un réseau

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

Page 43: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 38

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

Page 44: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 39

Page 45: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 40

Page 46: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 41

Page 47: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 42

Page 48: Config Firewall Et Proxy

Guide PfSense 2.0

Michel Bonnefond – Version 0.1 du document Page 43