GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je supprimer des règles spécifiques d'iptables ?

La meilleure solution qui fonctionne pour moi sans aucun problème ressemble à ceci:
1. Ajoutez une règle temporaire avec quelques commentaires :

comment=$(cat /proc/sys/kernel/random/uuid | sed 's/\-//g')
iptables -A ..... -m comment --comment "${comment}" -j REQUIRED_ACTION

2. Lorsque la règle est ajoutée et que vous souhaitez la supprimer (ou tout avec ce commentaire), faites :

iptables-save | grep -v "${comment}" | iptables-restore

Ainsi, vous supprimerez à 100 % toutes les règles qui correspondent à $comment et laisserez les autres lignes intactes. Cette solution fonctionne depuis 2 mois avec environ 100 changements de règles par jour - aucun problème. J'espère que cela aide


Exécutez les mêmes commandes mais remplacez le "-A" par "-D". Par exemple :

iptables -A ...

devient

iptables -D ...

Vous pouvez également utiliser le numéro de la règle (--line-numbers ):

iptables -L INPUT --line-numbers

Exemple de sortie :

Chain INPUT (policy ACCEPT) 
    num  target prot opt source destination
    1    ACCEPT     udp  --  anywhere  anywhere             udp dpt:domain 
    2    ACCEPT     tcp  --  anywhere  anywhere             tcp dpt:domain 
    3    ACCEPT     udp  --  anywhere  anywhere             udp dpt:bootps 
    4    ACCEPT     tcp  --  anywhere  anywhere             tcp dpt:bootps

Donc, si vous souhaitez supprimer la deuxième règle :

iptables -D INPUT 2

Mettre à jour

Si vous utilisez (d) une table spécifique (par exemple nat), vous devez l'ajouter à la commande de suppression (merci à @ThorSummoner pour le commentaire)

sudo iptables -t nat -D PREROUTING 1

Listez d'abord toutes les règles iptables avec cette commande :

iptables -S

il s'énumère comme :

-A XYZ -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

Copiez ensuite la ligne souhaitée, et remplacez simplement -A avec -D pour supprimer ça :

iptables -D XYZ -p ...

Linux
  1. Comment vider les règles iptables

  2. Comment vider les règles iptables

  3. CentOS / RHEL 6 :Comment enregistrer les règles iptables

  4. Comment désinstaller aria2 d'Ubuntu

  5. Comment puis-je supprimer complètement Jenkins de Linux

Comment configurer le pare-feu iptables sous Linux

Comment supprimer une commande de l'historique sous Linux

Comment supprimer les caractères (^M) d'un fichier sous Linux

Procédure :configuration de base des fichiers IPTables

Comment supprimer Swap Space de Centos 7.x ?

Comment faire expirer les règles iptables ?