Vydanie OpenBSD 7.7

Predstavuje sa vydanie bezplatného operačného systému podobného UNIXu OpenBSD 7.7. Projekt OpenBSD založil Theo de Raadt v roku 1995 po konflikte s vývojármi NetBSD, v dôsledku čoho bol Theovi odmietnutý prístup k úložisku NetBSD CVS. Potom Theo de Raadt a skupina rovnako zmýšľajúcich ľudí vytvorili nový otvorený operačný systém založený na zdrojovom strome NetBSD, ktorého hlavnými vývojovými cieľmi boli prenosnosť (podporovaných je 13 hardvérových platforiem), štandardizácia, správna prevádzka, proaktívne zabezpečenie a integrované kryptografické nástroje. Úplný inštalačný ISO obraz základného systému OpenBSD 7.7 má 746 MB.

Okrem samotného operačného systému je projekt OpenBSD známy svojimi komponentmi, ktoré sa rozšírili aj v iných systémoch a osvedčili sa ako jedno z najbezpečnejších a najkvalitnejších riešení. Medzi nimi: LibreSSL (fork OpenSSL), OpenSSH, PF paketový filter, OpenBGPD a OpenOSPFD smerovacie démony, OpenNTPD NTP server, OpenSMTPD poštový server, textový terminálový multiplexer (analogicky k GNU obrazovke) tmux, identd démon s implementáciou protokolu IDENT, alternatíva BSDL Balík GNU groff - mandoc, protokol na organizovanie systémov odolných voči chybám CARP (Common Address Redundancy Protocol), ľahký http server, pomôcka na synchronizáciu súborov OpenRSYNC.

Hlavné zmeny:

  • Implementácia rámca drm (Direct Rendering Manager) je synchronizovaná s jadrom Linuxu 6.12.21 (v predchádzajúcom vydaní - 6.6.52). Ovládač inteldrm implementuje podporu pre GPU používané v procesoroch Intel založených na mikroarchitektúre Arrow Lake. Ovládač amdgpu bol aktualizovaný, aby podporoval GPU Ryzen AI 300 (Strix Point, Strix Halo, Krackan Point) a Radeon RX 9070 (Navi 48).
  • Port pre architektúru ARM64 implementuje podporu pre vektorovú inštrukčnú sadu SVE (Scalable Vector Extension). Na systémoch s čipmi Apple M1 ARM sa nastavujú stavy spotreby energie. V mechanizme mapovania stránok fyzickej pamäte (pmap) boli optimalizované operácie vyprázdnenia prekladového vyhľadávacieho buffera (TLB), čo zrýchlilo vykonávanie testu zostavy jadra približne o 5 %. Na hardvéri, ktorý podporuje šifru QARMA3, je povolený kód overenia ukazovateľa (PAC) na ochranu užívateľského priestoru.
  • V systémoch x86_64 bola pre hosťovské systémy bežiace pomocou QEMU implementovaná podpora mechanizmu AMD SEV (Secure Encrypted Virtualization), ktorý sa používa vo virtualizačných systémoch na ochranu. virtuálne stroje Pred rušením hypervízora alebo správcu hostiteľského systému. Do ovládača PSP, ktorý sa používa na konfiguráciu a spustenie hosťujúcich systémov s povoleným AMD SEV, bol pridaný príkaz na načítanie firmvéru do čipu.
  • Na systémoch x86_64 bola pridaná možnosť alokovať pamäťové oblasti väčšie ako 4 GB pre DMA.
  • Vylepšená podpora pre architektúry RISC-V, Sparc64, HPPA, i386 a Powerpc64.
  • Vylepšené riešenie situácií nedostatku pamäte (OOM).
  • Mechanizmus sledovania ptrace bol vylepšený, aby umožnil nastavenie bodov prerušenia vo viacvláknových procesoch v ladiacom nástroji gdb. Pridané príkazy na čítanie a zápis oblasti, kde monitorovaný proces ukladá stav procesora pri použití inštrukcie XSAVE.
  • Do skriptov BT (BPFtrace alebo Bug Tracing) používaných v systéme sledovania btrace bola pridaná podpora pre viacriadkové konštrukty. Do utility btrace boli pridané ďalšie profily a pomenovanie časových intervalov (hz, us, ms, s).
  • Pridaný parameter sysctl kern.audio.kbdcontrol, pri nastavení na 0 sa klávesy ovládania hlasitosti multimédií na klávesnici budú považovať za bežné klávesy.
  • Vylepšené spracovanie zlyhania a rozšírené kontroly pri prepnutí do režimu spánku a pohotovostného režimu.
  • Prepracovaný kód na zastavenie procesov pri prijatí signálu, ktorý vyriešil problémy so zastavením viacvláknových procesov, ktoré sa objavovali v balíkoch ako golang a mpv.
  • Vylepšená podpora pre viacprocesorové systémy (SMP). Vstupné a výstupné časovače TCP teraz môžu fungovať paralelne a systémové volania send() a recv() sú teraz nakonfigurované na používanie zdieľaného zámku. Viaceré užívateľské vlákna môžu teraz pracovať na rôznych soketoch paralelne a výstup TCP už neblokuje spracovanie IP paketov.

    Systémové volania open, openat, ptsignal, psignal a prsignal, ako aj kern.timeout_stats, kern.allowkmem, kern.video.record, net.inet.gre.allow, net.inet.gre.wccp, kern.global_ptrace, kern.wxabort, kern.wxabort, kern.malloc.kmemsys boli uvoľnené z globalstating. Ovládače psp, wsmouse a wstpad, ako aj štruktúra video_filtops boli presunuté do kategórie mp-safe.

  • Hypervízor VMM implementoval schopnosť používať acpipci na pripojenie zberníc PCI.
  • Poskytuje možnosť definovať alternatívnu politiku výkonu (perfpolicy), ktorá sa použije, keď je systém napájaný z batérie.
  • Príkaz sysctl má teraz možnosť "-f súbor" na načítanie všetkých nastavení zo súboru naraz. V rc skriptoch sa používa nová možnosť na načítanie sysctl.conf ako celku namiesto jeho analýzy riadok po riadku.
  • Príkaz pkg_add implementuje volanie ldconfig, ak sa zoznam zdieľaných knižníc zmenil v dôsledku inštalácie nových balíkov.
  • Pridaná podpora pre nový hardvér. Vylepšená podpora pre MediaTek a Qualcomm Snapdragon SoC (vrátane X Elite). Vylepšená podpora pre Samsung Galaxy Book4 Edge, ThinkPad T14 Gen 5, Vivobook, ThinkPad X1 Nano Gen 2, ThinkPad X13 a rôzne Chromebooky. Pridaný ovládač ice pre Intel E810 Ethernet 1Gb/10Gb/25Gb/50Gb/100Gb a ixv ovládač pre virtuálne funkcie Intel Ethernet 82598EB, 82559 a X540. Pokračovali práce na presune sieťových operácií na stranu sieťovej karty.
  • Sysupgrade má režim pre offline aktualizáciu systémov pomocou balíkov uložených v lokálnom súborovom systéme.
  • Pomôcka fw_update bola aktualizovaná, aby umožňovala sťahovanie (nie inštaláciu) firmvéru ako bežnému používateľovi bez práv root. Pridaný príznak "-l" na zoznam ovládačov a súborov.
  • Proces sshd-auth má povolenú ochranu proti zneužitiu zraniteľností, ktorá je založená na náhodnom prepojení spustiteľného súboru pri každom spustení systému (opätovné prepojenie). Rekombinantný kód robí ofsety funkcií menej predvídateľnými, čo sťažuje vytváranie exploitov, ktoré využívajú programovacie techniky orientované na návrat.
  • Pripojený proces je izolovaný pomocou systémového volania unveil.
  • Sieťový zásobník implementuje podporu pre zásuvky AF_FRAME a rodinu protokolov IFT_ETHER, čo umožňuje aplikáciám odosielať a prijímať ethernetové rámce. Pre odchádzajúce pakety UDP a TCP bola implementovaná nová metóda hashovania, ktorá optimalizovala distribúciu prevádzky cez fronty a výrazne (~20 %) zrýchlila odosielanie UDP pre IPv4/IPv6 a TCP pre IPv6. Zariadenie tun má implementovaný TUNSCAP ioctl a interakcia medzi jadrom a užívateľským priestorom bola optimalizovaná. Pre každý tok bola implementovaná samostatná vyrovnávacia pamäť smerovania. Ovládač vio má povolený režim viacerých front.
  • Nástroj pfctl umožňuje konfigurovať sieťové rozhrania a fronty s priepustnosťou vyššou ako 4 Gbit.
  • V iked, implementácii protokolu IKEv2 pre IPsec, bola pridaná možnosť „natt“, aby sa vynútilo použitie nat-t.
  • Relayd, proces na pozadí pre presmerovanie a vyvažovanie požiadaviek, teraz podporuje aj klientov. Certifikáty TLS.
  • Nástroj na meranie výkonu siete tcpbench pridal podporu TLS.
  • bgpd implementuje podporu pre RFC 8654 (BGP Extended Message), RFC 8538 (BGP Notification Message), možnosť „reject as-set“ je predvolene povolená a poskytuje sa ukladanie do vyrovnávacej pamäte Adj-RIB-Out.
  • LibreSSL 4.1.0 pridáva experimentálnu podporu pre architektúru loongarch64, ponúka nové implementácie assembleru pre algoritmy SHA-1, SHA-256 a SHA-512 pre architektúru amd64 (pomocou inštrukcie SHA-NI), nové implementácie assembleru pre SHA-256 a SHA-512 pre implementáciu simarch 64 CEMM pre rozšírenie ADM5 amd64, poskytuje ukladanie zoznamu zrušených certifikátov (CRL) do vyrovnávacej pamäte a preniesol implementáciu ML-KEM 768 a 1024 z BoringSSL.
  • OpenSSH bol aktualizovaný. Zoznam zmien nájdete v oznámení OpenSSH 10 (podpora digitálneho podpisu DSA bola odstránená, autentifikačné operácie boli rozdelené do samostatného procesu sshd-auth a štandardne sa používa hybridný algoritmus výmeny kľúčov „mlkem768x25519-sha256“).
  • Počet portov pre architektúru AMD64 bol 12593 (bol 12312), pre aarch64 - 12446 (bol 12148), pre i386 - 10429 (bol 10534). Medzi verziami aplikácií v portoch:
    • Hviezdička 16.30.1, 18.26.1, 20.13.0 a 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 a 11.2.0
    • GNOME 47
    • Choďte na 1.24.1
    • JDK 8u442, 11.0.26, 17.0.14 a 21.0.6
    • KDE Gears 24.12.3
    • Rámec KDE 6.12.0
    • KDE Plazma 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
    • Opica 6.12.0.199
    • Mozilla Firefox 137.0 a ESR 128.9.0
    • Mozilla Thunderbird 128.9.0
    • Mutt 2.2.14 a NeoMutt 20250113
    • Node.js 22.14.0
    • OpenLDAP 2.6.9
    • PHP 8.2.28, 8.3.19 a 8.4.5
    • Postfix 3.10.1
    • PostgreSQL 17.4
    • Python 2.7.18 a 3.12.9
    • Qt 5.15.16 (+ záplaty z projektu KDE) a 6.8.2
    • Ruby 3.2.8, 3.3.7, 3.4.2
    • Hrdza 1.86.0
    • SQLite 3.49.1
    • Shotcut 25.01.25
    • Sudo 1.9.16p1
    • Surikata 7.0.7
    • Tcl/Tk 8.5.19 a 8.6.16
    • Vim 9.1.1265 a Neovim 0.10.4
    • Xfce 4.20.0
  • Aktualizované komponenty tretích strán zahrnuté v OpenBSD 7.7:
    • Grafický zásobník Xenocara založený na X.Org 7.7 s xserver 21.1.16 + záplaty, 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 (+ záplaty)
    • GCC 4.2.1 (+ záplaty) a 3.3.6 (+ záplaty)
    • Perl 5.40.1 (+ záplaty)
    • 4.9.1 NSD
    • Bez obmedzenia 1.22.0
    • Zdravotné sestry 6.4
    • Binutils 2.17 (+ záplaty)
    • Gdb 6.3 (+ záplaty)
    • Awk 20250116
    • Expat 2.7.1
    • zlib 1.3.1 (+ záplaty)

Zdroj: opennet.ru

Pridať komentár