Rilascio di OpenBSD 7.7

È stato rilasciato OpenBSD 7.7, un sistema operativo UNIX-like libero. Il progetto OpenBSD è stato fondato da Theo de Raadt nel 1995 dopo un conflitto con gli sviluppatori di NetBSD, che ha portato alla chiusura dell'accesso di Theo al repository CVS di NetBSD. Successivamente, Theo de Raadt, insieme a un gruppo di sostenitori, ha creato un nuovo sistema operativo aperto basato sugli alberi di codice sorgente di NetBSD, i cui obiettivi principali di sviluppo erano portabilità (supporto per 13 piattaforme hardware), standardizzazione, corretto funzionamento, sicurezza proattiva e strumenti crittografici integrati. La dimensione dell'immagine ISO completa per l'installazione del sistema base OpenBSD 7.7 è di 746 MB.

Oltre al sistema operativo stesso, il progetto OpenBSD è noto per i suoi componenti che sono stati adottati in altri sistemi e si sono affermati come alcune delle soluzioni più sicure e di alta qualità. Tra questi: LibreSSL (fork di OpenSSL), OpenSSH, filtro dei pacchetti PF, demoni di routing OpenBGPD e OpenOSPFD, server NTP OpenNTPD, server di posta OpenSMTPD, multiplexer di terminale testuale (simile a GNU screen) tmux, demone identd con implementazione del protocollo IDENT, alternativa BSDL al pacchetto GNU groff — mandoc, protocollo per la creazione di sistemi tolleranti ai guasti CARP (Common Address Redundancy Protocol), server http leggero, utilità di sincronizzazione files OpenRSYNC.

Variazioni principali:

  • L'implementazione del framework drm (Direct Rendering Manager) è sincronizzata con il kernel Linux 6.12.21 (nella versione precedente - 6.6.52). Nel driver inteldrm è supportata la GPU utilizzata nei processori Intel basati sull'architettura Arrow Lake. Nel driver amdgpu è stato aggiunto il supporto per la GPU Ryzen AI 300 (Strix Point, Strix Halo, Krackan Point) e Radeon RX 9070 (Navi 48).
  • Nel porting per l'architettura ARM64 è stato implementato il supporto per l'insieme di istruzioni vettoriali SVE (Scalable Vector Extension). Nei sistemi con chip ARM Apple M1 è stata garantita la gestione dei stati di consumo energetico. Nel meccanismo di mappatura delle pagine fisiche in memoria (pmap, physical mapping) sono state ottimizzate le operazioni di svuotamento del buffer di traduzione associativa (TLB), che ha accelerato l'esecuzione del test di compilazione del kernel di circa il 5%. Su hardware con supporto per la crittografia QARMA3 per proteggere l'area utente, è stata abilitata l'autenticazione dei puntatori (PAC, Pointer Authentication Code).
  • Nei sistemi x86_64 per guest operating systems, eseguiti tramite QEMU, è stato implementato il supporto per il meccanismo AMD SEV (Secure Encrypted Virtualization), utilizzato nei sistemi di virtualizzazione per la protezione macchine virtuali contro le intrusioni da parte del hypervisor o dell'amministratore del sistema host. Nel driver psp, utilizzato per la configurazione e l'avvio dei sistemi guest con attivazione di AMD SEV, è stato aggiunto un comando per caricare il firmware nel chip.
  • Nei sistemi x86_64 è stata aggiunta la possibilità di allocare aree di memoria di dimensioni superiori a 4 GB per DMA.
  • Migliorato il supporto per le architetture RISC-V, Sparc64, HPPA, i386 e Powerpc64.
  • Migliorata la gestione delle situazioni di esaurimento della memoria nel sistema (OOM).
  • Nel meccanismo di tracciamento ptrace sono state aggiunte funzionalità che permettono di impostare nel debug gdb punti di interruzione in processi multithread. Sono stati aggiunti comandi per la lettura e scrittura dell'area in cui, nel processo monitorato, viene salvato lo stato del processore utilizzando l'istruzione XSAVE.
  • Nei script del linguaggio BT (BPFtrace o Bug Tracing), utilizzati nel sistema di tracciamento btrace, è stata aggiunta la supporto per costrutti multilinesi. L'utility btrace ha ricevuto profili aggiuntivi e nomi di intervalli temporali (hz, us, ms, s).
  • È stato aggiunto il parametro sysctl kern.audio.kbdcontrol, che, se impostato su 0, fa sì che i tasti multimedia per il controllo del volume sulla tastiera vengano trattati come normali tasti.
  • È stato migliorato il trattamento dei guasti e ampliate le verifiche durante il passaggio in modalità sospensione e attesa.
  • Il codice per fermare i processi all'arrivo di un segnale è stato rivisitato, risolvendo problemi di arresto dei processi multithread, che si manifestavano in pacchetti come golang e mpv.
  • È stata migliorata la supporto per sistemi multiprocessore (SMP). È stata garantita l'esecuzione parallela dei timer di input e output TCP, e le chiamate di sistema send() e recv() sono state convertite per utilizzare un blocco condiviso. Ora più thread utente possono lavorare in parallelo con diverse socket, e l'output TCP non blocca più l'elaborazione dei pacchetti IP.

    Sono state eliminate le restrizioni globali sulle chiamate di sistema open, openat, ptsignal, psignal e prsignal, così come su sysctl kern.timeout_stats, kern.allowkmem, kern.video.record, net.inet.gre.allow, net.inet.gre.wccp, kern.global_ptrace, kern.wxabort, kern.malloc.kmemstat. I driver psp, wsmouse e wstpad sono stati resi mp-safe, così come la struttura video_filtops.

  • Nel hypervisor VMM è stata implementata la possibilità di utilizzare acpipci per collegare i bus PCI.
  • È stata fornita la possibilità di definire una politica alternativa con impostazioni di prestazioni (perfpolicy), che vengono applicate quando il sistema funziona a batteria.
  • Nel comando sysctl è stata aggiunta l'opzione "-f file" per caricare tutte le impostazioni da un file in una sola volta. Negli script rc, la nuova opzione è stata applicata per caricare sysctl.conf per intero, invece di analizzarlo riga per riga.
  • Nel comando pkg_add è stata realizzata la chiamata a ldconfig, nel caso in cui la lista delle librerie condivise fosse cambiata a seguito dell'installazione di nuovi pacchetti.
  • Aggiunta la supporto per nuove apparecchiature. Migliorato il supporto per SoC MediaTek e Qualcomm Snapdragon (incluso X Elite). Migliorato il supporto per i dispositivi Samsung Galaxy Book4 Edge, ThinkPad T14 Gen 5, Vivobook, ThinkPad X1 Nano Gen 2, ThinkPad X13 e vari Chromebook. Aggiunto il driver ice per Intel E810 Ethernet 1Gb/10Gb/25Gb/50Gb/100Gb e il driver ixv per funzioni virtuali Intel Ethernet 82598EB, 82559 e X540. Continuato il lavoro per spostare l'esecuzione delle operazioni di rete sulle schede di rete.
  • In sysupgrade è stata implementata una modalità per aggiornamenti offline dei sistemi utilizzando pacchetti salvati nel filesystem locale.
  • Nell'utilità fw_update è stata aggiunta la possibilità di caricare (non installare) il firmware da un utente normale senza privilegi di root. Aggiunto il flag "-l" per visualizzare l'elenco dei driver e dei file.
  • Per il processo sshd-auth è stata attivata la protezione contro l'exploit delle vulnerabilità, basata sulla riconfigurazione casuale del file eseguibile ad ogni avvio del sistema (relink). La riconfigurazione rende imprevedibili gli offset delle funzioni, rendendo più difficile la creazione di exploit che utilizzano tecniche di programmazione orientata al ritorno.
  • Garantita l'isolamento del processo mountd utilizzando la syscall unveil.
  • Nel stack di rete è stato implementato il supporto per socket AF_FRAME e la famiglia di protocolli IFT_ETHER, consentendo alle applicazioni di inviare e ricevere frame Ethernet. Per i pacchetti UDP e TCP in uscita è stato adottato un nuovo metodo di hashing, ottimizzando la distribuzione del traffico tra le code e accelerando notevolmente (~20%) l'invio di UDP per IPv4/IPv6 e TCP per IPv6. Per il dispositivo tun è stato implementato l'ioctl TUNSCAP e ottimizzata l'interazione tra il kernel e lo spazio utente. Implementata una cache di routing separata per ogni thread. Nel driver vio è stata inclusa la modalità multiqueue.
  • Nell'utilità pfctl per interfacce e code di rete è stata consentita la definizione di una larghezza di banda superiore a 4Gbit.
  • In iked, implementazione del protocollo IKEv2 per IPsec, è stata aggiunta l'opzione "natt" per forzare l'uso di nat-t.
  • In relayd, processo in background per il reindirizzamento e il bilanciamento delle richieste, è stata implementata il supporto client. di certificati TLS.
  • Strumento di misurazione delle prestazioni di rete tcpbench ha aggiunto il supporto TLS.
  • In bgpd è stato implementato il supporto per RFC 8654 (BGP Extended Message), RFC 8538 (BGP Notification Message), l'opzione "reject as-set" è attivata di default, garantito il caching di Adj-RIB-Out.
  • In LibreSSL 4.1.0 è stata aggiunta la supporto sperimentale per l'architettura loongarch64, sono state proposte nuove implementazioni assembler per gli algoritmi SHA-1, SHA-256 e SHA-512 per l'architettura amd64 (è stata utilizzata l'istruzione SHA-NI), nuove implementazioni assembler per SHA-256 e SHA-512 per Aarch64 (è stato utilizzato l'espansione CE), l'implementazione di MD5 per amd64 è stata semplificata, è stata assicurata la memorizzazione nella cache dell'elenco dei certificati revocati (CRLs), è stata trasferita da BoringSSL l'implementazione di ML-KEM 768 e 1024.
  • Aggiornato OpenSSH. L'elenco dei cambiamenti è disponibile nell'annuncio di OpenSSH 10 (è stata rimossa la supporto per le firme digitali DSA, le operazioni di autenticazione sono state isolate in un processo separato sshd-auth, per impostazione predefinita è stato utilizzato l'algoritmo ibrido per lo scambio di chiavi 'mlkem768x25519-sha256').
  • Il numero di porte per l'architettura AMD64 è stato di 12593 (precedentemente 12312), per aarch64 – 12446 (precedentemente 12148), per i386 – 10429 (precedentemente 10534). Tra le versioni delle applicazioni nelle porte:
    • Asterisk 16.30.1, 18.26.1, 20.13.0 e 22.3.0
    • Audacity 3.7.3
    • CMake 3.31.6
    • Chromium 135.0.7049.52
    • Emacs 30.1
    • FFmpeg 6.1.2
    • GCC 8.4.0 e 11.2.0
    • GNOME 47
    • Go 1.24.1
    • JDK 8u442, 11.0.26, 17.0.14 e 21.0.6
    • KDE Gears 24.12.3
    • KDE Frameworks 6.12.0
    • KDE Plasma 6.3.3
    • Krita 5.2.9
    • LLVM/Clang 13.0.0, 16.0.6, 18.1.8, 19.1.7
    • LibreOffice 25.2.1.2
    • Lua 5.1.5, 5.2.4, 5.3.6, 5.4.7
    • MariaDB 11.4.5
    • Mono 6.12.0.199
    • Mozilla Firefox 137.0 e ESR 128.9.0
    • Mozilla Thunderbird 128.9.0
    • Mutt 2.2.14 e NeoMutt 20250113
    • Node.js 22.14.0
    • OpenLDAP 2.6.9
    • PHP 8.2.28, 8.3.19 e 8.4.5
    • Postfix 3.10.1
    • PostgreSQL 17.4
    • Python 2.7.18 e 3.12.9
    • Qt 5.15.16 (+ patch per il progetto KDE) e 6.8.2
    • Ruby 3.2.8, 3.3.7, 3.4.2
    • Rust 1.86.0
    • SQLite 3.49.1
    • Shotcut 25.01.25
    • Sudo 1.9.16p1
    • Suricata 7.0.7
    • Tcl/Tk 8.5.19 e 8.6.16
    • Vim 9.1.1265 e Neovim 0.10.4
    • Xfce 4.20.0
  • Aggiornati i componenti dei terzi fornitori inclusi in OpenBSD 7.7:
    • Stack grafico Xenocara basato su X.Org 7.7 con xserver 21.1.16 + patch, freetype 2.13.3, fontconfig 2.15.0, Mesa 23.3.6, xterm 395, xkeyboard-config 2.20, fonttosfnt 1.2.4.
    • LLVM/Clang 16.0.6 (+ patch)
    • GCC 4.2.1 (+ patch) e 3.3.6 (+ patch)
    • Perl 5.40.1 (+ patch)
    • NSD 4.9.1
    • Unbound 1.22.0
    • Ncurses 6.4
    • Binutils 2.17 (+ patch)
    • Gdb 6.3 (+ patch)
    • Awk 20250116
    • Expat 2.7.1
    • zlib 1.3.1 (+ patch)

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster