Ang FreeBSD 13.2 nga pagpagawas nga adunay suporta sa Netlink ug WireGuard

Pagkahuman sa 11 ka bulan nga pag-uswag, ang FreeBSD 13.2 gipagawas na. Ang mga imahe sa pag-install gihimo para sa amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64, ug riscv64 nga mga arkitektura. Dugang pa, giandam na ang mga build para sa virtualization system (QCOW2, VHD, VMDK, raw) ug Amazon EC2, Google Compute Engine ug Vagrant cloud environment.

Pangunang mga kausaban:

  • Gipatuman ang abilidad sa paghimo og mga snapshot sa UFS ug FFS file system nga adunay logging enabled (soft updates). Gidugang usab ang suporta alang sa pagtipig sa mga dump sa background (nagdagan nga dump nga adunay "-L" nga bandila) nga adunay sulud sa mga naka-mount nga UFS file system nga adunay pagpagana sa journaling. Sa mga bahin nga wala magamit sa paggamit sa journaling, adunay usa ka pagsusi sa integridad sa background gamit ang fsck utility.
  • Ang kinauyokan nga komposisyon naglakip sa wg driver, nga naglihok sa lebel sa kernel ug nagpatuman sa usa ka network interface para sa VPN WireGuard. Aron masuportahan ang mga cryptographic algorithm nga gikinahanglan sa driver, ang FreeBSD kernel crypto subsystem API gipalapdan, nga nagdugang og wrapper nga nagtugot sa paggamit sa mga wala gisuportahan nga algorithm gikan sa libsodium library pinaagi sa standard crypto API. Atol sa pag-develop, gihimo usab ang mga optimization aron parehas nga mabalanse ang alokasyon sa mga buluhaton sa encryption ug decryption sa mga CPU core, nga nagpamenos sa overhead sa pagproseso sa WireGuard packet.

    Ang katapusang pagsulay nga ilakip ang WireGuard sa FreeBSD gihimo kaniadtong 2020, apan natapos sa usa ka iskandalo, ingon usa ka sangputanan diin ang nadugang nga code gikuha tungod sa ubos nga kalidad, walay pagtagad nga pagdumala sa buffer, paggamit sa mga stub imbis nga mga tseke, dili kompleto nga pagpatuman sa protocol ug paglapas sa lisensya sa GPL. Usa ka bag-ong pagpatuman, hiniusang giandam sa kinauyokan nga FreeBSD ug WireGuard development teams, uban sa input gikan ni Jason A. Donenfeld, awtor sa VPN WireGuard, ug John H. Baldwin, inila nga FreeBSD developer. Ang bug-os nga pagrepaso sa mga pagbag-o gihimo uban ang suporta sa FreeBSD Foundation sa wala pa gidawat ang bag-ong code.

  • Ang suporta gipatuman para sa Netlink communications protocol (RFC 3549), nga gigamit sa Linux aron maorganisar ang mga interaksyon tali sa kernel ug user-space nga mga proseso. Ang proyekto limitado sa pagsuporta sa pamilya sa mga operasyon sa NETLINK_ROUTE para sa pagdumala sa kahimtang sa network subsystem sa kernel, nga nagtugot sa paggamit sa Linux ip utility gikan sa iproute2 package sa FreeBSD para sa pagdumala sa mga network interface, instalasyon, ug uban pang mga gimbuhaton. Mga IP address, mga setting sa routing, ug manipulasyon sa mga nexthop object nga nagtipig sa state data nga gigamit sa pagpasa sa usa ka packet ngadto sa gitinguha nga destinasyon.
  • Ang tanan nga base system executable sa 64-bit nga mga plataporma adunay Address Space Layout Randomization (ASLR) nga gipagana pinaagi sa default. Aron mapili nga ma-disable ang ASLR, mahimo nimong gamiton ang mga sugo nga "proccontrol -ma aslr -s disable" o "elfctl -e +noaslr".
  • Gigamit sa ipfw ang mga lamesa sa Radix aron pangitaon ang mga adres sa MAC, nga gitugotan ka nga maghimo mga lamesa nga adunay mga adres sa MAC ug gamiton kini aron masala ang trapiko. Pananglitan: ipfw table 1 paghimo og 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
  • Gidugang ug magamit alang sa pagkarga pinaagi sa loader.conf mao ang dpdk_lpm4 ug dpdk_lpm6 kernel modules nga adunay pagpatuman sa DIR-24-8 nga ruta sa pagpangita sa algorithm alang sa IPv4/IPv6, nga nagtugot kanimo nga ma-optimize ang mga function sa pag-ruta alang sa mga host nga adunay daghang mga lamesa sa ruta (mga pagsulay. nagpakita sa usa ka tulin nga pagtaas sa 25 %). Ang standard nga ruta utility mahimong magamit sa pag-configure sa mga module (ang FIB_ALGO nga kapilian gidugang).
  • Ang pagpatuman sa ZFS file system gi-update sa pagpagawas sa OpenZFS 2.1.9. Ang zfskeys startup script naghatag og awtomatik nga pagkarga sa mga yawe nga gitipigan sa ZFS file system. Gidugang ang usa ka bag-ong RC script zpoolreguid aron ma-assign ang usa ka GUID sa usa o daghan pa nga mga zpool (mapuslanon alang sa gipaambit nga mga palibot sa virtualization sa datos, pananglitan).
  • Ang Bhyve hypervisor ug ang vmm module nagsuporta sa paglakip sa labaw sa 15 ka virtual nga mga CPU sa guest system (mapasibo pinaagi sa sysctl hw.vmm.maxcpu). Ang bhyve utility nagpatuman ug emulation sa virtio-input device, diin mahimo nimong ilisan ang keyboard ug mouse input nga mga panghitabo sa guest system.
  • Ang KTLS, usa ka pagpatuman sa TLS protocol nga nagdagan sa lebel sa FreeBSD kernel, nakadugang og suporta alang sa TLS 1.3 hardware acceleration pinaagi sa pag-offload sa pipila ka mga operasyon nga may kalabutan sa pagproseso sa mga naka-encrypt nga umaabot nga mga pakete sa mga abaga sa network card. Kaniadto, kini nga bahin magamit alang sa TLS 1.1 ug TLS 1.2.
  • Sa script sa pagsugod sa growfs, kung gipalapdan ang gamut nga FS, gisiguro nga ang usa ka partisyon sa swap idugang kung ang ingon nga partisyon wala sa orihinal (pananglitan, kini mapuslanon kung mag-install usa ka andam nga imahe sa sistema sa usa ka SD card). Usa ka bag-ong opsyon, growfs_swap_size, gidugang sa rc.conf aron makontrol ang swap size.
  • Ang hostid startup script nagsiguro nga usa ka random nga UUID ang mamugna kung ang /etc/hostid file nawala ug ang UUID dili makuha gikan sa hardware. Gidugang usab ang /etc/machine-id file nga adunay usa ka compact representation sa host id (walay dashes).
  • Ang defaultrouter_fibN ug ipv6_defaultrouter_fibN nga mga variable gidugang sa rc.conf, diin mahimo nimong idugang ang mga default nga ruta sa FIB nga mga lamesa gawas sa panguna.
  • Ang suporta alang sa SHA-512/224 hash gidugang sa libmd library.
  • Ang pthread library nagpatuman og suporta para sa semantics sa mga function nga gigamit sa Linux.
  • Ang suporta alang sa pag-decode sa mga tawag sa sistema sa Linux gidugang sa kdump. Ang suporta alang sa Linux-style nga pagsubay sa syscall gidugang sa kdump ug sysdecode.
  • Ang killall utility karon adunay abilidad sa pagpadala sa usa ka signal sa mga proseso nga gigapos sa usa ka piho nga terminal (pananglitan, "killall -t pts/1").
  • Gidugang ang nproc utility aron ipakita ang gidaghanon sa mga computational unit nga magamit sa karon nga proseso.
  • Ang suporta alang sa pag-decode sa mga parameter sa ACS (Access Control Services) gidugang sa pciconf utility.
  • Ang setting sa SPLIT_KERNEL_DEBUG gidugang sa kernel, nga nagtugot sa pagtipig sa impormasyon sa pag-debug alang sa kernel ug kernel modules ngadto sa lain nga mga file.
  • Ang linux ABI halos kompleto na sa suporta para sa vDSO (virtual dynamic shared objects) nga mekanismo, nga naghatag ug limitadong set sa system call nga anaa sa user space nga walay context switching. Ang linux ABI sa mga sistema sa ARM64 gidala sa pagkaparehas sa pagpatuman alang sa arkitektura sa AMD64.
  • Gipauswag nga suporta sa hardware. Gidugang nga suporta sa performance monitoring (hwpmc) para sa Intel Alder Lake CPUs. Gi-update nga iwlwifi driver alang sa Intel wireless card nga adunay suporta alang sa bag-ong mga chips ug 802.11ac standard. Gidugang rtw88 driver alang sa Realtek PCI wireless cards. Gipalugway ang linuxkpi layer para magamit sa mga driver sa FreeBSD Linux.
  • Ang librarya sa OpenSSL gi-update sa bersyon 1.1.1t, ang LLVM/Сlang gi-update sa bersyon 14.0.5, ug ang SSH server ug kliyente gi-update sa OpenSSH 9.2p1 (ang miaging bersyon naggamit sa OpenSSH 8.8p1). Gi-update usab ang 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.

Dugang pa, kini wala na gamita ug gitangtang sukad sa FreeBSD 14.0 nga sanga alang sa OPIE usa ka higayon nga mga password, ce ug cp driver, ISA card driver, mergemaster ug minigzip utilities, ATM component sa netgraph (NgATM), ang telnetd background nga proseso, ug ang VINUM klase sa geom.

Source: opennet.ru

Idugang sa usa ka comment