Lëshimi i filtrit paketor nftables 1.0.2

ËshtĂ« publikuar versioni 1.0.2 tĂ« filtrit tĂ« paketave nftables, i cili unifikon ndĂ«rfaqet pĂ«r filtrimin e paketave pĂ«r IPv4, IPv6, ARP dhe ura rrjetesh (ka si qĂ«llim zĂ«vendĂ«simin e iptables, ip6tables, arptables dhe ebtables). Ndryshimet e nevojshme pĂ«r punĂ«n e versionit 1.0.2 tĂ« nftables janĂ« pĂ«rfshirĂ« nĂ« bĂ«rthamĂ«n e Linuxit 5.17-rc.

Paketa nftables përmban komponente të filtrit të paketave që funksionojnë në hapësirën e përdoruesit, ndërsa në nivelin e bërthamor punon nën-sistemi nf_tables, i cili është pjesë e bërthamës Linux që nga versione 3.13. Në nivelin e bërthamës ofrohet vetëm një ndërfaqe e përgjithshme, e pavaruar nga protokolli i veçantë dhe që ofron funksione bazë për nxjerrjen e të dhënave nga paketat, për kryerjen e operacioneve me të dhënat dhe menaxhimin e fluksit.

Rregullat për filtrimin dhe trajtuesit specifikë për protokollet kompilohet në kodin e bytes në hapësirën e përdoruesit, pas së cilës ky kod bytes ngarkohet në bërthamë përmes ndërfaqes Netlink dhe ekzekutohet në bërthamë në një mënyrë të veçantë, që i ngjan BPF (Filtrat e Paketa Berkeley). Ky qasje lejon të reduktohet ndjeshëm madhësia e kodit të filtrimit që operon në nivelin e bërthamës dhe të transferohet të gjitha funksionet e përpunimit të rregullave dhe logjikës së punës me protokollet në hapësirën e përdoruesit. makinën virtuale, që ngjan me BPF (Berkeley Packet Filters). Ky qasje lejon reduktimin e ndjeshëm të madhësisë së kodit të filtrimit që operon në nivelin e bërthamës dhe nxjerrjen e të gjitha funksioneve për të analizuar rregullat dhe logjikën e punës me protokollet në hapësirën e përdoruesit.

Novitetet kryesore:

  • Ështuar njĂ« mod i optimizimit tĂ« rregullave, i aktivizuar nga opsioni i ri «-o» («—optimize»), i cili mund tĂ« kombinohet me opsionin «—check» pĂ«r tĂ« kontrolluar dhe optimizuar ndryshimet nĂ« skedarin me grupin e rregullave pa e ngarkuar atĂ« realisht. Optimizimi lejon kombinimin e rregullave tĂ« ngjashme, pĂ«r shembull, rregullat: meta iifname eth1 ip saddr 1.1.1.1 ip daddr 2.2.2.3 accept meta iifname eth1 ip saddr 1.1.1.2 ip daddr 2.2.2.5 accept ip saddr 1.1.1.1 ip daddr 2.2.2.2 accept ip saddr 2.2.2.2 ip daddr 3.3.3.3 drop

    do të bashkohen në meta iifname . ip saddr . ip daddr { eth1 . 1.1.1.1 . 2.2.2.3, eth1 . 1.1.1.2 . 2.2.2.5 } accept ip saddr . ip daddr vmap { 1.1.1.1 . 2.2.2.2 : accept, 2.2.2.2 . 3.3.3.3 : drop }

    Shembulli i përdorimit: # nft -c -o -f ruleset.test Bashkimi: 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 accept në: ip daddr { 192.168.0.1, 192.168.0.2, 192.168.0.3 } counter packets 0 bytes 0 accept

  • NĂ« listat e setit Ă«shtĂ« realizuar mundĂ«sia pĂ«r tĂ« specifikuar opsionet ip dhe tcp, si dhe chunk-et sctp: set s5 { typeof ip option ra value elements = { 1, 1024 } } set s7 { typeof sctp chunk init num-inbound-streams elements = { 1, 4 } } chain c5 { ip option ra value @s5 accept } chain c7 { sctp chunk init num-inbound-streams @s7 accept }
  • ËshtĂ« shtyrĂ« mbĂ«shtetje pĂ«r opsionet TCP fastopen, md5sig dhe mptcp.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r pĂ«rdorimin nĂ« pĂ«rputhjet e nĂ«nllojit mp-tcp: tcp option mptcp subtype 1
  • Kodi i filtrimit, i cili punon nĂ« anĂ«n e bĂ«rthamĂ«s, Ă«shtĂ« pĂ«rmirĂ«suar.
  • PĂ«r flowtable Ă«shtĂ« realizuar mbĂ«shtetje e plotĂ« pĂ«r formatin JSON.
  • ËshtĂ« dhĂ«nĂ« mundĂ«sia e pĂ«rdorimit tĂ« veprimit «reject» nĂ« operacionet e pĂ«rputhjes sĂ« kornizave Ethernet. ether saddr aa:bb:cc:dd:ee:ff ip daddr 192.168.0.1 reject

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster