nftables pakiti chujio 0.9.9 kutolewa

Kichujio cha pakiti cha nftables 0.9.9 kimetolewa. Kinaunganisha violesura vya kuchuja pakiti kwa IPv4, IPv6, ARP, na madaraja ya mtandao (yanayolengwa kama mbadala wa iptables, ip6table, arptables, na ebtables). Maktaba inayoambatana na libnftnl 1.2.0, ambayo hutoa API ya kiwango cha chini ya kuingiliana na mfumo mdogo wa nf_tables, imetolewa kwa wakati mmoja. Mabadiliko yanayohitajika kwa nftables 0.9.9 yamejumuishwa kwenye kiini. Linux 5.13-rc1.

Kifurushi cha nftables kina vipengele vya kichujio cha pakiti vinavyofanya kazi katika nafasi ya mtumiaji, huku kazi ya kiwango cha kerneli ikitolewa na mfumo mdogo wa nf_tables, ambao ni sehemu ya kerneli. Linux Tangu kutolewa kwa 3.13, ni kiolesura cha jumla kisichotegemea itifaki pekee kinachotolewa katika kiwango cha kernel, kinachotoa utendaji kazi wa msingi wa kutoa data kutoka kwa pakiti, kufanya shughuli za data, na kudhibiti mtiririko.

Sheria za kuchuja zenyewe na vidhibiti maalum vya itifaki hukusanywa katika msimbo wa byte katika nafasi ya mtumiaji, baada ya hapo msimbo huu wa byte hupakiwa kwenye kiini kwa kutumia kiolesura cha Netlink na kutekelezwa kwenye kiini katika mfumo maalum. mashine pepe, inayokumbusha BPF (Vichujio vya Pakiti vya Berkeley). Mbinu hii inaruhusu upunguzaji mkubwa wa ukubwa wa msimbo wa kuchuja unaoendeshwa katika kiwango cha kiini na huhamisha uchanganuzi wote wa sheria na mantiki ya itifaki hadi nafasi ya mtumiaji.

Ubunifu kuu:

  • Imetekeleza uwezo wa kuhamisha uchakataji unaotiririka hadi kwenye upande wa adapta ya mtandao, iliyowezeshwa kwa kutumia alama ya 'kupakia'. Flowtable ni utaratibu wa kuboresha njia ya usambazaji wa pakiti, ambayo msururu kamili wa minyororo yote ya usindikaji wa sheria hutumiwa tu kwa pakiti ya kwanza, na pakiti zingine zote kwenye mtiririko hutumwa moja kwa moja. jedwali ip kimataifa { flowtable f { ndoano ingress kipaumbele chujio + 1 vifaa = { lan3, lan0, wan } bendera offload } mnyororo mbele { aina chujio ndoano mbele chujio kipaumbele; kukubali sera; itifaki ya ip { tcp, udp } mtiririko ongeza @f } chapisho la mnyororo { type nat hook postrouting priority filter; kukubali sera; oifname "wan" kinyago }}
  • Usaidizi ulioongezwa wa kuambatisha bendera ya mmiliki kwenye jedwali, ambayo inahakikisha matumizi ya kipekee ya jedwali kwa mchakato. Mchakato unapoisha, jedwali linalohusika linafutwa kiotomatiki. Maelezo ya mchakato yanaonyeshwa katika utupaji wa sheria kama maoni: jedwali ip x { # progname nft bendera mmiliki mnyororo y {aina chujio pembejeo pembejeo kichujio kipaumbele; kukubali sera; pakiti za kaunta 1 byte 309}}
  • Usaidizi ulioongezwa wa vipimo vya IEEE 802.1ad (VLAN stacking au QinQ), ambavyo hufafanua njia za kubadilisha lebo nyingi za VLAN kwenye fremu moja ya Ethaneti. Kwa mfano, kuangalia fremu ya Ethaneti ya nje aina 8021ad na vlan id=342, unaweza kutumia muundo ... etha aina 802.1ad vlan id 342 kuangalia fremu ya nje ya Ethaneti aina 8021ad/vlan id=1, iliyowekewa 802.1q/vlan id=te 2, na aina ya 8021. id 1 vlan aina 8021q vlan id 2 vlan aina ip counter
  • Usaidizi wa usimamizi wa rasilimali kwa kutumia uongozi wa vikundi vya v2 uliounganishwa umeongezwa. Tofauti kuu kati ya vikundi v2 na v1 ni matumizi ya safu ya vikundi vya pamoja kwa aina zote za rasilimali, badala ya safu tofauti za ugawaji wa rasilimali ya CPU, usimamizi wa kumbukumbu, na I/O. Kwa mfano, ili kuangalia kama babu wa tundu katika ngazi ya kwanza ya cgroupv2 inalingana na mask ya "system.slice", unaweza kutumia ujenzi ufuatao: ... socket cgroupv2 level 1 "system.slice"
  • Imeongeza uwezo wa kuangalia vipengele vya pakiti za SCTP (utendaji unaohitajika kwa uendeshaji utaonekana kwenye kiini Linux 5.14). Kwa mfano, ili kuangalia kama pakiti ina kipande chenye aina ya 'data' na sehemu ya 'type': … data ya kipande cha sctp ipo … aina ya data ya kipande cha sctp 0
  • Upakiaji wa sheria kwa kutumia alama ya "-f" umeongezwa takriban maradufu. Utoaji wa orodha ya sheria pia umeharakishwa.
  • Njia fupi ya kuangalia mpangilio wa biti kwenye bendera imetolewa. Kwa mfano, ili kuangalia kwamba bits za hali ya snat na dnat hazijawekwa, unaweza kutaja: ... ct status ! snat,dnat ili kuangalia kama syn biti imewekwa katika syn,ack bit mask: ... tcp bendera syn / syn,ack ili kuangalia kama fin na rst biti hazijawekwa katika syn,ack,fin,rst bit mask: ... tcp bendera != fin,rst / syn,ack,fin, kwanza
  • Neno kuu la "hukumu" linaruhusiwa katika ufafanuzi wa typeof kwa set/map: add map xm { typeof iifname . itifaki ya ip. th dport : uamuzi ;}

Chanzo: opennet.ru

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster