Petite présentation de pfSense.

J’ai découvert pfSense il y a quelques mois, au travail, et j’ai récemment mis en place une machine sous cette distribution pour fournir un pare-feu et des services réseaux (DHCP, port forward,…).

pfSense à été crée en 2004 comme un fork du projet mOnOwall, pour viser une installation sur un PC plutôt que sur du matériel embarqué. pfSense est basée sur FreeBSD, en visant les fonctions de firewall et routeur.

pfSense est puissante, en bonne partie car elle est basée sur FreeBSD, mais aussi assez simple d’accès, car elle fournit une interface web pour la configuration, (en plus de l’interface console). Je recommande quand même de connaitre les commandes basiques de FreeBSD en mode console, au moins pour pouvoir récupérer la configuration en cas d’erreur (par exemple une mauvaise route qui vous empêche de joindre le firewall…). Cette interface web n’est accessible par défaut qu’à partir du LAN.

L’installation est relativement simple et entièrement en console. Après l’installation des questions sont posées pour créer une configuration rapide des interfaces réseaux à assigner.

pfSense ne fait pas seulement firewall, elle offre toute une panoplie de services réseaux. Je vais vous en présenter un partie, celles que j’ai utilisés ou qui me semblent intéressantes.

  • Pare-feu : indispensable pour une distribution "firewall" ;). Le firewall est celui de FreeBSD, à savoir PacketFilter.

    • Table d’état : La table d’état ("State Table") contient les informations sur les connexions réseaux. Cela permet d’avoir un aperçu des connexions et surtout de créer des régles par exemple sur le nombre de connexion maximum pour un hôte.
    • Traduction d’adresses réseaux (NAT) : Permet de joindre une machine situé sur le LAN à partir de l’extérieur.
    • VPN : permet la création de VPN IpSec, OpenVPN ou PPTP.
    • Serveur DHCP.
    • Serveur DNS et DNS dynamiques.
    • Portail Captif.
    • Redondance et équilibrage de charge.
    • Graphes pour la charge système et réseaux.
      Les logiciels s’installent grâce à un système de paquet. Il sont configurés pour s’intégrer à l’interface web. Dans les paquets il y a par exemple (pour le monitoring des onduleurs) et . Le nombre de paquets augmente régulièrement. Il est aussi possible d’installer d’autres paquets que ceux proposés par l’interface, en ligne de commande.

    J’apprécie beaucoup cette distribution pour sa mise en œuvre rapide, facile et efficace. Le développement est régulier et se base sur les avancées de FreeBSD. De plus elle permet une maintenance et des évolutions faciles.

    Par contre une partie de la configuration est dans des fichiers propres à pfSense, ce qui rend plus délicat les modifications à partir de la console.

    Screenshots.