Temat: Limit ilości połączen per IP
Potrzebuję zrobić limit ilości jednoczesnych połączeń dla danego IP. Przekopałem google i przećwiczyłem z chatgpt. Bez rezultatu.
Router: Xiaomi AX3000T, Soft: OpenWrt 24.10-SNAPSHOT r29077-f415748
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Oprogramowanie / Software → Limit ilości połączen per IP
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
Potrzebuję zrobić limit ilości jednoczesnych połączeń dla danego IP. Przekopałem google i przećwiczyłem z chatgpt. Bez rezultatu.
Reguła w nftables limitująca ilość połączeń? Zapytaj chatgpt to pewnie wypluje ci gotowca.
O to chodzi, że ni hu hu nie chce działać to co chat pluje. To nie działa, to następne i następne i w kółko. Mój limit wiedzy jeżeli chodzi o NFT jest bliski zeru.
nft 'add table inet filter'
nft 'add set inet filter limit_src_v4 { type ipv4_addr; flags dynamic; }'
nft 'add chain inet filter forward { type filter hook forward priority 0; }'
nft 'add rule inet filter forward ct state new add @limit_src_v4 { ip saddr ct count over 2 } counter drop'
Wcześniej zainstaluj kmod-nft-connlimit. Działa, limituje do 2 połączeń. I to nie jest mój wymysł tylko właśnie perplexity.
Jak dodam ręcznie poniższe to działa
nft 'add table inet filter'
nft 'add chain inet filter forward { type filter hook forward priority 0; }'
nft 'add rule inet filter forward ip saddr 192.168.0.65 ct state new ct count over 200 counter drop'
Jak chce ustawić na stałe, to się pluje
config rule
option name 'Limit-192.168.0.65'
option src 'lan'
option src_ip '192.168.0.65'
option dest 'wan'
option target 'DROP'
option proto 'all'
option family 'ipv4'
option extra '-m connlimit --connlimit-above 200 --connlimit-mask 32'
fw4 check daje
Section @rule[9] (Limit-192.168.0.65) option 'extra' is not supported by fw4
Ruleset passes nftables check.
I tak w kółko Macieju, wszystkie te chaty są durne w tej kwestii.
Dokładnie to co napisał - w fw4 nie ma opcji "extra". Dlatego własne reguły robisz np. w /etc/nftables.d albo skryptach, określonych przez https://openwrt.org/docs/guide-user/fir … r_with_fw4
Nie zadziała dodanie w /etc/config/firewall
tego:
table inet filter {
chain forward {
type filter hook forward priority 0; policy accept;
ip saddr 192.168.0.65 ct state new ct count over 200 counter drop
}
}
Dodanie do /etc/firewall.user
#!/bin/sh
# Limit połączeń z 192.168.0.65
nft add table inet filter 2>/dev/null || true
nft add chain inet filter forward { type filter hook forward priority 0; policy accept; } 2>/dev/null || true
nft add rule inet filter forward ip saddr 192.168.0.65 ct state new ct count over 200 counter drop 2>/dev/null || true
oraz
chmod +x /etc/firewall.user
/etc/init.d/firewall restart
Działa jak trzeba i po zrobieniu nft list ruleset | grep 192.168.0.65
mamy
root@OpenWrt:~# nft list ruleset | grep 192.168.0.65
ip saddr 192.168.0.65 tcp flags syn limit rate 50/second burst 5 packets accept
ip saddr 192.168.0.65 tcp flags syn drop
ip saddr 192.168.0.65 ct state new ct count over 200 counter packets 1817 bytes 1429900 drop
ip saddr 192.168.0.65 ct state new ct count over 200 counter packets 0 bytes 0 drop
W /etc/config/firewall mają być tylko reguły uci a nie jakies dowolne inne polecenia.
Dlatego napisałem, że firewall dla mnie to czarna magia, a składania reguł to dla jak dla mnie nie ma żadnych reguł. Poza tym AI nie umie w reguły firewalla za bardzo.
To co jest zaimplementowanie w Luci jeżeli chodzi o firewall to w niczym nie pomaga. Laik to może najwyżej port przekierować i tyle. To samo z robieniem w VLAN, straszliwe robienie na około. Może to wina raczej firewall'a i VLAN, że nie tworzono tego dla "normalnych" ludzi. No cóż może człowiek sobie ponarzekać, że nie umie zaawansowanych rzeczy konfigurować, a ma za darmo zaawansowane "narzędzie".
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
eko.one.pl → Oprogramowanie / Software → Limit ilości połączen per IP
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc