GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann ich bestimmte Regeln aus iptables entfernen?

Die beste Lösung, die bei mir ohne Probleme funktioniert, sieht so aus:
1. Temporäre Regel mit Kommentar hinzufügen:

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

2. Wenn die Regel hinzugefügt wurde und Sie sie (oder alles mit diesem Kommentar) entfernen möchten, tun Sie Folgendes:

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

Sie löschen also zu 100 % alle Regeln, die mit $comment übereinstimmen, und lassen andere Zeilen unberührt. Diese Lösung funktioniert seit 2 Monaten mit etwa 100 Regeländerungen pro Tag - keine Probleme. Ich hoffe, es hilft


Führen Sie die gleichen Befehle aus, aber ersetzen Sie das "-A" durch "-D". Zum Beispiel:

iptables -A ...

wird

iptables -D ...

Sie können auch die Nummer der Regel verwenden (--line-numbers ):

iptables -L INPUT --line-numbers

Beispielausgabe:

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

Wenn Sie also die zweite Regel löschen möchten:

iptables -D INPUT 2

Aktualisieren

Wenn Sie eine bestimmte Tabelle (z. B. nat) verwenden, müssen Sie sie dem Löschbefehl hinzufügen (danke an @ThorSummoner für den Kommentar)

sudo iptables -t nat -D PREROUTING 1

Listen Sie zuerst alle iptables-Regeln mit diesem Befehl auf:

iptables -S

es listet auf wie:

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

Kopieren Sie dann die gewünschte Zeile und ersetzen Sie einfach -A mit -D um das zu löschen:

iptables -D XYZ -p ...

Linux
  1. So leeren Sie die iptables-Regeln

  2. CentOS / RHEL 6:So speichern Sie iptables-Regeln

  3. Wie kann ich Jenkins vollständig aus Linux entfernen

  4. Wie können Sie Duplikate aus dem Bash-Verlauf entfernen?

  5. Wie entferne ich VS Code &Einstellungen von Ubuntu?

So leeren Sie die iptables-Regeln

So konfigurieren Sie die iptables-Firewall unter Linux

So entfernen Sie einen Befehl aus dem Verlauf in Linux

So entfernen Sie (^M) Zeichen aus einer Datei in Linux

Gewusst wie:Grundlegende IPTables-Dateikonfiguration

Wie entferne ich Swap Space von Centos 7.x?