iptables --m recent: možné oba zápisy update+set (pořadí a -j)

Narazil jsem při hledání použití parametru --mask v iptables

na zajimavou ukázku:
Na něm mě (kromě mírně nezvyklého zápisu -I1- I2,I3)zarazila přítomnost+nepřítomnost action u set+update a taky jejich samotné pořadí
Kód: [Vybrat]
iptables -A black   -m recent --set   --name blacklist   -j DROP

iptables -X ssh
iptables -N ssh
iptables -I ssh 1   -m recent --update    --name blacklist   --reap   --seconds 86400     -j DROP
iptables -I ssh 2   -m recent --update    --name timer       --reap   --seconds   600     --hitcount 4   -j black
iptables -I ssh 3   -m recent --set       --name timer   -j ACCEPT

Setkali jste se s tím? (ano, je to tam vysvětlená a man jsem četl, -vím, že --set matchne vždy, taky se musí dávat pozor že právě pravidlo za always match efektivně ukončí chain) Většina použití má prohozené pořadí Dokonce obou věcí
  • první pravidlo je --set, druhé pravidlo je --update
  • u --set není action, u --update je -DROP
Tady je to opačně.
Funguji oba zápisy stejně nebo sice fungují ,ale jinak?

A zpět, k tomu, co jsem hledal: musí se --mask uvádět u --set i u update??? Nikde jsem to nenašel vysvětlené. Experimentálně jsem to nezkoušel zatím.
« Poslední změna: 17. 02. 2023, 15:38:15 od mikesznovu »


Re:iptables --m recent: možné oba zápisy update+set (pořadí a -j)
« Odpověď #1 kdy: 22. 02. 2023, 14:32:52 »
Zapomněl jsem dodat tu druhou stranu  diffu:
Kód: [Vybrat]
-A guard_block -m recent --set --name listname
-A guard_block -m recent --update --seconds 180 --h
itcount 3  --name listname -j DROP
I když myslím, že jde o učebnicový příklad.  Pozor, ze jde iptables -A

iptables --m recent: vystřílí víc paketů všechny hitcounty?
« Odpověď #2 kdy: 03. 03. 2023, 20:42:30 »
 Je funkcionalita r e c e n t orientovaná pakety nebo na spojení? (dejmetomu že mám hitcount 3 za nějakou dobu a připojím se poprvé, proběhne nějaká obou směrna komunikace 20 paketů. Vymlátí to  v daném časovém okně zbylé 2 volné pokusy hitcount ) Jakým modifikátorem (u --update nebo u --set) alternovat toto chování?

Zjistil jsem dost nepříjemný problém, když mám ty pravidla -m recent na příchozí službu na serveru, všímám si, že můj server odesílá "útočícímu počítači" zpět . Neděje se to pravidelně pokaždé a nevyzkoumal jsem vzorec, možná je to jen nějaký přechodný stav když zrovna vložím pravidlo DROP  do iptables když jsou aktivní script kiddies.
Na to jsem se chtěl zeptat, jestli by tahle hypotéza seděla, nebo má jiné vysvětlení a zda to má smysl řešit

IP SRV.6666 > 121.3.4.5.11537: Flags [F.], seq 0, ack 1, win 510,  length 0
(obykle 3x za sebou )


Jako rozumím tomu, to pravidlo -A guard_block -m recent --update --seconds 900 --reap --hitcount 2 --name porty  -j DROP zablokuje i příchozí FIN+ACK a pak tedy se tcp stack nedozví že sshd démon naštvaně po GraceTime prásknul sdveřmi

Ale nevím proč a jak tomu zabránit, aby odcházely zbytečně pakety na spojení které zrovna je na blackxtlistu momentálně.

a ss -4t hlásí
FIN-WAIT-1   pro  tento soketový pár

Re:iptables --m recent: --rcheck vs --update v praxi
« Odpověď #4 kdy: 06. 03. 2023, 23:17:17 »
Sice jsem si četl man iptables Sekce "recent" --update a --rcheck... (Rcheck "jenom " testuje,  navic vsune do seznamu /proc"/net/xt_recent/jmeno)


snažim se přijít na  praktický rozdíl:
Je to jenom to že mohu zapsat --hitcount 42 --update a je to stejné jako --hitcount 43 --rcheck ? Nebo je v tom nějaký háček  a u předchozího příměru jsem něco zanedbal?
« Poslední změna: 06. 03. 2023, 23:19:24 od mikesznovu »


Re:iptables --m recent: možné oba zápisy update+set (pořadí a -j)
« Odpověď #5 kdy: 07. 03. 2023, 17:20:10 »
Je --reap jen kosmetické (že v xt_recent  stavovém výpisuřádky zbytečně nejsou dlouhé)nebo nějak mění fukncionalitu?

Nevidím v příkladech v v)láknu že by to mělo mít efekt? Nebo to má efekt? Nebo to má efekt v slož.užitích module r e c e n t ?

Pro uvedení podvobraz, (je to jeden řádek celý ačtualy)
Kód: [Vybrat]
src=185.129.10.0 ttl: 122 last_seen: 8267592506 oldest_
pkt: 4 8267372497, 8267430811, 8267430811, 8267592506, 8265694432, 8265694432, 8265694432, 8265788809, 826578880
9, 8266076541, 8266103917, 8266103917,8266112651, 82661
12651, 8266528383, 8266627875, 8266627875, 8266658008, 8
266658008, 8266658008, 8266658008, 8266695579, 826669557
9, 8266790658, 8266790658, 8266790658, 8266790658, 82668
28052, 8266828052, 8266828052, 8266828052, 8267028106
« Poslední změna: 07. 03. 2023, 17:23:06 od mikesznovu »