Aller au contenu
  1. Articles/

Améliorations du réseau domestique et de la configuration pfSense

Ixonae
Auteur
Ixonae
Sommaire

Avertissement : Cet article a été traduit de l’anglais par un LLM. La précision n’est pas garantie. Vous pouvez lire l’article original en anglais.

Il y a quelques mois, j’ai publié un article expliquant comment configurer pfSense sur votre réseau domestique pour améliorer sa confidentialité et sa sécurité. Au fil du temps, j’ai trouvé des moyens d’améliorer cette configuration pour rendre mon réseau plus fiable et réduire la charge de configuration lors de l’ajout de nouvelles machines. C’est ce que je vais présenter dans cet article.

Pare-feu plus simple et basculement entre réseau VPN/non-VPN
#

Dans ma configuration initiale, j’attribuais les clients au sous-réseau 192.168.1.0/24, je routais tout le trafic Internet à travers ma connexion VPN par défaut, et j’ajoutais des règles de pare-feu pour chaque machine que je voulais utiliser sans le VPN.

Cette configuration avait plusieurs problèmes. Premièrement, configurer une nouvelle machine pour ne pas utiliser le VPN nécessitait des modifications de configuration à au moins trois endroits. Ensuite, il n’y avait pas de moyen simple de désactiver temporairement le VPN pour une machine.

Dans ma nouvelle configuration, j’utilise le sous-réseau 192.168.0.0/22 et j’attribue les IP comme suit :

  • 192.168.0.2 -> 192.168.0.254 sont attribuées par DHCP et utilisent le VPN + pfBlockerNG
  • 192.168.1.2 -> 192.168.1.254 sont attribuées manuellement et utilisent le VPN + pfBlockerNG
  • 192.168.2.2 -> 192.168.2.254 sont attribuées manuellement et n’utilisent pas le VPN mais utilisent pfBlockerNG
  • 192.168.3.2 -> 192.168.3.254 sont attribuées manuellement et n’utilisent ni le VPN ni pfBlockerNG (mais utilisent toujours le DNS local)

Lorsque j’ajoute une nouvelle machine à mon réseau, je fais en sorte que le dernier octet de son adresse IP soit unique pour que le basculement entre sous-réseaux soit plus pratique (moins de risque de basculer vers une IP déjà utilisée). Par exemple, si j’ai trois machines, je leur attribuerai les IP 192.168.1.2, 192.168.3.3 et 192.168.1.4. Si à un moment donné je veux utiliser la première machine sans VPN, je peux simplement changer sa configuration WiFi pour utiliser l’IP 192.168.2.2 dans les paramètres réseau, et je sais que cette IP ne sera pas utilisée par une autre machine.

Maintenant, configurons tout cela. La première étape est d’aller dans l’interface LAN et de modifier sa configuration IP statique.

Interfaces -> LAN -> Configuration IPv4

Ensuite, nous nous assurons que notre serveur DHCP est correctement configuré dans Services/DHCP Server/LAN

Services -> DHCP Server -> LAN -> Options générales

Ensuite les règles de NAT sortant et de pare-feu LAN

Firewall -> NAT -> Outbound
Firewall -> Rules -> LAN

Enfin, nous voulons désactiver pfBlockerNG pour 192.168.3/24. Allons dans Firewall/pfBlockerNG/DNSBL/Python Group Policy et inscrivons chaque adresse dans les Bypass IPs. Malheureusement, il n’y a apparemment pas moyen de donner une plage, mais nous pouvons obtenir toutes les adresses qu’elle contient avec le script bash suivant (que nous exécutons sur notre machine avant de coller le résultat dans l’interface).

for value in {0..254}
do
echo "192.168.3.$value"
done

Maintenant que tout est configuré, nous n’avons plus à faire de modifications compliquées chaque fois que nous ajoutons une machine à notre réseau. Nous pouvons simplement aller dans les DHCP Static Mappings de l’interface LAN et attribuer une IP dans la plage appropriée à notre nouvelle machine.

Dans mon cas, comme mon routeur WiFi peut utiliser à la fois un réseau 2,4 GHz et un réseau 5 GHz en même temps, j’ai mon ordinateur qui se connecte automatiquement au premier en utilisant le DHCP (avec une IP attribuée pour utiliser le VPN) et le second a la connexion automatique désactivée avec l’adresse IP que je veux configurée manuellement sur mon ordinateur.

Meilleure fiabilité pour les utilisateurs non intéressés par la vie privée
#

Si vous avez des personnes chez vous qui ne sont pas intéressées par la vie privée, elles se plaindront probablement (bruyamment) si elles rencontrent des problèmes. Cela pourrait être une erreur de connexion VPN, une IP sur liste noire, ou un faux positif du bloqueur de publicités.

Ce que je fais dans ce cas est d’ajouter un mappage DHCP pour leurs machines dans le réseau 192.168.3.0/24 afin qu’elles n’utilisent ni le VPN ni le bloqueur de publicités. Je configurerai également un deuxième et un troisième serveur DNS dans la configuration DHCP (ici ceux de Cloudflare).

Services -> DHCP Server -> LAN -> Modifier le mappage statique

La raison du mappage VPN est que dans l’article précédent, nous avons configuré le résolveur pour qu’il utilise la connexion VPN pour faire les requêtes DNS. Cela signifie que si le VPN est en panne, le DNS le sera aussi. L’ajout de serveurs DNS supplémentaires permet de s’assurer que les machines connectées au réseau ne seront pas affectées par le non-fonctionnement du DNS de pfSense.

VPN de secours en cas de panne
#

Avec la configuration précédente, nous avons amélioré la fiabilité du réseau pour les machines n’utilisant pas le VPN, mais qu’en est-il des autres ? Pour y remédier, nous allons configurer pfSense pour avoir une deuxième connexion VPN vers un autre serveur VPN, et router le trafic concerné à travers celle-ci si la première connexion VPN échoue.

D’abord, nous allons dans VPN/OpenVPN/Clients, créons un nouveau client et vérifions qu’il fonctionne correctement dans Status/OpenVPN.

Ensuite, nous allons dans Interfaces/Interface Assignments et attribuons une nouvelle interface au client VPN que nous venons de créer.

Interfaces/Interface Assignments

Après cela, nous allons dans System/Routing/Gateways et nous assurons d’avoir une passerelle avec la configuration suivante, et en créons une nouvelle si elle n’existe pas.

System -> Routing -> Gateway (Édition)

Ensuite, dans System/Routing/Gateway Groups, nous créons un nouveau groupe de passerelles et attribuons un tier à chaque connexion VPN. Dans mon cas, je veux toujours utiliser VPN1 sauf quand il ne fonctionne pas correctement, auquel cas je veux basculer vers VPN2. Mettre le même tier fonctionne aussi, mais cela signifie que les deux VPN seront utilisés en parallèle.

Édition du groupe de passerelles

Enfin, nous devons aller dans Firewall/Rules/LAN et Firewall/NAT/Outbound et modifier les règles utilisant VPN1 pour qu’elles utilisent VPNs.

À ce stade, tout le réseau fonctionne, mais comme nous utilisons aussi un résolveur DNS local, nous voulons aussi aller dans Services/DNS Resolver et changer les Outgoing Network Interfaces pour avoir à la fois VPN1 et VPN2 sélectionnés (malheureusement, il n’est actuellement pas possible d’utiliser notre groupe de passerelles VPNs pour le moment).

Conclusion
#

Si vous avez suivi toutes les étapes de cet article, votre réseau domestique est maintenant plus fiable, et vous ne devriez plus subir d’inconvénients lorsque la connexion VPN tombe, ou lorsque vous voulez définir quelle machine doit ou ne doit pas utiliser la connexion VPN.

Si vous avez trouvé cet article utile, vous apprécierez peut-être aussi mon récent article Comment protéger vos services auto-hébergés avec WireGuard où j’explique comment configurer une machine pfSense pour router le trafic vers une plage d’IP spécifique à travers une connexion VPN WireGuard.


Crédits
#