Ġie ppubblikat ir-rilaxx tal-packet filter nftables 1.0.5, li jgħaqqad l-interfaces tal-iffiltrar tal-pakketti għall-IPv4, IPv6, ARP u pontijiet tan-netwerk (immirati biex jissostitwixxu iptables, ip6table, arptables u ebtables). Fl-istess ħin, ir-rilaxx tal-librerija anëillari libnftnl 1.2.3 ġie ppubblikat, li jipprovdi API ta 'livell baxx għall-interazzjoni mas-subsistema nf_tables.
Il-pakkett nftables fih il-komponenti tal-filtru tal-pakketti li joperaw fl-ispazju tal-utent, filwaqt li x-xogħol fil-livell tal-kernel huwa pprovdut mis-sottosistema nf_tables, li hija parti mill-kernel. Linux Mill-ħarġa 3.13 'l hawn, fil-livell tal-kernel hija pprovduta biss interface ġenerika indipendenti mill-protokoll, li tipprovdi funzjonalità bażika għall-estrazzjoni tad-dejta mill-pakketti, it-twettiq ta' operazzjonijiet tad-dejta, u l-kontroll tal-fluss.
Ir-regoli tal-filtrazzjoni nfushom u l-handlers speċifiċi għall-protokoll huma kkumpilati f'bytecode fl-ispazju tal-utent, u wara dan il-bytecode jiġi mgħobbi fil-kernel bl-użu tal-interface Netlink u eżegwit fil-kernel b'mod speċjali. magna virtwali, tfakkar fil-BPF (Berkeley Packet Filters). Dan l-approċċ jippermetti tnaqqis sinifikanti fid-daqs tal-kodiċi tal-filtrazzjoni li jaħdem fil-livell tal-kernel u jċaqlaq l-analiżi tar-regoli u l-loġika tal-protokoll kollha fl-ispazju tal-utent.
Bidliet ewlenin:
- Fl-ottimizzatur tar-regoli, imsejjaħ meta tiġi speċifikata l-għażla "-o/—ottimizza", ġew solvuti problemi bil-kombinazzjoni tar-regoli, il-mappa u l-listi ta' settijiet. # cat ruleset.nft tabella ip x { katina y { tip nat hook postrouting prijorità srcnat; tnaqqis fil-politika; ip saddr 1.1.1.1 tcp dport 8000 snat sa 4.4.4.4:80 ip saddr 2.2.2.2 tcp dport 8001 snat sa 5.5.5.5:90 } } # nft -o -c -f ruleset.nft Għaqda: 4 ruleset.nft :3-52: ip saddr 1.1.1.1 tcp dport 8000 snat sa 4.4.4.4:80 ruleset.nft:5:3-52: ip saddr 2.2.2.2 tcp dport 8001 ip snat sa 5.5.5.5:90 fi: snat saddr. tcp dport mappa { 1.1.1.1 . 8000: 4.4.4.4. 80, 2.2.2.2. 8001: 5.5.5.5. 90}
- Meta tgħaqqad l-elementi ethernet u vlan, lista ta 'sett dinamiku hija definita, mimlija abbażi tal-parametri tal-passaġġ tal-pakkett. żid tabella netdev x żid katina netdev xy { tip filtru ganċ apparat ta 'dħul enp0s25 prijorità 0; } żid issettja netdev x macset {tip ta' ether daddr . vlan id; bnadar dinamiċi,timeout; } żid regola netdev xy update @macset { ether daddr . vlan id timeout 60s } żid regola netdev xy ether saddr . vlan id { 0a:0b:0c:0d:0e:0f . 42, 0a:0b:0c:0d:0e:0f . 4095 } counter accept
- Il-wiri tar-regoli b'listi ta' mapep li fihom maskri fl-ismijiet tal-interface ġie aġġustat. tabella inet filter { chain INPUT { iifname vmap { "eth0" : jaqbeż input_lan, "wg*" : jaqbeż input_vpn } } chain input_lan {} chain input_vpn {} }
- Bidliet rigressivi li jwasslu għal parsing lessikali mhux korrett tar-regoli korretti ġew eliminati.
- Ġew solvuti problemi bl-ipproċessar bil-mod u l-għaqda awtomatika ta 'listi kbar b'elementi li jiddefinixxu firxiet ta' valuri.
- Ħbit fiss meta żżid elementi ma 'lista ta' sett mhux korretta.
Sors: opennet.ru
