La gestion de Parefeu Software Linux 13 Novembre, 2024, 20:40:36 Presque 1 an, en message privé sur le forum, on m'avait sollicité pour aborder le sujet de la configuration de pare-feu sur Linux.J'avais répondu que le pare-feu le pratiquant depuis pas mal de temps, j'en avais que les bases pour les besoins de la maison : NAS, accès depuis l'extérieur, transfert automatique des donnés vers home. La gestion de pare-feu étant très complexe on ne peut que se cultiver selon les besoin du moment. Mais par-contre les bases, il fallait au moins les connaitre (pas les maitriser) , mais les connaitre pour savoir de quoi on parle et comment configurer un pare-feu le cas échéant.Ayant un peu de temps, et étant en pleine configuration de pare-feu avec Neftables (j'ai abandonné FirewallD), je partage avec vous ma mise jour de la connaissance d'un pare-feu, avant de partager dans un autre poste ma configuration Neftables.1. Définition d'un parefeu software & Netfilter Un pare-feu logiciel Linux est un programme qui contrôle le trafic réseau entrant et sortant sur un système d'exploitation Linux, en se basant sur des règles de sécurité prédéfinies. Il s'intègre directement au noyau Linux et utilise le framework Netfilter pour filtrer les paquets.Netfilter est donc le framework de filtrage de paquets intégré au noyau Linux depuis la version 2.42. Architecture de base de Netfilter L'architecture de Netfilter comprend plusieurs composants clés :Hooks (points d'accroche)TablesChaînesRègles3. Hooks Netfilter Les hooks sont des points d'interception dans la pile réseau du noyau. Les cinq hooks principaux sont :NF_IP_PRE_ROUTING : Avant le routageNF_IP_LOCAL_IN : Pour les paquets entrants destinés au système localNF_IP_FORWARD : Pour les paquets routésNF_IP_LOCAL_OUT : Pour les paquets générés localementNF_IP_POST_ROUTING : Après le routage4. Tables Les tables regroupent les règles selon leur fonction. Les tables principales sont :filter : Pour le filtrage de paquets (pare-feu)nat : Pour la traduction d'adresses réseaumangle : Pour la modification des paquetsraw : Pour la configuration d'exemptions de suivi de connexion5. Chaînes Les chaînes sont des séquences de règles attachées aux hooks. Les chaînes standard sont :PREROUTING (hook PRE_ROUTING)INPUT (hook LOCAL_IN)FORWARD (hook FORWARD)OUTPUT (hook LOCAL_OUT)POSTROUTING (hook POST_ROUTING)6. Règles Les règles sont des instructions spécifiques pour le traitement des paquets. Chaque règle comprend :Des critères de correspondance (adresse IP, port, protocole, etc.)Une action à effectuer (voir la liste des actions ci-dessous)7. Actions (Verdicts) de NetfilterACCEPT : Accepte le paquetDROP : Rejette silencieusement le paquetQUEUE : Envoie le paquet vers l'espace utilisateurRETURN : Arrête le traitement dans la chaîne actuelle et retourne à la chaîne appelanteREJECT : Rejette le paquet et envoie une réponseLOG : Journalise les informations sur le paquetMARK : Marque le paquetDNAT : Modifie l'adresse de destination du paquetSNAT : Modifie l'adresse source du paquetMASQUERADE : Forme spéciale de SNAT pour les interfaces dynamiquesREDIRECT: Redirige le paquet vers un port local TEE: Copie le paquet vers une autre destination CONNMARK : Marque la connexion associée au paquet 8. Flux de traitement des paquets Le paquet arrive à un hook.Les chaînes associées à ce hook sont parcourues dans l'ordre.Les règles de chaque chaîne sont évaluées séquentiellement.La première règle correspondante détermine l'action à effectuer.Si aucune règle ne correspond, la politique par défaut de la chaîne est appliquée.9. Connection Tracking Netfilter inclut un système de suivi de connexion qui permet de maintenir l'état des connexions réseau, facilitant le filtrage basé sur l'état.10. Interaction avec l'espace utilisateur Netfilter fournit des interfaces pour permettre aux outils en espace utilisateur (comme iptables ou nftables) de configurer les règles de filtrage et de NAT.En Conclusion : Cette présentation offre une vue d'ensemble complète & détaillée de Netfilter, couvrant ses composants principaux, son fonctionnement hiérarchique et ses capacités au niveau du noyau Linux.C'est sur cette base que l'on utilise à partir du point : (4) : iptablesneftablesufwFirewallDetc ect .... La base est Netfilter dans le noyau LinuxSources : Wikipedia NetfilterSite NetfilterIT CONNECT Citer la sélection Dernière édition : 13 Novembre, 2024, 20:50:22 par Yoman