Cette machine virtuelle pfSense va être le pivot et le cœur du réseau de notre environnement. On s’arrête ici à son installation ; dans des tutos ultérieurs nous pourrons découvrir toutes les fonctionnalités de cette distribution reconnue et spécialisée dans la gestion et la protection des réseaux.
Image ISO d’installation
Première chose, il faut récupérer l’image ISO d’installation de pfSense CE (Community Edition), dernière version, pour architecture x64 (AMD64).
NB : Il ne faut pas choisir l’image pour clé USB dont le fonctionnement est différent ; on pourra en revanche utiliser ce format pour un déploiement sur une machine physique notamment.
L’URL de téléchargement est : https://www.pfsense.org/download/
Edit 16/05/2024 : Netgate semble proposer désormais de télécharger un installateur universel pfSense. J’ai essayé, ça n’a pas fonctionné (pendant l’installation, validation impossible). En attendant du nouveau, il est toujours possible de récupérer les installateurs classiques (offline) sur ces deux miroirs :
L’image récupérée est pfSense-CE-2.7.2-RELEASE-amd64.iso.gz Il est recommandé de vérifier la signature SHA256 de l’image, à l’aide d’un outil comme hashcheck par exemple :
Cette image est compressée au format gzip (.gz), il faut un outil tel que 7zip pour en extraire le fichier image ISO final :
Création et configuration de la VM
Depuis VirtualBox, taper CTRL+N (ou menu Machine / Nouvelle), nommer la VM pfSense et choisir le type FreeBSD x64 (pfSense est en effet une distribution de FreeBSD) ; on utilise ici le mode Expert pour la configuration :
On lui octroie ensuite dans les onglets « hardware » et « Hard Disk » ce qui doit correspondre aux propositions par défaut :
- 1024 Mio de RAM,
- 1 cœur CPU
- Un disque dur (type VDI) dynamiquement alloué de 16 Gio.
- On ne choisit pas l’option EFI (même si celle-ci est supportée par pfSense)
Un petit clic sur « Finish » et notre machine est maintenant créée, nous allons finalier la configuration, puis lancer l’installation.
Configuration de la VM
Cliquer sur le bouton « Configuration » pour faire apparaître les paramètres de la VM. On désactive les ressources audios parfaitement inutiles :
Les ports série et USB doivent être désactivés, car ils ne sont pas plus utiles pour notre cas :
Configuration de l’interface réseau WAN
Dans la rubrique « réseau », nous allons configurer deux interfaces. Une première correspond à la partie WAN de pfSense, l’accès à Internet, que l’on obtient par pontage (bridge) d’une interface existante sur la machine hôte, soit par le mode « NAT » proposé par VirtualBox, qui permet d’ajouter une isolation supplémentaire par rapport au réseau réel.
Si l’on souhaite par la suite rendre le pfSense « visible » sur Internet, il est préférable de choisir le mode bridge. Dans ce mode, il faudra sélectionner l’interface physique associée (et on préfèrera une interface filaire plutôt que Wi-Fi).
Le mode NAT permet quant à lui d’accéder à Internet sur des machines hôtes qui sont sur un réseau assez sécurisé : en effet, le pare-feu en amont ne voit que notre machine hôte, qui « partage sa connexion » avec la VM.
Ici, nous allons utiliser le mode NAT, qui permet en plus de ne pas avoir à choisir l’interface physique parente. Il est toujours possible bien sûr de modifier ensuite pour utiliser le mode pont (bridge) :
L’interface 1 de la VM est connectée en mode NAT. Avec VirtualBox, on ne dispose que de quatre interfaces réseau maximum.
Configuration de l’interface LAN
La seconde interface réseau correspond au côté LAN de pfSense ; on l’associe à un réseau virtuel interne (qu’on appellera donc LAN) sur lequel nous pourrons connecter nos autres équipements virtuels. Notons qu’il est possible ici de visualiser (et même modifier) l’adresse MAC de l’interface virtuelle ; ceci peut être très utile au moment de configurer le système qui sera installé sur la VM :
Installation de pfSense
La machine est prête, on clique sur OK, et on la démarre :
Et après la phase de démarrage sur l’image ISO d’installation, l’écran d’accueil s’affiche :
Pour notre installation plutôt standard, il suffit d’accepter les options proposées par défaut.
NB : Il n’est pas utile de configurer un clavier français lors de l’installation, car au démarrage suivant, le clavier est de nouveau en mode QWERTY (à moins que ce bug ne soit corrigé dans le futur)
Attention à bien sélectionner le disque de destination avec la barre d’espacement :
Et on confirme sans hésiter :
Attention pour la phase finale : afin d’éteindre la machine, plutôt que la redémarrer, on va utiliser le Shell pour lancer la commande « init 0 » (attention, la disposition du clavier est QWERTY) :
La VM s’éteint.
On supprime le lecteur optique devenu inutile :
On relance la VM pfSense, la console affiche toute la séquence de démarrage, jusqu’à cet écran qui affiche le menu de la console :
Affectation des interfaces
Normalement, pfSense aura automatiquement affecté chaque interface à son rôle : WAN (sur l’interface NAT) & LAN (sur l’interface en réseau interne)
En cas de problème, ou de doute, il est possible de relancer cette affectation, avec l’option 1 de la console :
Les interfaces disponibles sont identifiées par leur adresse physique MAC, et leur nom dans le système FreeBSD (em0 et em1 dans notre cas). Comme évoqué plus haut, c’est avec les adresses MAC que nous pouvons identifier chaque interface dans VirtualBox.
On ne souhaite pas mettre en place des VLAN ici, on répond : N ; puis on affecte les interfaces à leur rôle, WAN ou LAN :
Attention, le clavier est toujours en QWERTY ! et le verrouillage numérique n’est probablement pas activé par défaut.
A propos de la console pfSense
La console permet d’effectuer des opérations de base pour pfSense, notamment :
- Redémarrer (5)
- Arrêter (6)
- Affecter les interfaces (1)
- Configurer les interfaces (2)
- Lancer une mise à jour du système (13)
- Réinitialiser les réglages par défaut (4)
- Réinitialiser le mot de passe d’administration (3)
Dans la pratique, il est recommandé de protéger l’accès à ce menu console par un mot de passe (ceci se configure depuis l’interface WEB GUI que nous verrons plus loin.)
Fonctionnement de la VM en tâche de fond
Afin que pfSense tourne en tâche de fond dans notre environnement, il peut être démarré sans affichage depuis VirtualBox :
Dès lors, la console n’est visible que depuis la prévisualisation de VirtualBox, mais il est possible de réactiver la console en cliquant sur « afficher » :
Et de la refermer depuis le menu « fichier » de la fenêtre console :
Notre VM pfSense est maintenant opérationnelle. Sa configuration initiale n’est pas réalisée, car il faut pour cela disposer d’un navigateur WEB pour accéder, par le réseau LAN, à la console WEBAdmin. Nous verrons ceci un peu plus loin, dans une section consacrée aux réglages, astuces et bonnes pratiques de sécurité avec pfSense.
La prochaine étape : construire et préparer notre machine Debian core, destinée à un usage « serveur ».