Utiliser Iptables sur Linux

Table des matières:

Utiliser Iptables sur Linux
Utiliser Iptables sur Linux

Vidéo: Utiliser Iptables sur Linux

Vidéo: Utiliser Iptables sur Linux
Vidéo: TRANSFORMER UN VIEUX PC EN SERVEUR ! - YouTube 2024, Avril
Anonim

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 traite 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 apparaît d’abord, 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:

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.

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 visant à 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 add iptables default

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

/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 panic

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

Conseillé: