Page d'accueil » comment » Utiliser Iptables sur Linux

    Utiliser Iptables sur Linux

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

    Contenu

    [cacher]

    • 1. Vue d'ensemble
    • 2 utilisation
      • 2.1 Blocage d'une adresse IP unique
      • 2.2 Autoriser tout le trafic à partir d'une adresse IP
      • 2.3 Bloquer un port de toutes les adresses
      • 2.4 Autoriser un seul port à partir d'une seule IP
      • 2.5 Visualiser les règles actuelles
      • 2.6 Effacement des règles actuelles
    • 3 Spécifique à la distribution
      • 3.1 Gentoo

    Vue d'ensemble

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

    Todo: inclure exemple ici

    Usage

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

    / sbin / iptables

    Blocage d'une adresse IP unique

    Vous pouvez bloquer une adresse IP en utilisant le paramètre -s, en remplaçant 10.10.10.10 par l'adresse que vous tentez 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 provenant 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 bloquer entièrement l'accès à un port sur 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 IP

    Vous pouvez ajouter la commande -s à 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

    Voir les 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 à celui-ci:

    Chaîne INPUT (politique ACCEPT) cible de la source de protection opt ACCEPTER tous - 192.168.1.1/24 n'importe où ACCEPTER tous - 10.10.10.0/24 n'importe où DROP tcp - n'importe où n'importe où dcp: ssh DROP tcp - n'importe où n'importe où tcp dpt: mysql

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

    Effacement des règles actuelles

    Vous pouvez effacer toutes les règles actuelles en utilisant le paramètre flush. Ceci est très utile si vous devez mettre les règles dans le bon ordre ou lorsque vous testez.

    / sbin / iptables --flush

    Distribution spécifique

    Bien que la plupart des distributions Linux incluent une forme de 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 prennent en charge l'initialisation d'iptables au démarrage, bien que certaines distributions incluent également des applications d'encapsulation complètes qui tentent de simplifier les cas courants..

    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 ajoute iptables par défaut

    En utilisant le script init, il est possible de charger et de supprimer le pare-feu avec une commande facile à mémoriser:

    /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 le gérer:

    /etc/init.d/iptables save

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

    /etc/init.d/iptables reload

    Enfin, le script init peut mettre iptables dans un mode «panique», dans lequel 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 panique

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