Frigivning av FreeBSD 13.2 med stöd för Netlink och WireGuard

Efter 11 mÄnaders utveckling har version 13.2 av FreeBSD slÀppts. Installationsbilder har skapats för arkitekturerna amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 och riscv64. Dessutom har versioner för virtualiseringssystem (QCOW2, VHD, VMDK, raw) och molnmiljöer som Amazon EC2, Google Compute Engine och Vagrant tagits fram.

NyckelÀndringar:

  • Möjligheten att skapa snapshots av filsystemen UFS och FFS, som har journalföring (soft updates) aktiverad, har implementerats. Stöd för bakgrundssparande av dumps (kör dump med flaggan "-L") med innehĂ„llet av monterade UFS-filsystem vid aktiverad journalföring har ocksĂ„ lagts till. FrĂ„n de funktioner som inte Ă€r tillgĂ€ngliga vid anvĂ€ndning av journalföring kvarstĂ„r bakgrundskontrollen av integriteten genom verktyget fsck.
  • En kĂ€rndriver för wg med implementering av ett nĂ€tverksgrĂ€nssnitt för VPN WireGuard har godkĂ€nts i huvuduppsĂ€ttningen. För att anvĂ€nda de kryptografiska algoritmer som behövs av drivrutinen har API:et för kĂ€rnans kryptosystem utvidgats, vilket har möjliggjort anvĂ€ndning av algoritmer frĂ„n biblioteket libsodium, som inte stöds av FreeBSD, via det standardiserade kryptografi-API:et. Under utvecklingen har det ocksĂ„ genomförts optimeringar för en jĂ€mn belastningsbalansering av uppdrag för kryptering och dekryptering av paket till CPU-kĂ€rnor, vilket har minskat overheaden vid bearbetning av WireGuard-paket.

    Det tidigare försöket att inkludera WireGuard i FreeBSD gjordes 2020 men slutade i en skandal, vilket ledde till att redan tillagd kod togs bort pÄ grund av lÄg kvalitet, slarvig hantering av buffertar, anvÀndning av platshÄllare istÀllet för kontroller, ofullstÀndig protokollimplementering och brott mot GPL-licensen. Den nya implementeringen har gemensamt förberetts av de frÀmsta utvecklarteamet för FreeBSD och WireGuard, med deltagande av Jason Donenfeld, skaparen av VPN WireGuard, och John Baldwin, en kÀnd FreeBSD-utvecklare. Innan den nya koden godkÀndes genomfördes en fullstÀndig granskning av Àndringarna med stöd av FreeBSD Foundation.

  • Stödet för kommunikationsprotokollet Netlink (RFC 3549) har implementerats, vilket anvĂ€nds i Linux för att organisera interaktionen mellan kĂ€rnan och processer i anvĂ€ndarrummet. Projektet begrĂ€nsar sig till att stödja familjen av operationer NETLINK_ROUTE för att hantera tillstĂ„ndet i det nĂ€tverksbaserade systemet i kĂ€rnan, vilket möjliggör anvĂ€ndning av Linux-verktyget ip frĂ„n paketet iproute2 för att hantera nĂ€tverksgrĂ€nssnitt, konfigurera IP-adresser, stĂ€lla in routing och manipulera nexthop-objekt som lagrar uppgifter om tillstĂ„ndet som anvĂ€nds för att överföra paketet till önskad destinationspunkt.
  • För alla körbara filer i bas-systemet pĂ„ 64-bitars plattformar Ă€r randomisering av adressrymd (ASLR, Address Space Layout Randomization) som standard aktiverad. För valfri avstĂ€ngning av ASLR kan kommandon "proccontrol -m aslr -s disable" eller "elfctl -e +noaslr" anvĂ€ndas.
  • I ipfw anvĂ€nds grundtabeller (Radix table) för att söka MAC-adresser, vilket möjliggör skapande av tabeller med MAC-adresser och deras anvĂ€ndning för trafikfiltrering. Till exempel: ipfw table 1 create type mac ipfw table 1 add 11:22:33:44:55:66/48 ipfw add skipto tablearg src-mac 'table(1)' ipfw add deny src-mac 'table(1, 100)' ipfw add deny lookup dst-mac 1
  • KĂ€rnmodulerna dpdk_lpm4 och dpdk_lpm6 har lagts till och görs tillgĂ€ngliga för nedladdning via loader.conf, med implementeringen av DIR-24-8 rutningsalgoritmen för IPv4/IPv6, vilket optimerar routingfunktionerna för vĂ€rdar med mycket stora rutningstabeller (tester visar en hastighetsökning pĂ„ upp till 25%). För att konfigurera moduler kan standardverktyget route anvĂ€ndas (en ny parameter FIB_ALGO har lagts till).
  • Implementeringen av filsystemet ZFS har uppdaterats till version OpenZFS 2.1.9. I startskriften zfskeys sĂ€kerstĂ€lls automatisk laddning av nycklar som lagras i ZFS-filsystemet. En ny RC-script zpoolreguid har lagts till för att tilldela GUID identifierare till en eller flera zpool (t.ex. anvĂ€ndbart för virtualiseringsmiljöer med delade data).
  • I hypervisor Bhyve och modulen vmm har stöd för att koppla fler Ă€n 15 virtuella CPU:er till gĂ€stsystemet implementerats (justeras via sysctl hw.vmm.maxcpu). Verktyget bhyve har implementerat emulering av en virtio-input-enhet, vilket gör att inmatningsevent frĂ„n tangentbord och mus kan infogas i gĂ€stsystemet.
  • I KTLS, implementation of the TLS protocol that operates at the FreeBSD kernel level, hardware acceleration for TLS 1.3 has been added by offloading certain operations related to processing encrypted incoming packets onto the network card. Previously, such capability was available for TLS 1.1 and TLS 1.2.
  • I startskriften growfs har vi sĂ€kerstĂ€llt att en swap-partition lĂ€ggs till vid utvidgning av root-filsystemet om en sĂ„dan partition ursprungligen saknades (t.ex. anvĂ€ndbart vid installation pĂ„ SD-kort av en fĂ€rdig systemavbild). För att styra storleken pĂ„ swap-minnet har en ny parameter growfs_swap_size lagts till i rc.conf.
  • I startskriften hostid har vi sĂ€kerstĂ€llt generering av ett slumpmĂ€ssigt UUID om filen /etc/hostid saknas och det inte gĂ„r att hĂ€mta UUID frĂ„n hĂ„rdvaran. Dessutom har filen /etc/machine-id lagts till med en kompakt representation av vĂ€rdidentifieraren (utan bindestreck).
  • I rc.conf har variablerna defaultrouter_fibN och ipv6_defaultrouter_fibN lagts till, genom vilka du kan lĂ€gga till standardrutter i FIB-tabeller som Ă€r olika frĂ„n den primĂ€ra.
  • I biblioteket libmd har stöd för SHA-512/224-hashar lagts till.
  • I pthread-biblioteket har stöd för semantiken för funktioner som anvĂ€nds i Linux implementerats.
  • I kdump har stöd för avkodning av systemanrop i Linux lagts till. Kdump och sysdecode har fĂ„tt stöd för spĂ„rning av systemanrop i Linux-stil.
  • I verktyget killall har möjligheten att skicka signaler till processer knutna till en viss terminal lagts till (t.ex. ‘killall -t pts/1’).
  • En nyhet Ă€r verktyget nproc som visar antalet tillgĂ€ngliga berĂ€kningsblock för den aktuella processen.
  • I verktyget pciconf har stöd för avkodning av ACS-parametrar (Access Control Services) lagts till.
  • I kĂ€rnan har konfigurationen SPLIT_KERNEL_DEBUG lagts till, vilket möjliggör lagring av debugginginformation för kĂ€rnan och kĂ€rnmoduler i separata filer.
  • I ABI linux Ă€r implementeringen av vDSO (virtual dynamic shared objects) nĂ€stan klar, vilket tillhandahĂ„ller en begrĂ€nsad uppsĂ€ttning systemanrop som Ă€r tillgĂ€ngliga i anvĂ€ndarrummet utan att vĂ€xla kontext. ABI linux pĂ„ ARM64-system har nĂ„tt paritet med implementationen för AMD64-arkitekturen.
  • FörbĂ€ttrat stöd för hĂ„rdvara. Stöd för prestandaövervakning (hwpmc) för Intel Alder Lake CPU har lagts till. Drivrutinen iwlwifi för Intel trĂ„dlösa kort har uppdaterats för att stödja nya chip och standarden 802.11ac. Drivrutinen rtw88 för Realtek trĂ„dlösa kort med PCI-grĂ€nssnitt har lagts till. Möjligheterna för linuxkpi-lagret har utökats för anvĂ€ndning av FreeBSD-drivrutiner för Linux.
  • OpenSSL-biblioteket har uppdaterats till version 1.1.1t, LLVM/Clang till version 14.0.5, och SSH-servern samt klienten har uppdaterats till OpenSSH 9.2p1 (i föregĂ„ende version anvĂ€ndes OpenSSH 8.8p1). Även versionerna av bc 6.2.4, expat 2.5.0, file 5.43, less 608, libarchive 3.6.2, sendmail 8.17.1, sqlite 3.40.1, unbound 1.17.1, zlib 1.2.13 har uppdaterats.

Det har Àven meddelats om avveckling och borttagning av engÄngslösenord OPIE, drivrutinerna ce och cp, drivrutiner för kort med ISA-grÀnssnitt, verktygen mergemaster och minigzip, ATM-komponenter i netgraph (NgATM), bakgrundsprocessen telnetd och klassen VINUM i geom, som börjar frÄn FreeBSD 14.0.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster