L'installation d'un pare-feu sous pfSense est rapide, c'est ensuite que je perdais du temps.
Mais ça c'était avant !
Voilà une astuce pour reprendre la main sur l'interface web de gestion depuis n'importe quelle patte (interface) du firewall, et en bypassant toutes les règles (rules).
Mais pourquoi ?
Dans cet exemple nous utilisons un pare-feu pfSense pour déclarer un sous-réseau dans un réseau existant. Appelez cela une DMZ, réseau, sous-réseau peu importe. Comprenez juste que la patte WAN sera connecté au LAN de l'entreprise et que l'interface LAN abritera ce sous-réseau :
Oui, je n'avais pas Visio d'installé donc j'ai utilisé ASCIIFlow... ça se voit non ?
Vous venez d'installer un pfSense tout beau tout neuf, il a même chanté au boot et tous vos collègues d'open space se sont retournés. Le bip est heureusement assez court pour que l'on ne vous soupçonne pas, continuons.
Vous allez maintenant configurer la bête from scratch ou importer votre fichier XML maison comportant un socle de configuration. Mais comment atteindre l'interface web ? Sur l'écran vous avez un beau 192.168.1.1 (/24) qui apparaît. Si c'est le même réseau que celui que vous utilisez alors bravo ce tutoriel ne vous servira pas, sauf si l'IP est déjà attribuée !
Dans le cas contraire, voilà la problématique :
- interface WAN : même si vous la mettez en DHCP l'interface web n'est pas accessible puis qu’aucune règle ne l'autorise, aucune règle n'existe d'ailleurs pour le WAN.
- interface LAN : impossible de la configurer en DHCP depuis le menu (VGA / serial), cette option n'existe pas. Dommage non ?
En effet l'ip par défaut 192.168.1.1 implique l'utilisation d'un ordinateur dans le même réseau, avec une IP fixe définie à la mano (192.168.1.2 par exemple). Sans parler du fait qu'il faut trouver un câble croisé pour se brancher en direct, ou un switch volant (oui certains volent) car vous n'allez pas vous brancher sur le LAN de la boite.
Et c'est seulement à ce moment là l'accès à l'interface web est possible. Un peu long, trop long.
Désactiver packet filter
Sur pfSense ce n'est pas iptables mais Packet Filter qui est en charge de la circulation des paquets, ou PF pour les intimes. C'est lui qui nous empêche d'accéder à l'interface web, car tout ce qui n'est pas explicitement autorisé est interdit.
Désactivons PF :
- Connectez-vous sur le port VGA (ou série) pour avoir le menu
- Faire le choix "8) Shell"
- Saisir :
pfctl -d
(d=disable, le tiret en qwerty est sur la touche")" en azerty) - Faire ENTREE
- Le message suivant apparaît : "pfctl: pf not enabled"
- Entrez l'une des IP dans votre navigateur web pour accéder à l'interface elles sont affichées en haut de l'écran :
Une fois ceci fait vous pouvez enfin ajouter des règles permettant le management, voici les miennes :
- Firewall > Rules
- Cliquer sur WAN, puis sur l'icône d'ajout d'une règle "+"
- interface : WAN
- protocol : TCP
- source : l'IP ou le réseau de management (le réseau LAN dans notre cas)
- destination : WAN address
- destination port range : 22, 80, 443
- description : gestion admin
Vous devrez ajouter une règle pour chaque port, ou définir un alias de port pour n'avoir qu'une seule règle. Une fois que tout est OK faites "Apply changes", ce qui réactivera PF au passage. Si vos règles sont bonnes alors l'accès à l'interface web fonctionnera.
Attention : PF sera réactivé automatiquement si vous validez un formulaire dans l'interface web, à n'importe quel endroit. Enfin, pour réactiver PF à la main : pfctl -e (pour enable), sinon faites un reboot.
J'utilise beaucoup cette astuce quand je fais tourner un pfSense virtualisé sur mon pc, car n'ayant qu'une seule carte ethernet c'est la seule solution que j'ai trouvé. A part bien sûr configurer les deux cartes réseaux WAN et LAN comme étant membre du même réseau, mais ça ne règle pas le problème car il faudra définir une IP fixe sur la carte LAN de toutes façons.
Je ne sais pas si j'ai été clair, c'est un peu long pour une seule ligne de commande, mais autant que vous sachiez à quel point elle peut être utile. J'aurai aimé la découvrir avant, moi aussi !
En complément :
Si sshguard vous a bloqué, voici comment vider les restrictions :
pfctl -T flush -t sshguard
Et si vous êtes encore dans la panade consultez cette page chez provya.
Auteur : Mr Xhark
Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter
6 commentaires
Merciiiiii
@PasTrique: Doudouuuuuuu
Hello,
Merci pour ce tuto qui m'a mit sur la voie avant d'en trouve une autre.
Pour ma part avec virtualbox j'ai configuré une connexion de type Host-Only (Bien expliqué ici http://www.it-connect.fr/gestion-des-reseaux-host-only-sous-virtualbox/) que j'ai rajoutée à ma VM pfSense. Puis j'ai configuré pfSense pour qu'il utilise cette interface pour le LAN avec une IP static qui correspond bien à la plage de mon adapter Host-Only.
Vu que cette interface est connectée à l'ordinateur hôte (sur lequel est installé vbox) il suffit d'aller via sont navigateur web à l'adresse IP que l'on à définit pour le LAN pour accéder au webConfigurator de pfSense.
Entre autre, Virtrualbox propose sur la configuration des connexion Host-Only un serveur DHCP que j'ai désactivé, préférant celui de pfSense.
En espérant que ça sera utile 😉
A+
sert à rien
dans le menu pfsense tu peux configurer l'adresse IP par interface, le(s) vlan(s) la plage ip dhcp le dhcp valid ou non. Tu te compliques la vie pour rien.
Quand un firewall est rempli de règles, c'est la solution la plus rapide pour ne pas impacter la configuration 😉
Bonjour.
J'ai suivi toute vos recommandations et que je sois derriere un switch ou en direct j'ai la meme finalité :
Acces web ok
Acces interfaceweb ko
Avez vous une idée ?
En vous remerciant.