Packet filter fait partie intégrante d'OpenBSD depuis la version 3.0 , c'est un firewall à gestion d'état gérant du niveau 1 à 4 (plus avec certains tips, notamment la reconnaissance des systèmes d'exploitation).
PF est compatible IPv4 et IPv6, voici une petite liste de ses fonctionnalités :
Lors de l'installation d'OpenBSD, PF est activé par défaut : si vous souhaitez le désactiver par défaut, il faut éditer le fichier /etc/rc.conf.local
/etc/rc.conf.local
pf=NO
L'activation et la desactivation s'effectuent a l'aide de la commande pfctl.
Activer PF
pfctl -e
Désactiver PF
pfctl -d
Activer PF avec un fichier de configuration particulier
pfctl -ef /etc/pf.conf.test
Tester la validité de la configuration avant l'activation
pfctl -nf /etc/pf.conf
Recharger la configuration, lorsque PF est déjà actif
pfctl -f /etc/pf.conf
Voir les règles chargées par PF
pfctl -s rules
Voir les connexions en cours
pfctl -s states
Vider la table des états
(ATTENTION : déconnexion immédiate si vous êtes connecté en SSH)
pfctl -F states
le fichier de configuration par défaut se trouve dans /etc/pf.conf. L'ordre des lignes dans ce fichier est important :
Le principe de base est : La dernière règle trouvée l'emporte sur les autres
On trouvera dans l'ordre :
Si cet ordre n'est pas respecté, pf refusera de s'executer.
Dans les principales :
Il s'agit du comportement à adopter lorsqu'un paquet est blocké par PF : deux possibilités :
N'applique aucune règle de filtrage sur l'interface définie : souvent nécessaire pour l'interface lo .
Permet de définir l'interface par défaut de log : PF créé une interface virtuelle pour logger les paquets . Cela permet d'utiliser différents outils, tels que tcpdump pour l'analyse des paquets rejetés par PF.
TODO
TODO
TODO