nftables pakét filter release 1.0.2

Pelepasan packet filter nftables 1.0.2 geus diterbitkeun, ngahijikeun packet filtering interfaces pikeun IPv4, IPv6, ARP jeung jaringan sasak (aimed dina ngaganti iptables, ip6table, arptables jeung ebtables). Parobahan nu diperlukeun pikeun nftables 1.0.2 release ka jalan kaasup kana Linux Ubuntu kernel 5.17-rc.

Paket nftables kalebet komponén saringan pakét anu dijalankeun dina rohangan pangguna, sedengkeun padamelan tingkat kernel disayogikeun ku subsistem nf_tables, anu parantos janten bagian tina kernel Linux ti saprak ngaleupaskeun 3.13. Tingkat kernel ngan nyadiakeun antarbeungeut protokol-bebas generik nu nyadiakeun pungsi dasar pikeun extracting data tina pakét, ngajalankeun operasi data, jeung kontrol aliran.

Aturan nyaring jeung panangan husus protokol anu disusun kana bytecode dina spasi pamaké, nu satutasna bytecode ieu dimuat kana kernel ngagunakeun panganteur Netlink sarta dieksekusi dina kernel dina mesin virtual husus reminiscent of BPF (Berkeley Packet Filters). Pendekatan ieu ngamungkinkeun anjeun sacara signifikan ngirangan ukuran kode nyaring anu dijalankeun dina tingkat kernel sareng mindahkeun sadaya fungsi aturan parsing sareng logika pikeun damel sareng protokol kana rohangan pangguna.

Inovasi utama:

  • Modeu optimasi aturan parantos ditambahkeun, diaktipkeun nganggo pilihan "-o" ("--optimize") énggal, anu tiasa digabungkeun sareng pilihan "--check" pikeun mariksa sareng ngaoptimalkeun parobihan kana file set aturan tanpa leres-leres ngamuat. . Optimasi ngidinan Anjeun pikeun ngagabungkeun aturan sarupa, contona, aturan: meta iifname eth1 ip saddr 1.1.1.1 ip daddr 2.2.2.3 nampa meta iifname eth1 ip saddr 1.1.1.2 ip daddr 2.2.2.5 narima ip saddr 1.1.1.1. .2.2.2.2 nampi ip saddr 2.2.2.2 ip daddr 3.3.3.3 serelek

    bakal digabungkeun kana meta iifname . ip sadr. ip dadr {eth1. 1.1.1.1. 2.2.2.3, eth1 . 1.1.1.2. 2.2.2.5 } narima ip saddr . ip daddr vmap {1.1.1.1. 2.2.2.2: narima, 2.2.2.2. 3.3.3.3: leupaskeun}

    Conto pamakean: # nft -c -o -f ruleset.test Merging: ruleset.nft:16:3-37: ip daddr 192.168.0.1 counter accept ruleset.nft:17:3-37: ip daddr 192.168.0.2 counter accept ruleset.nft: 18: 3-37: ip daddr 192.168.0.3 counter narima kana: ip daddr { 192.168.0.1, 192.168.0.2, 192.168.0.3 } counter pakét 0 bait 0 narima

  • Daptar set ngalaksanakeun kamampuan pikeun nangtukeun pilihan ip sareng tcp, ogé potongan sctp: set s5 {typeof ip option ra value elements = {1, 1024}} set s7 {typeof sctp chunk init num-inbound-streams elements = { 1, 4}} ranté c5 {ip pilihan nilai ra @s5 narima} ranté c7 {sctp chunk init num-inbound-aliran @s7 narima}
  • Ditambahkeun dukungan pikeun pilihan TCP fastopen, md5sig sareng mptcp.
  • Ditambahkeun dukungan pikeun ngagunakeun subtipe mp-tcp dina pemetaan: pilihan tcp mptcp subtipe 1
  • Ningkatkeun kode nyaring sisi kernel.
  • Flowtable ayeuna gaduh dukungan pinuh pikeun format JSON.
  • Kamampuhan pikeun ngagunakeun aksi "nolak" dina operasi cocog pigura Ethernet geus disadiakeun. éter saddr aa:bb:cc:dd:ee:ff ip daddr 192.168.0.1 nolak

sumber: opennet.ru

Tambahkeun komentar