OUTPUT-Kettenregeln in iptables

OUTPUT-Kettenregeln in iptables

netfilterscheint abgelehnten Datenverkehr aus meiner INPUTKette durchzulassen OUTPUT. Hier sind die Regeln aus der INPUTKette, die auf die betreffenden Pakete angewendet werden:

 LOG         all  --  *  *   0.0.0.0/0  0.0.0.0/0    LOG flags 0 level 6 prefix "ICATCH:"
 REJECT-PKT  all  --  *  *   0.0.0.0/0  0.0.0.0/0    

Die benutzerdefinierte REJECT-PKTKette und ihre relevante Regel:

 REJECT    tcp  --  *  *  0.0.0.0/0    0.0.0.0/0    tcp reject-with tcp-reset

Hier ist das protokollierte Ergebnis:

May 15 06:41:51 li51-144 kernel: ICATCH:IN=eth0 OUT= MAC=f2:3c:91:1f:61:44:84:78:ac:0d:97:c1:08:00 SRC=188.138.135.9 DST=<my IP> LEN=40 TOS=0x00 PREC=0x00 TTL=46 ID=46841 PROTO=TCP SPT=8838 DPT=23 WINDOW=22014 RES=0x00 SYN URGP=0
May 15 06:41:51 li51-144 kernel: OCATCH:IN= OUT=eth0 SRC=<my IP> DST=188.138.135.9 LEN=40 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=23 DPT=8838 WINDOW=0 RES=0x00 ACK RST URGP=0

Die zweite Zeile ergibt sich aus der folgenden (vorletzten) Regel der OUTPUTTabelle:

LOG        all  --  0.0.0.0/0            0.0.0.0/0            LOG flags 0 level 6 prefix "OCATCH:"

Ich hatte den Eindruck, dass abgelehnte Pakete irgendwie vom Kernel markiert wurden und dass TCP-Verkehr mit einem RSTaus iptablesRegeln resultierenden Flag nicht von der Firewall verarbeitet wurde.

Was habe ich falsch verstanden?

Antwort1

Wie @Aaron sagte, das ist normal.

Wenn ein eingehendes Paket REJECT die Regel erreicht, wird es vom Netzfilter verarbeitet und dem Absender wird mit RSTeinem Paket und einer Nachricht geantwortet.

Wenn Sie es jedoch auf DROPstattdessen setzen, erhält die Quelle keine Nachricht.

Überprüfen Sie diesen Link: Unterschied zwischen DROP und REJECT

Es lohnt sich, es auszuführen tcpdumpoder wiresharkdie Ausgabe zu erfassen und zu sehen, was unter dem Hub vor sich geht.

verwandte Informationen