Déplacer la règle iptables (sans supprimer ni ajouter)

18

Existe-t-il un moyen de déplacer une règle dans la position iptableset de la modifier? Je sais que je peux utiliser -Ipour insérer une règle dans une position spécifique, mais j'aime aussi garder les compteurs.

Rabin
la source

Réponses:

7

Non, vous ne pouvez pas déplacer une règle. Cependant, vous pouvez définir le compteur pour toute règle que vous ajoutez / insérez / remplacez (à l'aide du paramètre -cou --set-counters). Vous pouvez donc vérifier le décompte actuel, supprimer la règle et la réinsérer avec l'ancienne valeur de décompte.

itsbruce
la source
29

Vous pouvez également faire ce qui suit

  1. Écrivez la sortie de iptables-savedans un fichier: iptables-save > /tmp/iptables.txt
  2. Modifiez ce fichier avec un éditeur de texte, déplacez la ligne de votre choix.
  3. Rechargez le fichier: iptables-restore < /tmp/iptables.txt
Vadim Sluzky
la source
4

Pour voir ce que vous avez et ce que vous voulez changer, vous devez d'abord faire un examen.

1) Vérifiez les compteurs et écrivez-les quelque part afin de pouvoir les entrer plus tard.

iptables-save -c

2) Vérifiez la ligne que vous souhaitez remplacer / repositionner à l'aide

iptables -L -v -n --line-n

3) Écrivez la règle dans la CHAINE désignée et ajoutez les compteurs expliqués à l'étape suivante. Par exemple.

iptables -R INPUT 5 -i virbr0 -p udp -m udp -c 3441 472271 --dport 53 -j ACCEPT -m comment --comment "Some comment"

Sens de -c

-c [packets:bytes]

La règle iptables ci-dessus sera inscrite à la ligne 5.

Remarque. Enregistrez les règles iptables en utilisant iptables-save -c /somepath/iptrules-$(date +%F) ce qui préservera les compteurs.

Valentin Bajrami
la source