in

Utilisation d’Iptables sous Linux

Ce guide tentera d’expliquer comment utiliser iptables sous Linux dans un langage facile à comprendre.

Aperçu

Iptables est un pare-feu basé sur des règles, qui traitera chaque règle dans l’ordre jusqu’à ce qu’il en trouve une qui corresponde.

Todo: inclure un exemple ici

Usage

L’utilitaire iptables est généralement pré-installé sur votre distribution Linux, mais n’exécute en fait aucune règle. Vous trouverez l’utilitaire ici sur la plupart des distributions:

/sbin/iptables

Bloquer une seule adresse IP

Vous pouvez bloquer une adresse IP en utilisant le paramètre -s, en remplaçant 10.10.10.10 par l’adresse que vous essayez de bloquer. Vous remarquerez dans cet exemple que nous avons utilisé le paramètre -I (ou –insert fonctionne également) au lieu de l’ajout, car nous voulons nous assurer que cette règle s’affiche en premier, avant toute règle d’autorisation.

/sbin/iptables -I INPUT -s 10.10.10.10 -j DROP

Autoriser tout le trafic à partir d’une adresse IP

Vous pouvez également autoriser tout le trafic à partir d’une adresse IP en utilisant la même commande que ci-dessus, mais en remplaçant DROP par ACCEPT. Vous devez vous assurer que cette règle apparaît en premier, avant toute règle DROP.

/sbin/iptables -A INPUT -s 10.10.10.10 -j ACCEPT

Bloquer un port de toutes les adresses

Vous pouvez empêcher entièrement l’accès à un port via le réseau en utilisant le commutateur –dport et en ajoutant le port du service que vous souhaitez bloquer. Dans cet exemple, nous allons bloquer le port mysql:

/sbin/iptables -A INPUT -p tcp --dport 3306 -j DROP

Autoriser un seul port à partir d’une seule adresse IP

Vous pouvez ajouter la commande -s avec la commande –dport pour limiter davantage la règle à un port spécifique:

/sbin/iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j ACCEPT

Affichage des règles actuelles

Vous pouvez afficher les règles actuelles à l’aide de la commande suivante:

/sbin/iptables -L

Cela devrait vous donner un résultat similaire à ce qui suit:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.1/24  anywhere            
ACCEPT     all  --  10.10.10.0/24       anywhere             
DROP       tcp  --  anywhere             anywhere            tcp dpt:ssh 
DROP       tcp  --  anywhere             anywhere            tcp dpt:mysql

La sortie réelle sera un peu plus longue, bien sûr.

Effacer les règles actuelles

Vous pouvez effacer toutes les règles actuelles à l’aide du paramètre flush. Ceci est très utile si vous devez mettre les règles dans le bon ordre ou lorsque vous effectuez un test.

/sbin/iptables --flush

Spécifique à la distribution

Alors que la plupart des distributions Linux incluent une forme d’iptables, certaines d’entre elles incluent également des wrappers qui facilitent un peu la gestion. Le plus souvent, ces «addons» prennent la forme de scripts d’initialisation qui s’occupent d’initialiser iptables au démarrage, bien que certaines distributions incluent également des applications wrapper à part entière qui tentent de simplifier le cas courant.

Gentoo

Le iptables Le script init sur Gentoo est capable de gérer de nombreux scénarios courants. Pour commencer, il vous permet de configurer iptables pour qu’il se charge au démarrage (généralement ce que vous voulez):

rc-update add iptables default

En utilisant le script init, il est possible de charger et d’effacer le pare-feu avec une commande facile à retenir:

/etc/init.d/iptables start
/etc/init.d/iptables stop

Le script init gère les détails de la persistance de la configuration actuelle de votre pare-feu au démarrage / à l’arrêt. Ainsi, votre pare-feu est toujours dans l’état où vous l’avez laissé. Si vous devez enregistrer manuellement une nouvelle règle, le script init peut également gérer cela:

/etc/init.d/iptables save

De plus, vous pouvez restaurer votre pare-feu à l’état enregistré précédent (dans le cas où vous expérimentiez des règles et que vous souhaitez maintenant restaurer la configuration de travail précédente):

/etc/init.d/iptables reload

Enfin, le script init peut mettre iptables en mode «panique», où tout le trafic entrant et sortant est bloqué. Je ne sais pas pourquoi ce mode est utile, mais tous les pare-feu Linux semblent l’avoir.

/etc/init.d/iptables panic

Avertissement: Ne lancez pas le mode panique si vous êtes connecté à votre serveur via SSH; tu volonté être déconnecté! Le seul moment où vous devriez mettre iptables en mode panique est lorsque vous êtes physiquement devant l’ordinateur.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Comment créer un site Web à partir de votre téléphone

Les jeux de fans les plus stupides de Sonic the Hedgehog