Dans le fichier man iptables, il y a une option -S
S, --list-rules [chaîne] Imprime toutes les règles de la chaîne sélectionnée. Si aucune chaîne n'est sélectionnée, toutes les chaînes sont imprimées comme iptables-save. Comme toutes les autres commandes iptables, elle s'applique à la table spécifiée (le filtre est la valeur par défaut).
En utilisant iptables -S | grep <CHAINNAMEHERE>
. Pour des exemples:
root @ root: ~ # iptables -S | grep TRAFFICLOG
-N TRAFFICLOG
-A AVANT -i eth0 -j TRAFFICLOG
vous pouvez alors voir quelles règles bloquent la suppression de la chaîne de la table. Parcourez chaque règle (sauf la iptables -N <CHAINNAMEHERE>
et supprimez la règle en utilisant l' -D
option
-D, --delete chain rulenum Supprime une ou plusieurs règles de la chaîne sélectionnée. Il existe deux versions de cette commande: la règle peut être spécifiée sous la forme d'un nombre dans la chaîne (commençant à 1 pour la première règle) ou une règle à faire correspondre.
Par exemple iptables -D FORWARD -i eth0 -j TRAFFICLOG
. Une fois que vous avez supprimé chaque règle pour votre chaîne affleurant la chaîne avec l' -F
option iptables -F <CHAINNAMEHERE>
.
-F, --flush [chaîne] Vide la chaîne sélectionnée (toutes les chaînes du tableau si aucune n'est donnée). Cela revient à supprimer toutes les règles une par une.
Supprimez ensuite votre chaîne avec l' -X
option,iptables -X <CHAINNAMEHERE>
-X, --delete-chain [chaîne] Supprime la chaîne facultative définie par l'utilisateur spécifiée. Il ne doit y avoir aucune référence à la chaîne. Si tel est le cas, vous devez supprimer ou remplacer les règles de référence avant de pouvoir supprimer la chaîne. La chaîne doit être vide, c'est-à-dire ne contenir aucune règle. Si aucun argument n'est donné, il tentera de supprimer toutes les chaînes non intégrées de la table.
Iptables est un ensemble d'outils compliqué, donc un tutoriel idéal est nécessaire. Vous pouvez en essayer un sur www.iptables.info