Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| iptables [Le 11/09/2022, 11:30] – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | iptables [Le 16/02/2025, 06:46] (Version actuelle) – [Configuration du pare-feu] 78.121.49.7 | ||
|---|---|---|---|
| Ligne 5: | Ligne 5: | ||
| =====Iptables===== | =====Iptables===== | ||
| + | FIXME: Depuis une Ubuntu 23.10, le package [[apt> | ||
| + | |||
| + | ---- | ||
| Iptables est une interface en ligne de commande permettant de configurer Netfilter. En plus de Iptables, depuis la version 8.04, Ubuntu est installé avec la surcouche [[: | Iptables est une interface en ligne de commande permettant de configurer Netfilter. En plus de Iptables, depuis la version 8.04, Ubuntu est installé avec la surcouche [[: | ||
| Ligne 54: | Ligne 57: | ||
| Pour permettre à une connexion déjà ouverte de recevoir du trafic : | Pour permettre à une connexion déjà ouverte de recevoir du trafic : | ||
| < | < | ||
| - | # iptables -A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT | + | sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT |
| </ | </ | ||
| Cette commande ajoute une règle ('' | Cette commande ajoute une règle ('' | ||
| Ligne 68: | Ligne 71: | ||
| Pour permettre le trafic entrant sur le port 22 (traditionnellement utilisé par SSH, vous devrez indiquer à iptables tout le trafic TCP sur le port 22 de votre adaptateur réseau. | Pour permettre le trafic entrant sur le port 22 (traditionnellement utilisé par SSH, vous devrez indiquer à iptables tout le trafic TCP sur le port 22 de votre adaptateur réseau. | ||
| < | < | ||
| - | # iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT | + | sudo iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT |
| </ | </ | ||
| Cette commande ajoute une règle ('' | Cette commande ajoute une règle ('' | ||
| Ligne 74: | Ligne 77: | ||
| Maintenant vous pouvez vérifier vos règles iptables : | Maintenant vous pouvez vérifier vos règles iptables : | ||
| < | < | ||
| - | # iptables -L | + | sudo iptables -L |
| Chain INPUT (policy ACCEPT) | Chain INPUT (policy ACCEPT) | ||
| target | target | ||
| Ligne 83: | Ligne 86: | ||
| Maintenant, acceptons tout le trafic web ('' | Maintenant, acceptons tout le trafic web ('' | ||
| < | < | ||
| - | # iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT | + | sudo iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT |
| </ | </ | ||
| En regardant nos règles, nous avons : | En regardant nos règles, nous avons : | ||
| < | < | ||
| - | # iptables -L | + | sudo iptables -L |
| Chain INPUT (policy ACCEPT) | Chain INPUT (policy ACCEPT) | ||
| target | target | ||
| Ligne 102: | Ligne 105: | ||
| Maintenant que nous avons fini avec les autorisations, | Maintenant que nous avons fini avec les autorisations, | ||
| Nous allons en fait modifier la « politique par défaut » (// | Nous allons en fait modifier la « politique par défaut » (// | ||
| + | <note important> | ||
| < | < | ||
| - | # iptables -P INPUT DROP #warning : a ne pas utiliser sur un serveur distant ! | + | sudo iptables -P INPUT DROP #warning : a ne pas utiliser sur un serveur distant ! |
| - | # iptables -L | + | sudo iptables -L |
| Chain INPUT (policy DROP) | Chain INPUT (policy DROP) | ||
| target | target | ||
| Ligne 112: | Ligne 115: | ||
| ACCEPT | ACCEPT | ||
| </ | </ | ||
| + | |||
| + | == Autre méthode, par exemple pour les server == | ||
| **Un autre moyen de procéder** est l' | **Un autre moyen de procéder** est l' | ||
| Ligne 121: | Ligne 126: | ||
| < | < | ||
| - | # iptables -I INPUT 2 -i lo -j ACCEPT | + | sudo iptables -I INPUT 2 -i lo -j ACCEPT |
| </ | </ | ||
| Pour lister les règles plus en détail. | Pour lister les règles plus en détail. | ||
| < | < | ||
| - | # iptables -L -v -n | + | sudo iptables -L -v -n |
| </ | </ | ||
| Ligne 134: | Ligne 139: | ||
| < | < | ||
| # On autorise le PC a faire des pings sur des IP externes et à répondre aux requêtes " | # On autorise le PC a faire des pings sur des IP externes et à répondre aux requêtes " | ||
| - | iptables -A OUTPUT -p icmp -m conntrack --ctstate NEW, | + | sudo iptables -A OUTPUT -p icmp -m conntrack --ctstate NEW, |
| # Si vous utilisez une ancienne version de iptables la commande ci-dessus peut ne pas fonctionner, | # Si vous utilisez une ancienne version de iptables la commande ci-dessus peut ne pas fonctionner, | ||
| - | iptables -A OUTPUT -p icmp -m conntrack --ctstate NEW, | + | sudo iptables -A OUTPUT -p icmp -m conntrack --ctstate NEW, |
| # On autorise les pings | # On autorise les pings | ||
| - | iptables -A INPUT -p icmp -j ACCEPT | + | sudo iptables -A INPUT -p icmp -j ACCEPT |
| </ | </ | ||
| Ligne 149: | Ligne 154: | ||
| Tout d' | Tout d' | ||
| < | < | ||
| - | iptables -L --line-numbers | + | sudo iptables -L --line-numbers |
| </ | </ | ||
| Ce qui personnellement me retourne : | Ce qui personnellement me retourne : | ||
| Ligne 174: | Ligne 179: | ||
| < | < | ||
| - | iptables -D OUTPUT 2 | + | sudo iptables -D OUTPUT 2 |
| </ | </ | ||
| Ligne 194: | Ligne 199: | ||
| iptables-persistent propose de sauvegarder les règles dans le dossier **/ | iptables-persistent propose de sauvegarder les règles dans le dossier **/ | ||
| - | | + | |
| Il prend les arguments : **save** pour sauvegarder les règles, **flush** pour vider toutes les règles et **reload** pour les recharger depuis les fichiers précités. | Il prend les arguments : **save** pour sauvegarder les règles, **flush** pour vider toutes les règles et **reload** pour les recharger depuis les fichiers précités. | ||
| Ligne 203: | Ligne 208: | ||
| </ | </ | ||
| - | Commencez par éditer un fichier en root, que vous enregistrerez sous **/ | + | Commencez par éditer un fichier en root, que vous enregistrerez sous **/ |
| La première ligne de ce fichier doit être : | La première ligne de ce fichier doit être : | ||
| Ligne 211: | Ligne 216: | ||
| Cette ligne indique que le fichier doit être interprété par l' | Cette ligne indique que le fichier doit être interprété par l' | ||
| - | Ajoutez ensuite à votre script ceci : | + | Ajoutez ensuite à votre script ceci : |
| iptables-restore < / | iptables-restore < / | ||
| Ligne 356: | Ligne 361: | ||
| * [[http:// | * [[http:// | ||
| * [[https:// | * [[https:// | ||
| - | * [[https:// | + | * [[http:// |
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| Ligne 362: | Ligne 367: | ||
| * Basé sur [[https:// | * Basé sur [[https:// | ||
| - | * Merci à Rusty Russell et son How-To, il est la base de cette page. | + | * Merci à Rusty Russell et son How-To, il est la base de cette page. |
| * Et merci surtout pour son travail au sein de l' | * Et merci surtout pour son travail au sein de l' | ||
| // | // | ||
| - | |||
