Académique Documents
Professionnel Documents
Culture Documents
1. Présentation du LAB
Vous disposez d’un firewall virtuel Pfsense que vous administrez depuis l’un des postes de la
salle de TP.
Ce TP vous permettra de :
§ Configurer le réseau et le routage
§ Mettre en place des règles de flux
§ Mettre en place des règles de translation d’adresses
§ Configurer une topologie VPN IPSec site-site
Schéma topologique
2. Topologie
Les tableaux ci-dessous représentent le plan d’adressage de votre réseau.
Remplacez « x » par le numéro de votre binôme (voir étiquette colée sur PC).
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 2
Pour accéder à votre lab, ouvrez le lien suivant depuis l’un des postes de la salle de TP :
https://dcp-vcsa.utt.fr
Cliquez sur « Lancer vsphere client » puis, identifiez-vous avec les informations suivantes :
§ Identifiant : if03@dcp.local
§ Mot de passe : Xt6hW76x%
a. Mettez le firewall sous tension et ouvrez la console pour suivre le démarrage puis,
réalisez la configuration initiale.
Répondez « n » lorsqu’il vous est demandé si vous souhaitez configurer des VLANs.
Saisissez « vmx0 » comme interface WAN, c’est-à-dire, celle tournée vers Internet.
Tapez « vmx1 » pour sélectionner l’interface LAN. Celle-ci sera utilisée pour accéder à l’espace
web de configuration.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 3
L’interface nommée « LAN » est celle qui porte le label « wmx1 » sur le schéma
d’infrastructure. Celle-ci est donc reliée au réseau d’administration qui correspond, en fait,
au réseau de la salle de TP.
Vous allez donc devoir modifier les paramètres réseau de cette interface pour pouvoir accéder
à l’interface web de configuration du FW PFSENSE depuis votre poste de travail.
Le menu affiché dans la console vous permet de réaliser quelques opérations de configuration
de base.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 4
Saisissez l’adresse IP 10.23.202.1xx puis, tapez sur « Entrée ». Exemple : B5 = 105, B10=110.
N’écrivez rien lorsqu’il vous est demandé de renseigner l’adresse d’une passerelle puis, tapez
sur « Entrée ».
Faites de même lorsqu’il vous est demandé de définir une adresse IPv6.
Lorsqu’il vous est demandé si vous voulez revenir au protocole http pour l’accès à l’interface
web, répondez « n ». Vous utiliserez https.
Ouvrez un nouvel onglet dans votre navigateur et tapez l’adresse affichée pour accéder à
l’interface web de configuration du firewall.
Le navigateur devrait afficher une alarme car le certificat SSL envoyé par le FW est autosigné.
Ne tenez pas compte de cet avertissement et continuez.
Lors de la première connexion, il vous est proposé de suivre un rapide tutoriel pour vous
guider dans la prise en main de Pfsense. N’en tenez pas compte et passez directement à la
configuration des interfaces.
Vous pouvez changer le mot de passe du compte « admin » si vous le souhaitez. En cas
d’oubli, il sera possible de le réinitialiser depuis la console du FW.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 5
Cliquez sur le nom de l’interface « WAN » puis modifiez les champs suivants :
§ IPv4 Configuration Type : Static IPv4
§ IPv6 Configuration Type : None
§ IPv4 Address : 10.100.1.x /16
Cliquez sur « Add a new gateway » puis, entrez l’adresse 10.100.255.254 dans le champ
« Gateway IPv4 ». Validez en cliquant sur « Add ».
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 6
Retournez ensuite, dans le menu « Interfaces – Assignments » pour configurer les deux
interfaces restantes :
§ OPT1 « USER »
§ OPT2 « DMZ »
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 7
A présent, votre firewall à connaissance des réseaux dans lesquels ses interfaces sont
connectées. En conséquence, sa table routage est peuplée d’au moins quatre routes qui
correspondent à chacun d’entre eux. Il est donc capable d’aiguiller les paquets dont la
destination correspond à l’un ces réseaux.
Cependant, il a besoin d’une route dite « par défaut » qui est l’adresse du firewall (ou du
routeur) voisin vers qui envoyer tout le trafic dont la destination ne correspond à aucune route
connue.
Un firewall aiguille les données dans la bonne direction en s’appuyant sur le champ « adresse
IP de destination » des entêtes des paquets IP qu’il confronte à sa table de routage.
a. Vérifiez que toutes les entrées nécessaires à la mise en œuvre du routage sont
présentes
255.254
Vous pouvez également remarquer la présence de routes pour les 4 réseaux configurés.
§ 10.100.0.0/16
§ 10.23.202.0/24
§ 172.16.x.0/24
§ 10.10.20.0/24
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 8
Résultat attendu :
§ Faites des pings vers le 10.10.20.1 pour tester la connectivité dans le réseau « DMZ ».
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 9
Utilisez les outils disponibles pour configurer l’interface « ens192 » en respectant les
paramètres suivants :
§ Adresse IP : « 172.16.x.1 »
§ Masque de sous-réseau : « /24 »
§ Route par défaut : « 172.16.x.254 »
Retournez dans l’interface du firewall et faites des pings à destination du poste « User ».
Dans tous les cas, si un test échoue, vérifiez votre configuration avant de passer à l’étape
suivante.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 10
Dans le menu « Firewall -Rules – Floating » créez une nouvelle règle en cliquant sur « Add »
puis, remplissez les champs comme sur la capture ci-dessous.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 11
Les adresses IP privées (non réservées) appartiennent aux classes A, B et C que l’on peut
utiliser sans restriction dans les réseaux privés.
§ Classe A : 10.0.0.0 à 10.255.255.255
§ Classe B : 172.16.0.0 à 172.31.255.255
§ Classe C : 192.168.1.0 à 192.168.255.255
Notez que ce modèle d’adressage par classes qui impose un masque par défaut pour chaque
adresse, est devenu obsolète et a été remplacé par un système d’adressage plus performant,
sans classe, nommé CIDR. Retenez simplement qu’une adresse IP est privée si elle appartient
à l’une de ces 3 étendues.
Ø Les adresses IP privées peuvent être utilisées indéfiniment mais elles ne peuvent pas
circuler sur internet.
Ø A l’inverse, les adresses IP publiques sont uniques sur Internet et dans le monde. Elles ne
doivent donc jamais être utilisées dans des réseaux privés.
Ces blocs ont été créés à l’origine pour palier à la pénurie croissante d’adresses IPv4
En partant de ce principe, il faut donc mettre en place un mécanisme qui consiste à remplacer,
à la volée, les adresses IP privées des entêtes des paquets, pour que les hôtes des réseaux
privés puissent communiquer avec internet.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 12
Le schéma ci-dessus, illustre le cas d’un échange entre une machine d’un réseau privé
(192.168.1.10) et d’un serveur présent sur internet (8.8.8.8). On peut constater que le routeur
modifie le champs « ip source » du paquet émit par l’hôte avant de le router. Il remplace
l’adresse IP privée par l’adresse IP publique portée par son interface « externe ». Enfin, il
réalise l’opération inverse pour les paquets retournés par le serveur.
C’est donc une règle de type PAT (Port Address Translation) que vous allez devoir configurer
dans la mesure où, vous ne disposez que d’une seule adresse IP publique (celle portée par
l’interface WAN) pour translater les adresses de vos réseaux locaux.
`
Avec la PAT, la notion de ports est utilisée, en plus, dans la correspondance adresse IP
source/destination afin de discriminer et acheminer les paquets retours vers les hôtes
internes.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 13
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 14
Critères de sélection
§ Adresse IP source 172.16.20.1 – 172.16.20.254
§ Port TCP/UDP source = tous
§ Adresse IP de destination = toutes
§ Port TCP/UDP = tous
Description de la règle :
La translation s’applique à tous les paquets émis par les hôtes du réseau « USER » à
destination de n’importe quel autre réseau et pour tout type de service.
La translation ne s’applique pas aux flux échangés entre les hôtes des réseaux internes car ils
ne passent pas par l’interface WAN.
L’adresse IP source des paquets translatés est remplacée par l’adresse IP externe du firewall.
L’adresse IP et le port de destination sont inchangés.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 15
Dans cet exemple, vous pouvez remarquer que l’adresse IP source a été remplacée par
l’adresse de l’interface WAN (10.100.1.x) du FW.
c. Testez l’accès aux services hébergés par les serveurs de votre DMZ
Capturez le trafic sortant de l’interface « DMZ » du firewall avec les paramètres suivants :
§ Interface : DMZ
§ Address Family : Ipv4 Only
§ Protocol : TCP
§ Port 80
Pendant la capture, rafraichissez les pages web hébergées par vos serveurs pour générer du
trafic.
Dans l’exemple ci-dessus, vous pouvez constater que le champ « ip source » des paquet émis
par le poste User, n’a pas été modifié.
Sur le poste « User », éditez le fichier « resolv.conf » et remplacez l’adresse IP sur serveur DNS
par 10.23.1.30.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 16
7. Redirection de ports
Ceci a pour avantage de masquer votre infrastructure car, du point de vue de l’internet, il n’y
a qu’une seule adresse qui est vue. Il est donc impossible de savoir combien de machines se
cachent derrière celle-ci et encore moins de connaitre le plan d’adressage utilisé en interne.
L’inconvénient (mais aussi l’avantage), c’est qu’il est impossible de communiquer directement
avec un hôte interne depuis internet car, souvenez-vous, les adresses IP privées ne sont pas
uniques et elles ne sont pas autorisées sur les réseaux publics.
Donc, si vous souhaitez publier un service sur internet, comme un site WEB, par exemple, vous
allez devoir mettre en place une solution qui permettra d’y accéder par la seule adresse
utilisable. À savoir l’adresse IP publique du firewall.
a. Configurez une règle de NAT afin de rediriger les requêtes web à destination de
l’adresse IP externe vers le serveur WEB de votre DMZ
Tout d’abord, dans le menu « Interfaces – WAN » décochez les deux options qui bloquent les
adresses IP privées entrantes (ne pas reproduire dans un contexte de production).
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 17
Interface d’entrée
Version du protocole IP
L’adresse IP et le port de
destination des paquets à
translater
Description de la règle.
La règle s’applique au trafic provenant de n’importe quelle source (exemple internet), dont la
destination est l’adresse IP externe du FW et dont le protocole de destination est http
(80/TCP). Elle ne s’applique qu’aux paquets se présentant à l’interface WAN.
Indique vers quel hôte interne et quel protocole, le trafic doit être redirigé.
WebSer (10.10.20.3) - http
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 18
Jusqu’à présent vous avez utilisé une politique de filtrage permissive, le temps de vous
familiariser avec la translation. Le FW se comportait donc, comme un routeur laissant passer
tous types de flux entrants et sortants.
Dans le menu « Firewall – Rules – Floating », désactivez la règle que vous avez créé
précédemment.
Une règle permet de bloquer ou d’autoriser du trafic réseau en fonction de certains critères :
§ Adresse IP source.
§ Adresse IP de destination.
§ Port source.
§ Port destination.
§ Protocole.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 19
Vous pouvez remarquer qu’il n’y a aucune règle configurée pour les interfaces « WAN »,
« USER » et « DMZ ». Le trafic est donc rejeté, par défaut, sur ces interfaces.
Les hôtes des réseaux « DMZ » et « USER » sont donc isolés et les hôtes « externes » ne
peuvent pas communiquer avec les hôtes internes. Tout trafic à destination de l’interface
« WAN » est également bloqué.
Seule l’interface « ADMIN » (LAN par défaut) possède des règles préconfigurées.
§ La première règle est celle qui permet d’accéder à la page de configuration. Il ne faut donc
pas la supprimer.
§ Les règles suivantes, combinées aux règles de NAT que vous avez supprimé, donne un
accès au réseau « WAN » pour les hôtes du réseau « LAN ».
Bloquez tout le trafic sortant en supprimant les deux dernières règles appliquées à l’interface
WAN
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 20
Le trafic réseau étant à présent, totalement bloqué, vous allez devoir, créer et appliquer
différentes règles pour mettre en place une politique de sécurité répondant aux exigences
énoncées dans cette partie du TP.
A partir d’ici, vous ne serez plus guidé pas à pas. Utilisez toutes les ressources disponibles
pour vous aider. N’hésitez pas à vous servir des outils de capture pour déboguer vos règles.
a. Les postes du réseau « USER » peuvent naviguer sur le WEB (http & https) et rien
d’autre.
Aide :
Déterminez d’abord sur quelle interface placer votre règle.
Les hôtes du réseau « USER » ne doivent pas pouvoir communiquer avec les autres réseaux
internes.
N’oubliez pas que pour naviguer, les machines ont besoin de résoudre des noms.
Faites attention à l’ordre des règles.
Assurez-vous que le serveur DNS utilisé par votre poste est bien le 10.23.1.30.
Utilisez des alias pour simplifier vos règles. « Firewall – Aliases »
Exemple d’alias :
Vous pouvez remarquer que la valeur du champ « States » des règles, augmente à chaque fois
qu’elles « matchent » avec des paquets. Vous pouvez cliquer dessus pour afficher le détail.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 21
Aide :
Les règles sont analysées de manière séquentielle. Faites donc, attention à l’ordre de vos
règles de filtrage.
Pfsense est un firewall statefull, c’est-à-dire, qui garde en mémoire l'état des connexions
TCP/UDP pour discriminer les paquets « retours » légitimes.
d. Nous souhaitons rendre le serveur DNS opérationnel. Créez les règles qui
permettent la sortie des flux DNS depuis « NameServ » à destination d’internet.
Aide :
Créez une règle Nat pour que « NameServ » puisse forwarder les requêtes DNS sur internet.
Créez une règle de filtrage et appliquez-la sur l’interface adéquate pour autoriser les flux DNS
sortant émis par « NameServ ».
Les serveurs de votre « DMZ » ne sont pas hébergés par quatre machines virtuelles
contrairement à ce qui est représenté dans le schéma topologique. En réalité, il s’agit de
quatre conteneurs docker exécutés dans la VM « serveurs ». En conséquence, vous ne pourrez
pas utiliser les outils de diagnostic habituels directement depuis la console de la VM
« serveurs ».
En remplacement, vous allez donc utiliser « Hping3 » qui est un outil qui permet d’envoyer
des paquets personnalisés pour, par exemple, tester l’accès à différents services et donc de
tester vos règles.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 22
Éditez le fichier resolv.conf du poste « User » et remplacez l’adresse du serveur DNS par celle
de « NameServ ».
Vous avez déjà configuré une règle de redirection de port pour « WebServ » et celui-ci était
accessible depuis le réseau externe jusqu’à ce que le filtrage soit réactivé.
A présent, il faut donc ajouter, une règle de filtrage pour autoriser les flux http entrants sur
l’interface WAN pour rendre à nouveau le service accessible aux hôtes externes.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 23
Aide :
Jusqu’à présent, vous avez utilisé des protocoles de la couche 4 « transport » du modèle OSI
comme critère pour filtrer le trafic (protocoles de TCP et UDP).
Cependant, la commande ping utilise le protocole « ICMP » qui appartient à la couche (3)
« réseau ».
h. Le proxy web
La politique de sécurité a encore évolué. A présent, les postes du réseau « USER » ne sont
plus autorisés à naviguer directement sur le Web. Vous devez donc mettre en place des
règles pour forcer les hôtes de ce réseau à passer par « ProxyServ » pour naviguer.
(1) Modifiez les règles de filtrage afin de bloquer l’accès « direct » à internet pour les hôtes du
réseau « USER ».
(2) Créez une règle pour autoriser les hôtes du réseau « USER » à requêter le serveur proxy
sur le port 3128/TCP.
(3) Créez une règle de translation pour que « ProxyServ » puisse envoyer des données sur
internet.
(4) Créez une règle de filtrage qui autorise les flux web et DNS depuis « ProxyServ » vers
internet.
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 24
v Concepts et généralités
Un tunnel VPN IPsec site-à-site est un groupe de protocoles qui permettent de mettre en
œuvre une connexion chiffrée entre deux réseaux privés distants via un réseau public
(Internet par exemple).
Philippe PEREIRA
IF03 – FIREWALL PFSENSE 25
a. Utilisez le mode « tunnel » du protocole IPSec pour monter un VPN site-à-site avec
un autre binôme.
Objectif attendu :
Vous devez mettre en relation les réseaux « USER » des deux binômes.
Lorsque le tunnel sera opérationnel, vous devrez être capable de réaliser des pings entre les
postes « User » des deux binômes.
Aide :
La configuration du tunnel IPsec se fait par le menu « VPN – Ipsec – Tunnels »
Observez l’apparition d’une nouvelle interface IPsec dans le menu « Firewall – rules ».
Il y a donc, au minimum, 2 règles à créer sur chaque firewall afin d’autoriser le trafic dans le
tunnel IPsec.
Philippe PEREIRA