[pfSense] Tout comprendre aux alias
05/11/2019
Sous pfSense, et sous la plupart des firewall modernes, il est possible de définir des alias. Ces alias nous seront utiles dans l'implémentation de nos règles de filtrage, de NAT, de redirection de ports, etc.
C'est un outil pratique qui permet de gagner en lisibilité sur nos règles.
Sous pfSense, un alias permet de définir un groupe de ports réseaux, d'hôtes ou de sous-réseaux.
Ces alias peuvent ensuite être utilisés dans les règles de filtrage, les règles de redirection de ports, les règles de NAT, etc. Utiliser des alias est une bonne pratique pour disposer de règles claires, courtes, simples et lisibles sur notre firewall.
Il est à noter que certains firewall obligent en la création d'alias pour l'écriture des règles de filtrage (il est impossible de spécifier une adresse IP, il faut avoir préalablement créé un alias contenant cette adresse IP). pfSense n'impose pas ce mode de fonctionnement strict.
Les alias sont configurables depuis le menu Firewall > Aliases :
Il existe cinq catégories d'alias.
Ce type d'alias peut contenir des adresses IP seules et des noms d'hôtes (hostname). Ces alias s'ajoutent depuis l'onglet "IP".
Lorsque l'on renseigne un nom de domaine, pfSense va le résoudre à intervalle régulier. Par défaut, la fréquence de mise à jour est de 5 minutes. Il est possible de modifier cette fréquence depuis le menu System > Advanced, onglet Firewall & NAT. Il faut personnaliser la valeur du champ "Aliases Hostnames Resolve Interval" :
Ce type d'alias peut contenir des sous-réseaux en notation CIDR, des noms d'hôtes, des plages d'adresses IP ou des adresses IP seules.
Il est également possible de renseigner un intervalle d'adresses IP. Par exemple : 192.168.0.10-192.168.0.30. Il faut laisser le masque sur /32.
Cet intervalle sera traduit en autant de sous-réseaux nécessaires au format CIDR.
Par exemple, si l'on renseigne l'intervalle 10.3.0.100-10.3.0.200 :
Une fois sauvegardé, il sera traduit par pfSense en autant de sous-réseaux :
Ce type d'alias peut contenir une liste de ports réseaux ou une plage de ports réseaux pour TCP et UDP.
Le protocole (TCP, UDP) n'est pas renseigné dans l'alias. Il faudra le préciser (TCP, UDP ou les deux) dans les règles de filtrage ou de NAT qui feront appel à cet alias.
Cet alias est construit à partir du fichier fourni par l'URL indiquée. Attention, ce fichier n'est lu qu'une seule fois lors de la création de l'alias. Il n'est ensuite pas mis à jour automatiquement.
Le fichier doit être au format txt et contenir une information par ligne (une adresse IP par ligne, par exemple).
Chaque URL peut pointer vers un fichier disposant de 3 000 entrées maximum.
Cet alias est construit à partir du fichier fourni par l'URL indiquée. Cet alias est mis à jour automatiquement en retournant chercher le fichier fourni par l'URL indiquée. La fréquence de mise à jour se défini en nombre de jours.
Contrairement aux alias de type "URL", il n'y a pas de limite au nombre d'entrées pour chaque fichier (il peut en contenir plusieurs dizaines de milliers).
Techniquement, le package pfBlocker utilise ce type d'alias pour la gestion de ses listes d'adresses IP par pays, par exemple.
Sur la capture d'écran ci-dessus, l'alias est configuré pour être mis à jour tous les 3 jours.
Il est possible d'imbriquer un alias dans un autre alias à condition que les deux alias soient du même type.
Par exemple, si l'on créé un alias "web_server" contenant l'adresse de notre serveur web, un alias "smtp_server" contenant l'adresse de notre serveur SMTP, il est possible de créer un troisième alias contenant les deux alias précédents :
Sur la capture d'écran ci-dessus, l'alias "all_servers" contient les deux alias "web_server" et "smtp_server".
Des noms d'hôtes peuvent être utilisés dans des alias. Chaque nom d'hôte sera résolu périodiquement par pfSense pour vérifier son adresse IP correspondante. Si un nom d'hôte dispose de plusieurs adresses IP, alors toutes les adresses IP seront ajoutées à l'alias.
Attention, cette option n'est pas efficace si nous cherchons à autoriser ou interdire l'accès à un site web en particulier (comme par exemple facebook.com). Ces gros sites web disposent bien souvent de mécanismes de répartition de charge par round-robin DNS, ce qui ne permet pas de garantir que pfSense disposera de la totalité des adresses IP associées au nom de domaine concerné.
Cette solution peut donc fonctionner pour des petits sites web, mais pas pour les plus gros.
pfSense supporte pleinement IPv6. Il en est logiquement de même pour les alias.
Il est également possible de mixer la présence d'adresses IPv4 et IPv6 au sein d'un même alias.
Il n'existe pas de taille maximale théorique. Il faut simplement s'assurer de deux éléments :
1. Être sûrs que la taille des alias n'excède pas la moitié du nombre maximum d'entrées dans la table du firewall (qui est de 200 000, par défaut).
2. Disposer de suffisamment de mémoire-vive sur son firewall. Grosso-modo, en prenant de la marge, il faut compter 1K par entrée.
Les alias peuvent s'utiliser dans les règles de filtrage et de NAT. Ils peuvent être saisis à la place d'une adresse IP ou d'un nom d'hôte.
Par exemple, dans la création de votre règle de filtrage, choisir, pour source ou destination, "Single host or alias" et renseigner le nom de l'alias :
On peut voir sur la capture d'écran ci-dessus que pfSense propose une aide à la saisie par auto-complétion.
Une fois la règle de filtrage saisie, il est possible de visualiser le contenu de l'alias en positionnant le curseur de la souris dessus :
Voilà ! Vous connaissez tout ce qu'il faut savoir sur la gestion des alias sous pfSense.
Best practices / Recommandations pour la configuration de votre firewall
Tous nos articles classés par thème
Voir un article au hasard
Vous avez aimé cet article ? Vous cherchez un support professionnel ? Alors contactez-nous.
C'est un outil pratique qui permet de gagner en lisibilité sur nos règles.
Qu'est-ce qu'un alias ?
Sous pfSense, un alias permet de définir un groupe de ports réseaux, d'hôtes ou de sous-réseaux.
Ces alias peuvent ensuite être utilisés dans les règles de filtrage, les règles de redirection de ports, les règles de NAT, etc. Utiliser des alias est une bonne pratique pour disposer de règles claires, courtes, simples et lisibles sur notre firewall.
Il est à noter que certains firewall obligent en la création d'alias pour l'écriture des règles de filtrage (il est impossible de spécifier une adresse IP, il faut avoir préalablement créé un alias contenant cette adresse IP). pfSense n'impose pas ce mode de fonctionnement strict.
Les différents types d'alias
Les alias sont configurables depuis le menu Firewall > Aliases :
Il existe cinq catégories d'alias.
Host
Ce type d'alias peut contenir des adresses IP seules et des noms d'hôtes (hostname). Ces alias s'ajoutent depuis l'onglet "IP".
Lorsque l'on renseigne un nom de domaine, pfSense va le résoudre à intervalle régulier. Par défaut, la fréquence de mise à jour est de 5 minutes. Il est possible de modifier cette fréquence depuis le menu System > Advanced, onglet Firewall & NAT. Il faut personnaliser la valeur du champ "Aliases Hostnames Resolve Interval" :
Network
Ce type d'alias peut contenir des sous-réseaux en notation CIDR, des noms d'hôtes, des plages d'adresses IP ou des adresses IP seules.
Il est également possible de renseigner un intervalle d'adresses IP. Par exemple : 192.168.0.10-192.168.0.30. Il faut laisser le masque sur /32.
Cet intervalle sera traduit en autant de sous-réseaux nécessaires au format CIDR.
Par exemple, si l'on renseigne l'intervalle 10.3.0.100-10.3.0.200 :
Une fois sauvegardé, il sera traduit par pfSense en autant de sous-réseaux :
Port
Ce type d'alias peut contenir une liste de ports réseaux ou une plage de ports réseaux pour TCP et UDP.
Le protocole (TCP, UDP) n'est pas renseigné dans l'alias. Il faudra le préciser (TCP, UDP ou les deux) dans les règles de filtrage ou de NAT qui feront appel à cet alias.
URL
Cet alias est construit à partir du fichier fourni par l'URL indiquée. Attention, ce fichier n'est lu qu'une seule fois lors de la création de l'alias. Il n'est ensuite pas mis à jour automatiquement.
Le fichier doit être au format txt et contenir une information par ligne (une adresse IP par ligne, par exemple).
Chaque URL peut pointer vers un fichier disposant de 3 000 entrées maximum.
URL Table
Cet alias est construit à partir du fichier fourni par l'URL indiquée. Cet alias est mis à jour automatiquement en retournant chercher le fichier fourni par l'URL indiquée. La fréquence de mise à jour se défini en nombre de jours.
Contrairement aux alias de type "URL", il n'y a pas de limite au nombre d'entrées pour chaque fichier (il peut en contenir plusieurs dizaines de milliers).
Techniquement, le package pfBlocker utilise ce type d'alias pour la gestion de ses listes d'adresses IP par pays, par exemple.
Sur la capture d'écran ci-dessus, l'alias est configuré pour être mis à jour tous les 3 jours.
Fonctionnalités avancées sur les alias
Imbrication d'alias
Il est possible d'imbriquer un alias dans un autre alias à condition que les deux alias soient du même type.
Par exemple, si l'on créé un alias "web_server" contenant l'adresse de notre serveur web, un alias "smtp_server" contenant l'adresse de notre serveur SMTP, il est possible de créer un troisième alias contenant les deux alias précédents :
Sur la capture d'écran ci-dessus, l'alias "all_servers" contient les deux alias "web_server" et "smtp_server".
Utilisation des noms d'hôtes dans des alias
Des noms d'hôtes peuvent être utilisés dans des alias. Chaque nom d'hôte sera résolu périodiquement par pfSense pour vérifier son adresse IP correspondante. Si un nom d'hôte dispose de plusieurs adresses IP, alors toutes les adresses IP seront ajoutées à l'alias.
Attention, cette option n'est pas efficace si nous cherchons à autoriser ou interdire l'accès à un site web en particulier (comme par exemple facebook.com). Ces gros sites web disposent bien souvent de mécanismes de répartition de charge par round-robin DNS, ce qui ne permet pas de garantir que pfSense disposera de la totalité des adresses IP associées au nom de domaine concerné.
Cette solution peut donc fonctionner pour des petits sites web, mais pas pour les plus gros.
Alias et IPv6
pfSense supporte pleinement IPv6. Il en est logiquement de même pour les alias.
Il est également possible de mixer la présence d'adresses IPv4 et IPv6 au sein d'un même alias.
Taille maximale des alias
Il n'existe pas de taille maximale théorique. Il faut simplement s'assurer de deux éléments :
1. Être sûrs que la taille des alias n'excède pas la moitié du nombre maximum d'entrées dans la table du firewall (qui est de 200 000, par défaut).
2. Disposer de suffisamment de mémoire-vive sur son firewall. Grosso-modo, en prenant de la marge, il faut compter 1K par entrée.
Utilisation des alias
Les alias peuvent s'utiliser dans les règles de filtrage et de NAT. Ils peuvent être saisis à la place d'une adresse IP ou d'un nom d'hôte.
Par exemple, dans la création de votre règle de filtrage, choisir, pour source ou destination, "Single host or alias" et renseigner le nom de l'alias :
On peut voir sur la capture d'écran ci-dessus que pfSense propose une aide à la saisie par auto-complétion.
Une fois la règle de filtrage saisie, il est possible de visualiser le contenu de l'alias en positionnant le curseur de la souris dessus :
Voilà ! Vous connaissez tout ce qu'il faut savoir sur la gestion des alias sous pfSense.
Pour aller plus loin
Best practices / Recommandations pour la configuration de votre firewall
Tous nos articles classés par thème
Voir un article au hasard
Vous avez aimé cet article ? Vous cherchez un support professionnel ? Alors contactez-nous.
Retrouvez nos services et firewall pour pfSense & OPNsense
Aucun commentaire
Flux RSS des commentaires de cet article