Portál AbcLinuxu, 4. května 2025 17:35
1.1.1.1:80 192.168.1.0/24:443 ...Existuje nějaký způsob jak přes nftables tohle nacpat do jednoho pravidla, podobně jako to jde udělat s ipsets?
Díky za odpověď. Tohle už jsem ovšem četl a nemůžu z toho vykoukat jak použít kombinaci adresa port. S iptables+ipset se to provádí následovně:
iptables -A chain -i eth2 -m set --match-set jméno_ipsetu src,src -j DROPKde ipset je typu hash:net,port
U nftables můžu udělat:
nft add rule filter output tcp sport { 80, 443 } ip saddr { 1.1.1.1, 192.168.1.0/24 } dropAle to mi zahodí všechny kombinace:
1.1.1.1:80 1.1.1.1:443 192.168.1.0/24:80 192.168.1.0/24:443Já potřebuju zahodit pouze:
1.1.1.1:80 192.168.1.0/24:443
nft add map filter mapa { type ipv4_addr : inet_service\; } nft add element filter mapa { 1.1.1.1 : 80, 8888 192.168.1.0/24 : 443 } nft add rule filter output ip saddr vmap @mapa dropJen napad na slepo..
nft add rule filter output ip saddr tcp sport vmap @mapa dropNefunguje. A zatím jsem nikde nenašel způsob jak to nastavit. Navíc i pokud by se mi to povedlo, tak to není to, co potřebuju. Např. budu chtít zablokovat:
10.0.0.1:80 10.0.0.1:443A nftables mi vyhodí
nft add map filter dalsi_pokus { type ipv4_addr : inet_service\; } nft add element filter dalsi_pokus { 10.0.0.1 : 80, 10.0.0.1 : 443} cmdline:1:1-63: Error: Could not process rule: File exists add element filter dalsi_pokus { 10.0.0.1 : 80, 10.0.0.1 : 443} ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Já bych prostě potřeboval set, ve kterém bude jako klíč kombinace IP a portu. A následně přesvědčit nft, že to první je vzdálená adresa a to druhé je vzdálený port.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.