Liberazione di FreeBSD 13.2 cù supportu Netlink è WireGuard

Dopu à 11 mesi di sviluppu, FreeBSD 13.2 hè statu liberatu. L'imaghjini di l'installazione sò generati per l'architetture amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 è riscv64. Inoltre, l'assemblee sò state preparate per sistemi di virtualizazione (QCOW2, VHD, VMDK, raw) è ambienti nuvola Amazon EC2, Google Compute Engine è Vagrant.

Cambiamenti chjave:

  • A capacità di creà snapshots di sistemi di schedari UFS è FFS cù logging attivatu (aghjurnamenti soft) hè stata implementata. Hè aghjuntu ancu u supportu per u salvamentu in fondu di i dumps (running dump cù a bandiera "-L") cù u cuntenutu di i sistemi di schedari UFS muntati quandu u ghjurnale hè attivatu. Una di e funziunalità chì ùn hè micca dispunibule quandu si usa u logu hè l'esekzione di fondo di cuntrolli di integrità cù l'utilità fsck.
  • A cumpusizioni di basa include un driver wg chì opera à u livellu di u kernel cù l'implementazione di una interfaccia di rete per VPN WireGuard. Per utilizà l'algoritmi criptografici richiesti da u driver, l'API di u criptu-sottosistema di u kernel FreeBSD hè stata allargata, à quale hè statu aghjuntu un arnese chì permette l'usu di algoritmi da a libreria libsodium chì ùn sò micca supportati in FreeBSD per mezu di a criptu-API standard. . Durante u prucessu di sviluppu, l'ottimisazione hè stata ancu realizata per equilibrà uniformemente l'associazione di e funzioni di criptografia di pacchetti è di decifrazione à i core di CPU, chì hà riduciutu l'overhead durante u processu di pacchetti WireGuard.

    L'ultimu tentativu di include WireGuard in FreeBSD hè statu fattu in 2020, ma hà finitu in un scandalu, per via di u quale u codice digià aghjuntu hè statu eliminatu per via di una qualità bassa, un travagliu trascuratu cù buffers, l'usu di stub invece di cuntrolli, implementazione incompleta. di u protocolu è a violazione di a licenza GPL. A nova implementazione hè stata preparata in cunghjunzione da i squadre di sviluppu core FreeBSD è WireGuard, cù cuntributi di Jason A. Donenfeld, autore di VPN WireGuard, è John H. Baldwin, un rinumatu sviluppatore FreeBSD. Una rivista completa di i cambiamenti hè stata fatta cù u sustegnu di a Fundazione FreeBSD prima chì u novu codice hè statu accettatu.

  • U supportu per u protocolu di cumunicazione Netlink (RFC 3549), utilizatu in Linux per urganizà l'interazzione di u kernel cù prucessi in u spaziu di l'utilizatori, hè statu implementatu. U prugettu hè limitatu à supportà a famiglia di operazioni NETLINK_ROUTE per a gestione di u statu di u sottosistema di a rete in u kernel, chì permette à FreeBSD di utilizà l'utilità IP Linux da u pacchettu iproute2 per gestisce l'interfacce di rete, stabilisce l'indirizzi IP, cunfigurà routing è manipule nexthop. l'uggetti chì guardanu dati statali utilizati per trasmette u pacchettu à a destinazione desiderata.
  • Tutti l'eseguibili di u sistema di basa nantu à e piattaforme 64-bit anu l'Address Space Layout Randomization (ASLR) attivatu per difettu. Per disattivà selettivamente ASLR, pudete aduprà i cumandamenti "proccontrol -m aslr -s disable" o "elfctl -e +noaslr".
  • In ipfw, i tavule radix sò usati per circà l'indirizzi MAC, chì permette di creà tavule cù l'indirizzi MAC è l'utilizanu per filtrà u trafficu. Per esempiu: 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
  • I moduli di kernel dpdk_lpm4 è dpdk_lpm6 sò stati aghjunti è sò dispunibuli per carica via loader.conf cù l'implementazione di l'algoritmu di ricerca di rotte DIR-24-8 per IPv4/IPv6, chì permette di ottimisà e funzioni di routing per ospiti cù tavule di routing assai grandi ( in testi, un aumentu di velocità di 25 hè osservatu %). Per cunfigurà i moduli, l'utilità di rotta standard pò esse usata (l'opzione FIB_ALGO hè stata aghjunta).
  • L'implementazione di u sistema di fugliale ZFS hè stata aghjurnata per liberà OpenZFS 2.1.9. U script di startup zfskeys furnisce un caricamentu automaticu di e chjave almacenate in u sistema di schedari ZFS. Aggiuntu un novu script RC zpoolreguid per assignà un GUID à unu o più zpools (per esempiu utili per l'ambienti di virtualizazione di dati spartuti).
  • L'hypervisor Bhyve è u modulu vmm supportanu l'attachete più di 15 CPU virtuali à u sistema invitatu (regulatu via sysctl hw.vmm.maxcpu). L'utilità bhyve implementa l'emulazione di u dispositivu virtio-input, cù quale pudete rimpiazzà l'eventi di input di u teclatu è u mouse in u sistema d'ospiti.
  • In KTLS, una implementazione di u protokollu TLS in esecuzione à u nivellu di u kernel FreeBSD, u supportu per l'accelerazione hardware di TLS 1.3 hè statu aghjustatu da u scaricamentu di alcune operazioni relative à u processu di pacchetti criptati in entrata à a carta di rete. In precedenza, una funzione simile era dispunibule per TLS 1.1 è TLS 1.2.
  • In u script di startup di growfs, quandu si espansione u sistema di schedarii radicali, hè pussibule aghjunghje una partizione di swap se una tale partizione era inizialmente mancante (per esempiu, utile à installà una maghjina di sistema pronta nantu à una carta SD). Per cuntrullà a dimensione di swap, un novu paràmetru growfs_swap_size hè statu aghjuntu à rc.conf.
  • U script di startup hostid assicura chì un UUID aleatoriu hè generatu se u schedariu /etc/hostid manca è l'UUID ùn pò micca esse acquistatu da u hardware. Hà aghjustatu ancu un schedariu /etc/machine-id cù una rapprisintazioni compatta di l'ID di l'ospitu (senza trattini).
  • I variabili defaultrouter_fibN è ipv6_defaultrouter_fibN sò stati aghjunti à rc.conf, per mezu di quale pudete aghjunghje rotte predeterminate à e tavule FIB altru da a primariu.
  • U supportu per l'hash SHA-512/224 hè statu aghjuntu à a biblioteca libmd.
  • A libreria pthread furnisce supportu per a semantica di e funzioni usate in Linux.
  • Aghjunghje supportu per a decodificazione di e chjama di u sistema Linux à kdump. Aggiuntu supportu per a traccia di chjama di u sistema in stile Linux à kdump è sysdecode.
  • L'utilità killall hà avà a capacità di mandà un signalu à i prucessi ligati à un terminal specificu (per esempiu, "killall -t pts/1").
  • Aghjunghje l'utilità nproc per vede u numeru di blocchi di computazione dispunibili à u prucessu attuale.
  • U supportu per a decodificazione di i parametri ACS (Access Control Services) hè statu aghjuntu à l'utilità pcconf.
  • U paràmetru SPLIT_KERNEL_DEBUG hè statu aghjuntu à u kernel, chì permette di salvà l'infurmazioni di debugging per u kernel è i moduli kernel in schedarii separati.
  • L'ABI Linux hè guasi cumpletu cù u supportu per u mecanismu vDSO (oggetti dinamichi virtuali spartuti), chì furnisce un settore limitatu di chjama di sistema dispunibuli in u spaziu di l'utilizatori senza cambià di cuntestu. L'ABI Linux nantu à i sistemi ARM64 hè statu purtatu à parità cù l'implementazione per l'architettura AMD64.
  • Supportu hardware migliuratu. Aghjunghje u supportu di monitoraghju di u rendiment (hwpmc) per i CPU Intel Alder Lake. U driver iwlwifi per e carte wireless Intel hè stata aghjurnata cù supportu per novi chips è u standard 802.11ac. Aggiuntu driver rtw88 per carte wireless Realtek cù interfaccia PCI. E capacità di a capa linuxkpi sò state allargate per l'usu cù i driver Linux in FreeBSD.
  • A libreria OpenSSL hè stata aghjurnata à a versione 1.1.1t, LLVM/Сlang à a versione 14.0.5, è u servitore SSH è u cliente sò stati aghjurnati à OpenSSH 9.2p1 (a versione precedente usava OpenSSH 8.8p1). Aghjurnate ancu e versioni bc 6.2.4, expat 2.5.0, file 5.43, menu 608, libarchive 3.6.2, sendmail 8.17.1, sqlite 3.40.1, unbound 1.17.1, zlib 1.2.13.

Inoltre, hè statu annunziatu chì, partendu da a filiera FreeBSD 14.0, password una volta OPIE, drivers ce e cp, drivers per carte ISA, utilità mergemaster è minigzip, cumpunenti ATM in netgraph (NgATM), u prucessu di fondo telnetd è u Classe VINUM in geom.

Source: opennet.ru

Add a comment