nftables paket filtre sürümü 0.9.9

nftables 0.9.9 paket filtresi yayınlandı. IPv4, IPv6, ARP ve ağ köprüleri için paket filtreleme arayüzlerini birleştiriyor (iptables, ip6table, arptables ve ebtables'ın yerine geçmesi hedefleniyor). nf_tables alt sistemiyle etkileşim için düşük seviyeli bir API sağlayan eşlik eden libnftnl 1.2.0 kütüphanesi de eş zamanlı olarak yayınlandı. nftables 0.9.9 için gerekli değişiklikler çekirdeğe entegre edildi. Linux 5.13-rc1.

nftables paketi, kullanıcı alanında çalışan paket filtreleme bileşenlerini içerirken, çekirdek düzeyindeki işlemler çekirdeğin bir parçası olan nf_tables alt sistemi tarafından sağlanır. Linux 3.13 sürümünden itibaren, çekirdek düzeyinde yalnızca genel, protokolden bağımsız bir arayüz sağlanmaktadır; bu arayüz, paketlerden veri çıkarma, veri işlemleri gerçekleştirme ve akış kontrolü için temel işlevsellik sunmaktadır.

Filtreleme kuralları ve protokole özgü işleyiciler, kullanıcı alanında bayt koduna derlenir; daha sonra bu bayt kodu Netlink arayüzü kullanılarak çekirdeğe yüklenir ve çekirdekte özel bir ortamda yürütülür. sanal makineBu yaklaşım, BPF'yi (Berkeley Paket Filtreleri) anımsatıyor. Çekirdek düzeyinde çalışan filtreleme kodunun boyutunda önemli bir azalma sağlıyor ve tüm kural ayrıştırma ve protokol mantığını kullanıcı alanına taşıyor.

Ana yenilikler:

  • Akışkan işlemeyi ağ bağdaştırıcısı tarafına taşıma yeteneği uygulandı ve 'boşaltma' bayrağı kullanılarak etkinleştirildi. Flowtable, tüm kural işleme zincirlerinin tam geçişinin yalnızca ilk pakete uygulandığı ve akıştaki diğer tüm paketlerin doğrudan iletildiği, paket yeniden yönlendirme yolunu optimize etmeye yönelik bir mekanizmadır. tablo ip global { flowtable f { kanca giriş önceliği filtresi + 1 cihazlar = { lan3, lan0, wan } bayrak boşaltma } ileri zincirleme { type filtre kanca ileri öncelik filtresi; politika kabul; ip protokolü { tcp, udp } akış ekle @f } zincir posta { type nat hook postrouting öncelik filtresi; politika kabul; oifname "wan" maskeli balo } }
  • Tablonun bir süreç tarafından özel olarak kullanılmasını sağlamak için tabloya sahip bayrağının eklenmesine yönelik destek eklendi. Bir süreç sona erdiğinde onunla ilişkili tablo otomatik olarak silinir. İşlemle ilgili bilgiler kural dökümünde yorum biçiminde görüntülenir: tablo ip x { # program adı nft bayrakları sahip zinciri y { type filter hook giriş önceliği filtresi; politika kabul; sayaç paketleri 1 bayt 309 } }
  • Birden fazla VLAN etiketini tek bir Ethernet çerçevesine yerleştirmenin bir yolunu tanımlayan IEEE 802.1ad spesifikasyonu (VLAN yığınlama veya QinQ) için destek eklendi. Örneğin, harici Ethernet çerçevesi 8021ad ve vlan id=342'nin türünü kontrol etmek için, ... ether type 802.1ad vlan id 342 yapısını kullanarak 8021ad/vlan id=1, iç içe 802.1 harici Ethernet çerçevesi türünü kontrol edebilirsiniz. q/vlan id=2 ve daha fazla IP paketi kapsülleme: ... eter türü 8021ad vlan kimliği 1 vlan türü 8021q vlan kimliği 2 vlan türü ip sayacı
  • Birleşik hiyerarşi grupları v2'yi kullanarak kaynakları yönetmeye yönelik destek eklendi. Cgroups v2 ve v1 arasındaki temel fark, CPU kaynaklarını tahsis etmek, bellek tüketimini düzenlemek ve G/Ç için ayrı hiyerarşiler yerine tüm kaynak türleri için ortak bir cgroups hiyerarşisinin kullanılmasıdır. Örneğin, cgroupv2 birinci düzeyindeki bir soketin atasının "system.slice" maskesiyle eşleşip eşleşmediğini kontrol etmek için şu yapıyı kullanabilirsiniz: ... soket cgroupv2 seviye 1 "system.slice"
  • SCTP paketlerinin bileşenlerini kontrol etme özelliği eklendi (işlem için gerekli işlevsellik çekirdekte yer alacaktır). Linux 5.14). Örneğin, bir paketin 'data' türünde ve 'type' alanında bir öbek içerip içermediğini kontrol etmek için: … sctp öbek verisi mevcut … sctp öbek verisi türü 0
  • Kural yükleme işleminin yürütülmesi “-f” bayrağı kullanılarak yaklaşık iki kat hızlandırılmıştır. Kural listesinin çıktısı da hızlandırıldı.
  • Bayrak bitlerinin ayarlanıp ayarlanmadığını kontrol etmek için kompakt bir form sağlanmıştır. Örneğin, snat ve dnat durum bitlerinin ayarlanmadığını kontrol etmek için şunları belirtebilirsiniz: ... ct status ! snat,dnat, syn bitinin bit maskesinde ayarlandığını kontrol etmek için syn,ack: ... tcp, fin ve rst bitlerinin bit maskesinde ayarlanmadığını kontrol etmek için syn / syn,ack'i işaretler syn,ack,fin,rst: ... tcp bayrakları = fin,rst / syn,ack,fin,rst
  • set/map typeof tanımlarında "verdict" anahtar sözcüğüne izin verin: add map xm { typeof iifname . ip protokolü th port : karar ;}

Kaynak: opennet.ru

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster