Outils pour utilisateurs

Outils du site


firewall

Firewall

Netfilter/Iptables

Description : On prends celle de [https://fr.wikipedia.org/wiki/Netfilter[Wikipedia]] Netfilter est un framework implémentant un pare-feu au sein du noyau Linux à partir de la version 2.4 de ce dernier. Il prévoit des accroches (hooks) dans le noyau pour l'interception et la manipulation des paquets réseau lors des appels des routines de réception ou d'émission des paquets des interfaces réseau. La version 1.4.2 a reçu un Certificat de Sécurité de Premier Niveau (CSPN) par l'Agence nationale de la sécurité des systèmes d'information1.

Puis pour Iptables toujours [https://fr.wikipedia.org/wiki/Iptables[Wikipedia]] : iptables est un logiciel libre de l'espace utilisateur Linux grâce auquel l'administrateur système peut configurer les chaînes et règles dans le pare-feu en espace noyau (et qui est composé par des modules Netfilter). Différents programmes sont utilisés selon le protocole employé : iptables est utilisé pour le protocole IPv4, Ip6tables pour IPv6, Arptables pour ARP (Address Resolution Protocol) ou encore Ebtables, spécifique aux trames Ethernet. Ce type de modifications doit être réservé à un administrateur du système. Par conséquent, son utilisation nécessite l'utilisation du compte root. L'utilisation du programme est refusée aux autres utilisateurs. Sur la plupart des distributions Linux, iptables est lancé par la commande /usr/sbin/iptables et documenté par sa page de manuel iptables2 et ip6tables3, laquelle peut être visualisée via la commande « man iptables ». iptables est également fréquemment utilisé pour faire référence aux composants de bas niveau (niveau kernel). x_tables est le nom du module noyau, plus générique, qui contient le code partagé pour les quatre protocoles. C'est aussi le module qui fournit l'API des extensions. Par conséquent, Xtables désigne usuellement le pare-feu complet (IPv4, IPv6, arp, eb).

Gérer ses règles iptables

Pour gérer les règles Ipatbles vous pouvez utiliser les commandes suivantes:

iptables-save > /etc/iptables.rules

et

iptables-restore < /etc/iptables.rules

On peu utiliser un script dans le dossier init.d mais c'est moins propre, selon moi car la commande iptables effectue trop de lectures/écritures dans la tables des règles de Netfilter, deplus si le script à une erreur on se retrouve avec un firewall avec la moitier des règles.

Le principe est simple:

  • On tape ces commandes Iptables à la suite…
  • On lance un iptables-save > /etc/iptables.rules qui enregistre la configuration en cours dans le fichier iptables.rules
  • On place dans le fichier de configuration des interfaces réseaux /etc/networking/interfaces la commande iptables-restore < /etc/iptables.rules pour lors d'un reboot charger la configuration sauvegarder automatiquement.

Voila se que cela donne par exemple:

iface eth0 inet static

      pre-up iptables-restore < /etc/iptables
      address x.x.x.x
      netmask x.x.x.x
      gateway x.x.x.x

auto eth0

Le fichier ipatbles.rules ressembles à cela :

''*filter
-P INPUT DROP
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p ipv6-icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp --dport ssh -j ACCEPT
-A INPUT -p tcp --dports smtp -j ACCEPT
[…]
 COMMIT''
 

Le fichier est commentable avec # mais pas scriptable, il demande moins d'opération à Iptables, donc plus rapide qu'un script dans le dossier init.d, en cas d'erreur dans les commandes, le pare-feu ne sera pas configurer. On peu utiliser un script avec cette commande:

/etc/iptables.sh | ip6tables-restore
firewall.txt · Dernière modification : 2014/05/13 11:26 de badmaniak

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki