Remplacer la LiveBox : configuration, évolutivité, sécurité …

Pourquoi remplacer sa Livebox ?

On ne va pas s’étendre sur les raisons qui motivent chacun dans le remplacement de sa Livebox. Sachez juste que personnellement, ce ne sont pas de mauvais fonctionnements qui m’ont amené à remplacer ma petite LiveBox.

L’envie de gérer comme un grand mon réseau et de faire ce dont j’avais envie a été le moteur de ce projet.
[spoiler title= »Journal des mises à jour »]UPDATE 01 : Publication de la première partie du tuto.

UPDATE 02 : Réagencement de l’article + Définition des objectifs + Configuration générale + Configuration VLANs + Configuration serveur DHCP

UPDATE 03 : Réagencement de l’article + Liste des courses + Règles de sécurité + Point d’accès Wi-Fi + Portail captif + Correction des fautes d’orthographe
[/spoiler]


/!\ Avertissements /!\

En remplaçant votre Livebox par un matériel tiers, (selon votre architecture) vous ne serez plus en mesure d’utiliser les services « téléphonie fixe » et « TV » de votre abonnement. Le SAV Orange n’assumera pas le support pour votre matériel tiers.


Objectifs

  1. Avoir un réseau PRIVE étanche;
  2. Avoir un réseau PUBLIC étanche;
  3. Le réseau PUBLIC aura des restrictions;
  4. Maîtrise de mon réseau local.
  • VLAN « VLAN_01_PRIVE » : VLAN ID : 100; adresse IP : 192.168.100.254/24
  • VLAN « VLAN_02_PUBLIC » : VLAN ID : 200; adresse IP : 192.168.200.254/24

/!\ Schéma réseau de l’infrastructure finale à venir /!\

Sommaire

Contexte (prérequis)

  • Je dispose d’un bon vernis réseau.
  • Je dispose d’un modem pour établir la synchronisation ADSL ou d’une offre fibre avec un ONT.
  • J’ai réussi à installer pfSense sur mon châssis.
  • J’ai réalisé le câblage de mon châssis.
  • Je suis prêt à configurer logiciellement mon châssis.

Si un point/option/fonction n’est pas abordé, c’est que sa valeur est celle par défaut ou que c’est un oubli de ma part ;).

Liste des courses

Montant estimé du projet (hors câbles réseau) : 305,00€

  • Firewall : 150,00€ en prenant le premier modèle clé en main de Netgate
  • Point d’accès Wi-Fi : 80,00€
  • Switch 8 ports : 75,00€

Firewall : configuration matérielle minimale requise

Configuration matérielle minimale requise pour pfSense 2.x. Notez que les exigences minimales ci-dessous ne sont pas adaptées à tous les environnements.

Si votre configuration ne respecte par les minimums suivants, votre système fonctionnera, mais fera souvent appel à la partition SWAP de votre support de stockage (HDD,SSD) ce qui aura pour effet direct de dégradé les performances de votre système.

À noter que si vous n’avez pas envie de vous prendre la tête, pfSense vends des produits clé en main via son site : https://store.netgate.com/. Ce site  vous permettra également de déterminer plus finement les besoins de votre futur système selon votre environnement.

  • Minimum :
    • Processeur : 500 MHz
    • RAM : 512 Mo
    • Stockage : 1 Go
  • Recommandé :
    • Processeur : 1 GHz
    • RAM : 1 Go
    • Stockage : 1Go

Carte réseau

La sélection de cartes réseau (NIC) est souvent le facteur de performance le plus important dans votre configuration. Les NIC peu coûteux peuvent saturer votre CPU avec la gestion des interruptions, provoquant des paquets manqués et votre CPU deviendra le goulot d’étranglement de votre configuration. Une carte réseau de qualité peut considérablement augmenter le débit du système. Lorsque vous utilisez le logiciel pfSense pour protéger votre réseau sans fil ou pour segmenter plusieurs segments LAN, le débit entre les interfaces devient plus important que le débit vers les interfaces WAN.

Les cartes réseau basées sur des chipsets Intel ont tendance à être les plus performantes et les plus fiables lorsqu’elles sont utilisées avec le logiciel pfSense. Nous vous recommandons donc vivement d’acheter des cartes Intel ou des systèmes dotés de cartes réseau Intel intégrées jusqu’à 1 Gbit/s. Au-dessus de 1 Gbit/s, d’autres facteurs et d’autres fournisseurs de cartes réseau dominent les performances.

Source : https://www.pfsense.org/products/#requirements

Processeur

10-20 MbpsWe recommend a modern (less than 4 year old) Intel or AMD CPU clocked at at least 500MHz.
21-100 MbpsWe recommend a modern 1.0 GHz Intel or AMD CPU.
101-500 MbpsNo less than a modern Intel or AMD CPU clocked at 2.0 GHz. Server class hardware with PCI-e network adapters, or newer desktop hardware with PCI-e network adapters.
501+ MbpsMultiple cores at > 2.0GHz are required. Server class hardware with PCI-e network adapters.

N’oubliez pas que si vous souhaitez utiliser votre installation pfSense pour protéger votre réseau sans fil ou segmenter plusieurs segments LAN, le débit entre les interfaces doit être pris en compte. Dans les environnements où un débit extrêmement élevé via plusieurs interfaces est requis, en particulier avec les interfaces Gigabit, la vitesse du bus PCI doit être prise en compte. Lorsque vous utilisez plusieurs interfaces dans le même système, la bande passante du bus PCI peut facilement devenir un goulot d’étranglement.

Source : https://www.pfsense.org/products/#requirements

Composants compatibles

Comme pfSense est basé sur FreeBSD, sa liste de compatibilité matérielle est la même que celle de FreeBSD. Le noyau pfSense inclut tous les pilotes FreeBSD.

Mon châssis personnel
  • Fujitsu FUTRO S500
  • Année : 2009
  • Processeur : AMD Sempron 2100+
  • Mémoire : 512 Mo
  • Carte réseaux : x 3 (WAN, LAN Privé, LAN Public); possibilité de réaliser la configuration avec uniquement 2 cartes
  • Fiche technique complète
  • Prix constaté : moins de 50,00€ sur eBay

Point d’accès Wi-Fi

Ubiquiti est une marque américaine fondée en 2005, spécialisée dans le réseau et plus particulièrement dans les réseaux sans fil. Ils possèdent toute une gamme de routeurs, switches, access point, carte de réception, antenne et autres.

Oui, oui on dirait un détecteur de fumée, mais en bien plus excitant !

Il permet de créer plusieurs SSID, pour avoir par exemple un réseau pour les membres de la famille/entreprise qui auront accès aux ressources de l’entreprise et à Internet, et un réseau pour les invités qui n’auront accès qu’à Internet. Il permet aussi de gérer le QOS (Quality Of Service) et donc de, par exemple, privilégier la bande passante pour la VOIP par rapport au FTP.

Mon access point est arrivé dans une jolie boite, contenant :

  • L’access point
  • Son POE adapter (l’access point reçoit son alimentation électrique via le câble Ethernet d’où POE ou Power Over Ethernet)
  • Son socle pour le fixer au mur/plafond
  • Les vis et chevilles pour le fixer
  • Un guide de démarrage très/trop succinct :s

Je ne conseillerais surement pas cet appareil à une personne n’ayant aucune connaissance en réseau (un peu comme je ne conseillerais pas un NAS à cette même personne), sauf si elle a du temps devant elle, a la volonté d’apprendre et sait se débrouiller ! Par contre pour un geek ou dans un milieu professionnel, il est clair que Ubiquii a sa place !

Enfin et surtout, son prix, actuellement aux alentours des 80,00€, c’est bien moins cher qu’un access point HP ou Cisco par exemple, pour des qualités équivalentes !

Switch

Le Netgear ProSAFE Click Switch se présente sous la forme d’un boîtier tout en longueur avec des dimensions de 30,5 x 6,6 x 3,5 cm pour un poids de 440 g. Rien de bien neuf. Le switch de Netgear se distingue par l’intégration de l’alimentation. Cela évite d’avoir un nouvel adaptateur électrique qui viendra traîner ici et là, contre lequel on ne cesse de pester. La fixation du câble d’alimentation offre le choix entre deux positions. Ces dernières permettent d’orienter le fil vers l’avant ou l’arrière afin de minimiser la gêne.

Pour installer le Click Switch, Netgear le dote d’un système de montage spécifique qui s’appuie sur un socle distinct du boîtier. Les deux s’emboîtent par un système de clips. Le socle se visse à l’endroit de son choix : le long d’un pied de table, sur une étagère, sous le plateau d’une table ou d’un bureau, sur un mur… Libre à chacun d’imaginer où il fixera le ProSAFE Click Switch GSS108E. Netgear a conçu un système flexible.

En ce qui concerne les fonctions et performances, le Netgear ProSAFE GSS108E remplit parfaitement son rôle de swicth. On n’en attendait pas moins. Il propose en plus, aux côtés des ses huit ports Ethernet, deux ports USB pour recharger tous types d’appareils : smartphones, tablettes, Action Cam (caméras sportives), appareils photo…

Le Click Switch GSS108E fait partie de la famille ProSAFE de Netgear. Une gamme qui existe depuis des années et qui a fait ses preuves. Conçue pour le monde professionnel, ses fonctionnalités comblent largement (et outrepassent) les besoins d’un réseau domestique. Les performances sont au rendez-vous.

Le Netgear est un switch 1000/100/10. Chacun des ports dispose de deux LED. Celle de gauche clignote lorsqu’il est utilisé en gigabits et celle de droite pour les débits 100/10. Notez qu’il est possible de désactiver ces diodes sans nuire au fonctionnement.

Le Netgear ProSAFE Click Switch ne fait aucun bruit. Ne possédant pas de ventilateurs, il est totalement silencieux.

Fiche technique

Logiciel/Système/Distribution

Concernant le système, j’ai choisi la distribution pfSense. Je changerai peut-être de crèmerie plus tard si cette distribution montre ses limites, mais à la lecture des fonctionnalités, elle comprend tout ce dont nous avons besoin :). À noter, l’existence d’une liste des distributions de routeur et de pare-feu sur Wikipedia plutôt bien faîte et à jour. Dans le même esprit et toujours sur Wikipedia, un comparatif des solutions firewalls.

pfSense est une distribution open source (licence BSD) gratuite pour transformer un PC en pare-feu. La base du système est FreeBSD, et pfSense est un fork de mOnOwall.

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éseau à assigner. pfSense ne fait pas seulement firewall, elle offre toute une panoplie de services réseaux. Je vais vous en présenter une partie, celles que j’ai utilisées 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éseau. Cela permet d’avoir un aperçu des connexions et surtout de créer des règles par exemple sur le nombre de connexions maximum pour un hôte.
  • Traduction d’adresses réseau (NAT) : Permets de joindre une machine située sur le LAN à partir de l’extérieur.
  • VPN : permets 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. Ils sont configurés pour s’intégrer à l’interface web. Dans les paquets il y a par exemple nut (pour le monitoring des onduleurs) et FreeRADIUS. 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.

Avantages & Inconvénients

Comme toute solution de routeur/pare-feu pfSense possède son lot d’avantages et d’inconvénients. Mais sa polyvalence et le nombre conséquent de fonctionnalités font de cet outil une solution fiable. pfSense est très peu gourmand en termes de ressources. En effet, la configuration minimale requiert un processeur équivalent ou supérieur à 500Mhz quand la mémoire exigée est de 512 Mo. Vous n’aurez donc aucune difficulté à mettre en place cette solution !

En revanche, et malgré les nombreux avantages de cette solution, il faudra s’assurer d’avoir les connaissances nécessaires pour déployer cette solution. Elle se destine donc déjà à un public averti.

Source : www.generation-linux.fr

Notes personnelles

À terme, j’envisage de migrer pour OPNsense.

À savoir qu’OPNsense est un fork de pfSense sorti le 2 février 2015 suite à des désaccords entre devs. Les 2 ont principalement les mêmes fonctionnalités, les interfaces web changent et quelques détails sur celles-ci.  L’équipe de pfSense a mis à jour suite au fork sa vieille interface web pour quelque chose de plus moderne à l’image d’OPNsense.

Les principales différences d’OPNsense par rapport à pfSense sont :

  • Utilisation en marque blanche possible grâce à la licence BSD simplifiée à 2 clauses seulement
  • Toutes les sources et outils de construction sont disponibles gratuitement, sans frais si clause spéciale
  • Une interface web responsive basée sur bootstrap
  • Un saut de version consiste en la mise à jour des paquets concernés (moins impactant)

pfSense est actuellement plus complet via les packages tiers fournis comme des agents de supervision, proxy squid etc … pfSense étant plus vieux, il a été également bien plus testé et éprouvé qu’OPNsense à ce jour. Autre avantage pour pfSense, sa communauté est vaste, ce qui permet de trouver plus facilement de la documentation.

Mais le temps fera que ce qui est valable pour pfSense aujourd’hui le sera pour OPNsense demain ;).

Firewall

Configuration générale

System > General setup

Certains de ces paramètres auront été configurés pendant le processus d’installation, mais peuvent être modifiés à tout moment.

Lors d’une nouvelle installation, les informations d’identification par défaut sont:

Nom d'utilisateur: admin
Mot de passe: pfsense
  • Hostname : Entrez un nom d’hôte. Ce nom sera utilisé pour accéder à la machine par son nom à la place de l’adresse IP. Par exemple, nous pouvons naviguer vers http://pfsense au lieu de http://192.168.1.1.
  • Domain : monreseau.lan (par exemple)
  • DNS Servers* : pour trouver les meilleurs serveurs DNS selon votre FAI, réaliser un benchmark avec cet outil
  • Timezone : votre fuseau horaire

*Je vous recommande personnellement l’usage des serveurs DNS OpenDNS.

VLAN

Un réseau local virtuel, communément appelé VLAN (pour Virtual LAN), est un réseau informatique logique indépendant. De nombreux VLAN peuvent coexister sur un même commutateur réseau.

Les VLAN présentent les intérêts suivants :

  • Améliorer la gestion du réseau.
  • Optimiser la bande passante.
  • Séparer les flux.
  • Segmentation : réduire la taille d’un domaine de broadcast,
  • Sécurité : permets de créer un ensemble logique isolé pour améliorer la sécurité. Le seul moyen pour communiquer entre des machines appartenant à des VLAN différents est alors de passer par un routeur.

Lorsque nous créons un VLAN, nous définissons deux éléments :

  • le subnet associé (ex : 192.168.100.0/24)
  • l’ID du VLAN (allant de 1 à 4094)

Le VLAN 1 est créé par défaut et tous les ports du switch appartiennent à ce VLAN

Les terminaux se trouvant sur un VLAN ne pourront communiquer qu’avec les autres terminaux se trouvant sur le même VLAN. S’ils souhaitent communiquer avec les terminaux d’un autre VLAN, les paquets passeront par pfSense. Cela nous permet de configurer au niveau de pfSense des règles fines de filtrage d’un VLAN à un autre.

Les VLANs doivent être déclarés et configurés côté pfSense d’une part, et sur les switches d’autre part (qui doivent bien sûr être des switches de niveau 3 – c’est-à-dire sachant travailler avec les paquets IP).

La configuration des switches est le point le plus délicat. La terminologie employée n’étant pas toujours la même chez les constructeurs.

Terminologie

Lorsque nous souhaitons configurer les VLAN sur notre switch, nous avons deux possibilités de configuration :

  • tagged port (= trunk port chez Cisco)
  • untagged port (= access port chez Cisco)

Tagged port

Un port de switch configuré en « tagged » signifie que l’équipement branché derrière est capable de traiter les tags 802.1q et qu’il est configuré pour les traiter. C’est-à-dire qu’il faudra indiquer dans la configuration de l’équipement qu’il doit marquer ses paquets réseau avec son VLAN d’appartenance.

Untagged port

Un port de switch configuré en « untagged » signifie que la notion de VLAN est totalement transparente pour l’équipement branché derrière. C’est-à-dire qu’il ignore son VLAN de rattachement. C’est le switch qui utilise l’id VLAN associé pour son traitement interne pour la distribution des paquets sur ses ports. Les paquets ne sont pas tagués 802.1q en entrée et sortie des ports du switch configurés en « untagged ».

Configuration d’un VLAN privé et public

Sur pfSense, nous configurerons donc deux VLANs :

  1. VLAN « VLAN_01_PRIVE » : VLAN ID : 100; adresse IP : 192.168.100.254/24
  2. VLAN « VLAN_02_PUBLIC » : VLAN ID : 200; adresse IP : 192.168.200.254/24

Pour commencer, nous allons dans le menu « Interface » > « (assign) ».

Puis, nous nous rendons dans l’onglet « VLANs » et cliquons sur l’icône en forme de « + » se trouvant en bas à droite.

Les éléments de configurations sont les suivants :

Parent interface : l’interface physique à laquelle sera rattachée le VLAN (dépendante de votre châssis)

  1. VLAN tag : l’ID du VLAN (la valeur doit être comprise entre 1 et 4094), nous choisirons 100
  2. Description : champ optionnel de description du VLAN : VLAN_01_PRIVE

Et une fois nos deux VLANs créés, nous disposons de deux interfaces virtuelles :

Afin de configurer nos VLANs, nous devons maintenant associer ces interfaces virtuelles à des interfaces logiques. Pour cela, nous retournons dans l’onglet « Interface assignments », puis nous cliquons sur l’icône en forme de « + » se trouvant un bas à droite afin d’ajouter une nouvelle interface logique.

Par défaut, l’interface logique créée porte le nom « OPT1 » (ou OPT2, OPT3, etc.). Nous associons cette interface logique à l’interface virtuelle du VLAN que nous avons créée précédemmen.

Pour modifier l’interface logique créée (et la renommer), nous cliquons sur son nom. Les éléments de configuration sont les suivants :

  • Enable Interface : cocher cette case pour activer l’interface
  • Description : nom de l’interface
  • IPv4 Configuration Type : la configuration IPv4 de cette interface. Dans notre cas, nous choisissons « Static IPv4 »
  • IPv6 Configuration Type : la configuration IPv6 de cette interface. Dans notre cas, nous choisissons « None ».
  • MAC controls : par défaut, c’est l’adresse MAC de l’interface physique qui est utilisée. Elle peut être personnalisée ici.

Enfin, nous appliquons les paramètres de configuration IP (adresse IP de l’interface et masque réseau associé).

  • « VLAN_01_PRIVE » : adresse IP : 192.168.100.254/24
  • « VLAN_02_PUBLIC » : adresse IP : 192.168.200.254/24

Exemple de résultat obtenu :

Enfin, nous créons une règle de firewall sur notre nouvelle interface logique (« VLAN_01_PRIVE ») afin d’autoriser le trafic.

La configuration côté pfSense est terminée. Il reste à procéder à la configuration côté Switch.

Source : www.provya.net

Configuration du Switch

Un switch ne peut avoir sur un port donné qu’un seul VLAN configuré en « untagged » (access). Il peut y avoir, sur ce même port, plusieurs VLANs configurés en « tagged » (trunk).

Le VLAN 1 est créé par défaut et tous les ports du switch appartiennent à ce VLAN

La configuration des VLAN sur le switch dépend du constructeur. Cependant, les étapes à suivre seront toujours les mêmes :

  1. Déclaration des VLAN sur le switch – sur la plupart des switches, il faut déclarer les VLANs avant de pouvoir les configurer sur n’importe quel port (dans notre cas, nous déclarons 2 VLAN : VLAN_01_PRIVE avec l’ID 100 et VLAN_02_PUBLIC avec l’ID 200)
  2. Configuration du port du switch sur lequel est branché le pfSense en mode trunk (ou tagged) sur les VLAN 100 et 200
  3. Configurer les ports du switch sur lesquels seront branchés les périphériques PRIVE en mode access (ou untagged) – dans notre cas sur le VLAN 100
  4. Configurer les ports du switch sur lesquels seront branchés les périphériques PUBLIC en mode trunk (ou tagged) – dans notre cas sur le VLAN 200

Exemple sur un switch Netgear GSS108E-100EUS :

Exemple de configuration :

VLANPort 01Port 02Port 03Port 04Port 05Port 06Port 07Port 08
1TTTTTTUU
100UUUUUTTT
200TTTTTUTT
Port 01Port 02Port 03Port 04Port 05Port 06Port 07Port 08
pfSense (LAN Privé)SalonChambreBureauWi-FipfSense – Guest (LAN Public)

Firewall : fonctions

DHCP dynamique et DHCP statique + DHCP Forwarder

Dynamic Host Configuration Protocol (DHCP, protocole de configuration dynamique des hôtes) est un protocole réseau dont le rôle est d’assurer la configuration automatique des paramètres IP d’une station ou d’une machine, notamment en lui affectant automatiquement une adresse IP et un masque de sous-réseau. DHCP peut aussi configurer l’adresse de la passerelle par défaut, des serveurs de noms DNS et des serveurs de noms NBNS (connus sous le nom de serveurs WINS sur les réseaux de la société Microsoft).

Nous allons configurer ici pfSense en tant que serveur DHCP pour des adresses IPv4.

Services > DHCP Server

On commence par choisir l’interface sur laquelle on souhaite activer le serveur DHCP. Dans notre cas, ce sera « VLAN_01_PRIVE ».

Pour commencer, nous cochons évidemment la case « Enable DHCP server on VLAN_01_PRIVE interface ».

  • Deny unknown clients : cette option permet de filtrer les requêtes DHCP.

Par défaut (option non cochée), pfSense attribue une adresse IP à n’importe quel terminal connecté sur le réseau qui fait une demande d’adresse IP. C’est, à priori, le mode souhaité dans la plupart des cas. Cependant, il est possible, dans des environnements plus restrictifs, de n’autoriser la distribution d’adresses IP qu’aux terminaux connus (c’est-à-dire dont l’adresse MAC a été renseignée dans pfSense) ; dans ce cas, cette case doit être cochée. Il est à noter que cette option se définit par plage d’adresses.

  • Subnet : cette ligne rappelle l’adresse du réseau.
  • Subnet mask : cette ligne rappelle le masque de sous-réseau.
  • Available range : cette ligne donne la plage maximale sur laquelle des adresses IP peuvent être attribuées. Cette information est bien pratique pour les réseaux n’étant pas en /24.
  • Range : permets de définir la plage d’adresses IP qui sera utilisée.

Par défaut, pfSense propose la plage d’adresse allant de 100 à 199 (soit, par exemple, 192.168.100.100 à 192.168.100.199). Nous sommes libres de la modifier dans la limite de la taille maximale rappelée à la ligne précédente (available range).

Si nous souhaitons définir plusieurs plages d’adresses IP différentes (soit pour filtrer les terminaux connus des terminaux inconnus, soit pour d’autres raisons liées à notre architecture réseau), il est possible de définir plusieurs plages d’adresses IP (ligne Additional Pools).

Pour ajouter une seconde plage d’adresses IP, cliquer sur le « + » correspondant. Cela aura pour effet d’ouvrir une nouvelle fenêtre permettant de définir l’ensemble des paramètres propres à cette plage d’adresses IP.

Évidemment, cette option n’est utile que si nous disposons d’un serveur WINS sur notre réseau. Les serveurs WINS n’ont pas forcément besoin d’être sur le même subnet (dans ce cas, il faut veiller à bien configurer les règles de routage et de filtrage au niveau du firewall). Dans le cas où nous n’utilisons pas de serveur WINS (ce qui doit être le cas de la quasi-totalité des réseaux modernes), nous laissons ces champs vides.

  • DNS servers : ce champ peut être renseigné ou resté vide. Si l’on souhaite passer au client la même configuration DNS que celle configurée dans pfSense, alors il faut laisser ces champs vides. En revanche, si l’on souhaite passer au client d’autres serveurs DNS que ceux configurés dans pfSense, il faut les renseigner ici.
    • Nous saisirons pour :
      • VLAN_01_PRIVE : 192.168.100.254
      • VLAN_02_PUBLIC : 192.168.200.254

Pour les réseaux locaux avec des terminaux Windows et un serveur Active Directory, il est conseillé d’indiquer l’adresse du serveur Active Directory.

  • Gateway : si pfSense est la passerelle pour ce réseau, ce champ peut être laissé vide. Dans le cas contraire, nous indiquons ici l’adresse IP de la passerelle.
  • Domain name : permets d’indiquer aux clients le nom de domaine correspondant au réseau et donc qu’ils devront utiliser pour former leur FQDN. Si rien n’est indiqué, c’est le nom de domaine de pfSense qui sera passé aux clients. (voir plus haut).
  • Domain search list : cette information est utile dans le cas où l’on dispose de plusieurs domaines.

Lors d’une recherche sur un nom d’hôte sur le réseau, le client concaténera le nom d’hôte au nom de domaine. Chaque domaine doit être séparé par une virgule. Cette information est passée au client via l’option DHCP 19. Donc, dans le cas où il n’y a qu’un seul domaine local, ce champ doit être laissé vide (lorsqu’un client fera une recherche sur un nom d’hôte, la concaténation se fera avec le nom de domaine défini à la ligne précédente).

  • Default lease time et Maximum lease time : ces deux options permettent de contrôler la durée des baux DHCP.

Default lease time est utilisée quand un client ne demande pas de durée spécifique d’enregistrement pour son bail. Si le client demande une durée de bail qui est supérieure à Maximum lease time, la durée de bail donnée sera celle définie dans Maximum lease time. Ces valeurs sont définies en secondes. Si les champs sont laissés vides, les valeurs par défaut sont de 7.200 secondes (2h) pour la durée de bail par défaut et 86.400 secondes (1 jour) pour la durée de bail maximum.

  • Failover peer IP : si vous possédez deux serveurs pfSense configurés en failover, renseignez ici l’adresse IP physique (pas l’adresse virtuelle) du second serveur pfSense. Autrement, laissez ce champ vide.
  • Static ARP : cette option est l’exact opposé de « Deny unknow clients » : elle permet de lister les machines capables de communiquer avec pfSense sur le réseau. Ainsi, tous les terminaux n’étant pas référencés (c’est-à-dire dont l’adresse MAC est connue et référencée dans pfSense) ne pourront pas communiquer avec pfSense. Il faut faire très attention lorsque l’on manipule cette option ! De plus, lorsqu’elle est cochée, cette option reste active même si le service DHCP est arrêté.
  • Time format change : par défaut, les durées de baux DHCP sont affichées au format UTC. En cochant cette option, elles sont formatées au fuseau horaire local. C’est une option d’affichage purement esthétique. On coche, car on aime l’esthétique 🙂.
  • Dynamic DNS : cette option permet de définir un serveur DNS dynamique (à saisir dans le champ correspondant). Dans le cas où pfSense est configuré en mode « DNS forwarder », cette option ne devrait pas être cochée, et le DNS forwarder devrait être configuré en conséquence. Il est à noter que cette option ne fonctionne qu’à partir de la version 2.1 de pfSense.
  • MAC Address Control : cette option permet de filtrer les accès au serveur DHCP par adresses MAC.

Le premier champ permet de définir les adresses MAC autorisées. Le second champ, les adresses MAC interdites. Ces adresses MAC peuvent être saisies partiellement (par exemple, saisir 01:E5:FF autorisera ou interdira, suivant le champ dans lequel elle aura été saisie, toutes les adresses MAC commençant par cette séquence).

Les adresses MAC (ou adresses MAC partielles) doivent être séparées par une virgule, sans espace. Ces champs peuvent être laissés vides si l’on ne souhaite pas appliquer de contrôle sur les adresses MAC des terminaux.

Il est important de comprendre qu’à partir du moment où une adresse MAC (ou adresse MAC partielle) est saisie dans le champ des adresses autorisées, toutes les autres adresses MAC seront interdites d’accès ; et inversement, si l’on saisit une ou des adresses MAC dans le champ des adresses interdites, toutes les autres adresses MAC seront autorisées.

  • NTP servers : permets de définir un à deux serveurs NTP.
  • TFTP server : permet de saisir l’adresse IP ou le nom d’hôte d’un serveur TFTP. Cette option est principalement utilisée pour l’autoprovisioning pour la téléphonie sur IP. Elle correspond à l’option DHCP 66.
  • LDAP URI : permets d’envoyer l’URI d’un serveur LDAP aux clients en faisant la demande. Cela correspond à l’option DHCP 95. Le format saisi doit être celui d’un URI LDAP tel que ldap://ldap.example.com/dc=example,dc=com.
  • Enable network booting : pour activer cette fonctionnalité, il faut cocher la case correspondante (Enables network booting), saisir l’adresse IP du serveur ainsi que le nom du fichier d’image disque bootable. L’ensemble de ces champs doit être complété pour que cette option fonctionne correctement.
  • Additional BOOTP/DHCP Options : permet de pousser n’importe quelle option DHCP (dont nous détaillons le paramétrage au paragraphe suivant).

Une fois l’ensemble des configurations effectué, il ne reste plus qu’à cliquer sur Save !

Source : www.provya.net

UPnP

Rendez-vous sur Services > UPnP

Activez le service sur votre interface LAN. Ceci permettra à votre firewall dʼajuster automatiquement les règles de filtrage pour les logiciels qui nécessitent lʼattribution de ressources (ports TCP/UDP). Ceci peut-être utile pour les logiciels de Peer-to-peer ou  dʼautres type de logiciels qui intègrent des fonctionnalités UPnP. N’oubliez pas d’enregistrer la configuration.

Règles de sécurité

Les règles de sécurité sont propres à chacun et dépendent fortement de votre environnement.

Il est important de valider vos règles les unes après les autres avec des tests en conditions réelles de votre côté pour vous assurer du fonctionnement de vos nouvelles règles aussi de vous assurer qu’il n’y ait pas de régressions ou d’impacts sur vos autres règles.

L’ordre des règles a son importance. Elles seront exécutées de haut en bas visuellement parlant. Ainsi, si vous positionnez une règle en haut qui drope tout les paquets, les autres règles ne matcheront jamais. Les règles se définissent dans : Firewall > Rules > Interface de votre choix

Voici quelques une de mes règles personnelles :

  • VLAN_01_PRIVE
ProtocolSourcePortDestinationPortGatewayDescription
IPv4*VLAN_01_PRIVE net****On autorise tout du LAN vers n’importe où
IPv4+6******On rejette tout par défaut
  • VLAN_02_PUBLIC
ProtocolSourcePortDestinationPortGatewayDescription
IPv4
TCP/UDP
VLAN_02_PUBLIC net**53*DNS
IPv4
ICMP
 VLAN_02_PUBLIC net * * * * ICMP
IPv4
TCP/UDP
 VLAN_02_PUBLIC net ** 123* NTP
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 443* HTTPS
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 80* HTTP
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 143*IMAP
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 993* IMAP/S
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 110* POP3
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 995* POP3/S
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 465* SMTP/S
IPv4
TCP/UDP
 VLAN_02_PUBLIC net** 21* FTP

Point d’accès Wi-Fi

Dans les réseaux informatiques, un point d’accès sans fil (WAP pour Wireless Access Point en anglais) est un dispositif qui permet aux périphériques sans fil de se connecter à un réseau câblé ou au réseau Internet à l’aide d’une connexion radio. Le point d’accès en tant que dispositif autonome est habituellement relié à un routeur (par l’intermédiaire d’un réseau câblé), mais il peut aussi faire partie intégrante du routeur lui-même.

Les point d’accès sans fil, les plus répandus, sont de type Wi-Fi (box ou hot-spot Wi-Fi).

J’ai personnellement choisi un point d’accès Wi-Fi de la marque Ubiquiti.

Configuration SSIDs + VLAN

Le SSID, acronyme de Service Set Identifier, est le nom d’un réseau sans fil (Wi-Fi) selon la norme IEEE 802.11. Ce nom comporte au plus 32 caractères.

De nombreuses « box » vendues en France (en 2008) définissent automatiquement un SSID par défaut pour les connexions Wi-Fi. Il reste cependant possible de le changer manuellement. Les SSID et les clés associées par défaut sont des codes assez ésotériques, on les trouve dans le courrier de bienvenue de l’opérateur et/ou imprimés sur l’étiquette de la « box » collée en général à l’arrière ou sous le boitier. Tous les SSID sont acceptés par les boxes, mais ils ne fonctionnent pas tous ; un espace dans le SSID le rend inaccessible pour beaucoup de terminaux. Quand on définit un SSID, il faut se limiter aux 26 lettres (Majuscules et minuscules) et aux 10 chiffres.

  • « Mon réseau WiFi » est un mauvais SSID, présence d’espaces et d’un accent
  • « MonReseauWiFi » est un SSID acceptable

Une des premières mesures de protections d’un réseau peut consister à empêcher la diffusion du SSID grâce à une option disponible sur la quasi-totalité des routeurs Wi-Fi et des box. Mais une telle protection est assez illusoire et ne décourage que les plus néophytes des pirates informatiques. En réalité, à chaque connexion vers un point d’accès dont le SSID a été masqué, le client envoie en clair le SSID en question. Il suffit donc pour un pirate de surveiller le canal employé par le point d’accès dont le SSID a été masqué et il obtiendra cette information dès qu’il y aura de l’activité.

Voici les captures d’écran du point d’accès pour les 2 SSID :

Réseau Invité : portail captif

Le portail captif est une technique consistant à forcer l’utilisateur d’un réseau à afficher une page web spéciale (le plus souvent dans un but d’authentification) avant d’accéder à Internet normalement.

Au-delà de l’authentification, les portails captifs permettent d’offrir différentes classes de services et tarifications associées pour l’accès Internet. Par exemple, Wi-Fi gratuit, filaire payant, 1 heure gratuite…

Cette technique est généralement mise en œuvre pour les accès Wi-Fi mais peut aussi être utilisée pour l’accès à des réseaux filaires (ex. : hôtels, campus, etc.).

Concernant le portail captif pour mon réseau Wi-Fi « Guest », je me suis appuyé sur le superbe travail de Calvin Bui. J’ai repris son travail pour le traduire et le customiser selon mes besoins.

J’ai beaucoup apprécié son petit hack concernant l’authentification. C’est tout bête mes efficaces :

My portal utilises the pfSense User Accounts method but in a unique way – a user enters only the username, the password field is already filled and hidden. This means they only need to enter the special word which is being disguised as a username for those that don’t know better. A little hacky but works very well when other methods have no security, require me setting up accounts, build a RADIUS server or make a voucher. User Accounts also allow concurrent (multiple) logins so all users can simply use one account simultaneously.

Pour ceux qui n’auraient pas compris, le portail captif va utiliser la valeur « username » d’un utilisateur déclaré dans votre pfSense comme mot de passe au lieu d’utiliser la valeur « mot de passe » d’un utilisateur pour le mot de passe comme nous en avons tous l’habitude. Toujours pas compris ? Je vous invite à consulter le code du fichier « index.html » pour y voir plus clair 😉 (ligne 55 à 59).

Montage de la session PPPoE

Le WAN est directement connecté à l’ONT
On assigne le LAN et le WAN sur les cartes correspondantes : Interfaces -> Assign
Pour le WAN, laissez IPV4 et IPV6 en « none »
Pour le LAN, sélectionnez « Static IPV4 » puis définissez l’IP et le masque de l’interface dans « IPV4 address »
Dans mon cas : em1 = WAN, em2 = LAN, em0 = DMZ

On crée le VLAN 835 sur l’interface WAN : Interfaces -> Assign -> VLANs

Pour le PPPOE : Interfaces -> Assign -> PPPs
Link Type : PPPOE
Link Interface : Le VLAN 835 que l’on vient de créer
Username : Votre identifiant de connexion Orange
Password : Votre mdp de connexion Orange

Maintenant, on va assigner le PPPOE :
Dans Interfaces -> Assign:
On ajoute une interface et on sélectionne le port PPPOE que l’on vient de créer

Une fois l’interface sauvegardée on l’édite :
On coche Enable Interface puis on sélection PPPoE dans IPV4 configuration type
Vous pouvez aussi changer le nom de l’interface (PPPOE dans mon cas)
Vérifiez vos paramètres dans Username et Password puis sauvegardez

Normalement si tous les paramètres sont bons vous devriez récupérer une IP au bout de quelques secondes. (Vérifiable via le widget Interfaces sur l’écran d’accueil)

Internet est maintenant opérationnel, le NAT est activé par défaut.
Après avoir activé le DNS Forward dans Services -> DNS Forwarder vous devriez avoir internet sur le LAN.

Merci à kouakattak pour son tuto : lafibre.info

Romain D.

Passionné d'informatique perdu dans une trame Ethernet. Ce blog est mon bloc-notes public.

Ajouter un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Romain D.

Passionné d'informatique perdu dans une trame Ethernet. Ce blog est mon bloc-notes public.