Bol spustený nová verzia voľnej UNIX-ako operačného systému OpenBSD 7.2. Projekt OpenBSD založil Theo de Raadt v roku 1995 po konflikte s vývojármi NetBSD, v dôsledku čoho mu bol zamietnutý prístup k CVS repozitáru NetBSD. Po tom Theo de Raadt so skupinou podobne mysliacich vytvoril na základe zdrojového kódu NetBSD novú otvorenú operačnú sústavu, ktorej hlavnými cieľmi vývoja sa stali prenositeľnosť (podporuje 13 hardvérových platforiem), štandardizácia, správna funkčnosť, proaktívna bezpečnosť a integrované kryptografické prostriedky. Veľkosť plného inštalačného ISO obrazu základného systému OpenBSD 7.2 je 556 MB.
Okrem samotného operačného systému je projekt OpenBSD známy svojimi komponentmi, ktoré sa rozšírili do iných systémov a overili sa ako jedny z najbezpečnejších a kvalitných riešení. Medzi nimi sú: LibreSSL (fork OpenSSL), OpenSSH, paketový filter PF, demon routing OpenBGPD a OpenOSPFD, NTP server OpenNTPD, poštový server OpenSMTPD, multiplexor textového terminálu (podobný GNU screen) tmux, demon identd s implementáciou protokolu IDENT, BSDL alternatíva k balíku GNU groff — mandoc, protokol pre organizovanie odolných systémov CARP (Common Address Redundancy Protocol), ľahký http server, nástroj na synchronizáciu súborov OpenRSYNC.
Hlavné vylepšenia:
- Bola vylepšená podpora systémov založených na architektúre ARM, vrátane podpory ARM čipov Apple M2 a Ampere Altra. Bola pridaná podpora notebooku Lenovo ThinkPad x13s a ďalších zariadení založených na SoC Qualcomm Snapdragon 8cx Gen 3 (SC8280XP).
- Bola pridaná možnosť načítania v prostrediach Oracle Cloud jadra pre ramdisk (bsd.rd) a jadra pre viacprocesorové systémy (bsd.mp).
- Bolo zahrnuté zariadenie kstat, ktoré exportuje štatistiku o práci jadra, ktorú je možné zobraziť pomocou nástroja kstat.
- Pre každé procesorové jadro s podporou MPERF/APERF boli implementované senzory frekvencie CPU. Pri prevádzke na akumulátor je zapnuté škálovanie frekvencie CPU v závislosti od záťaže.
- Na systémoch ARM64 byla pridaná počiatočná podpora režimu spánku. Limit počtu podporovaných CPU bol zvýšený na 256. Bolo implementované prepínanie z konzoly založenej na framebuffery (glass console) na konzolu založenú na sériovom porte (serial console).
- Bol odstránený kód pre identifikáciu CPU 386sx/386dx, NexGen, Rise a starších procesorov Cyrix, ktoré boli vydané pred čipom Cyrix M2.
- Bola vylepšená podpora viacprocesorových systémov (SMP). Do kategórie mp-safe boli prevedené funkcie obmedzenia priepustnosti (rate limit), vyhľadávanie ARP záznamov a route timer. Implementovala sa možnosť paralelného vykonávania operácií, ako sú obnovenie balíkov IPv4 a presmerovanie IP balíkov. V funkciach spracovania prichádzajúcich UDP a IP paketov boli pridané zámky soketov, ktoré používajú mutex. Od zámkov boli oslobodené systémové volania kbind a pledge. Implementovali sa zámky UNIX soketov, ktoré pôsobia na úrovni jednotlivých soketov.
- Realizácia rámca drm (Direct Rendering Manager) je synchronizovaná s jadrom Linux 5.15.69 (v predchádzajúcej verzii — 5.15.26). Do ovládača inteldrm bola pridaná podpora čipov Intel založených na mikroarchitektúrach Alder Lake a Raptor Lake. Bola implementovaná podpora framebufferov, ktoré nie sú zarovnané na hranici pamäťovej stránky (používajú sa napríklad v MacBook Pro 2021 14″ a 16″).
- Boli vykonané vylepšenia v hypervízore VMM. Do vmd bola pridaná podpora obslužných programov v používateľskom priestore na základe MMIO. Emulácia vstupných/výstupných portov bola prenesená do používateľského priestoru. Boli zjednotené vnútorné štruktúry a rozhrania v vmd, vmctl a vmm. Pridaná bola možnosť monitorovania virtuálních strojů pomocou SNMP AgentX, s použitím parametrov VM-MIB (RFC7666).
- Premenná $rcexec v skriptoch inicializácie rc.d bola nahradená funkciou rc_exec. Bol pridaný nový parameter daemon_execdir, ktorý umožňuje zmenu adresára pred vykonaním funkcie rc_exec. Do rc.d a rcctl bola pridaná nová akcia configtest na kontrolu syntaxe konfigurácie.
- Bol zahrnutý nástroj ts, ktorý pridáva k riadkom prijímaným cez štandardný vstup čas, ktorý odráža okamih prijatia každého riadku.
- Do nástroja ps bola pridaná možnosť „-f“ pre stromovú skupináciu procesov, ktorá odráža vzťah medzi rodičovskými a podriadenými procesmi.
- V nástroji openrsync bola implementovaná možnosť „—contimeout“ na určenie timeoutu pri nadväzovaní spojenia.
- V nástroji pkg_add je predvolene zapnuté cachovanie, optimalizovaná práca s balíčkami a zabezpečený výstup indikátora priebehu operácie počas prenosu údajov.
- Vo fdisk bola zlepšená práca s tabuľkami GPT a MBR, pridané sú varovania pri nevhodnom umiestnení oddielov MBR a GPT.
- V nástroji disklabel bola pridaná podpora kľúčového slova raid v šablónach na automatické umiestnenie oddielov s RAID. Bolo zrušené upravovanie informácií o geometrii disku. Bolo zrušené podporovanie atribútov ‘bs’ (veľkosť zavádzacieho bloku), ‘sb’ (veľkosť superbloku) a d[0-4] (údaje disku).
- Do adresára /usr/share/btrace bola umiestnená zbierka užitočných skriptov btrace na dynamické trasovanie a inspekciu aplikácií.
- Do zvukovej knižnice sndio bola pridaná funkcia sio_flush na okamžité zastavenie prehrávania.
- Bol zahrnutý nástroj llvm-profdata na prácu s dátami profilovania.
- V nástroji wc bol urýchlený počet slov.
- Pridala sa podpora nového hardvéru, vrátane nových ovládačov:
- aplaudio (zvukový systém Apple).
- aplmca (MCA ovládač Apple).
- aplsart (Apple SART).
- alpdc, apldchidev, apldckbd, apldcms, aplrtk (klávesnica a touchpad Apple M2).
- qcgpio, qciic (GPIO a GENI I2C ovládače pre Qualcomm Snapdragon).
- sfgpio, stfclock, stfpinctrl, stftemp (ovládače pre GPIO, časovač a senzory dosiek SiFive).
- sxirintc (ovládač prerušenia pre čipy Allwinner).
- gpiorestart (ovládač pre resetovanie cez GPIO).
- V ipmi bola rozšírená podpora senzorov napájania.
- V ehci bola pridaná podpora ovládača, ktorý sa používa v doskách Marvell 3720.
- V ovládači igc pre gigabitové Ethernet adaptéry Intel I225 bolo zahrnuté hardvérové urýchlenie výpočtu kontrolných súm pre IPv4, TCP a UDP. V ovládači ix pre Ethernet adaptéry Intel 82598/82599/X540/X550 bola implementovaná podpora hardvérového urýchlenia spracovania TCP segmentov (Large Receive Offloading), ktoré sa aktivuje pomocou voľby tso v ifconfig.
- V ovládači iwx bola implementovaná podpora čipov Intel AX210/AX211 a rozšírený zoznam rozpoznávaných bezdrôtových zariadení.
- Bola pridaná možnosť bootovania z oddielov softvérového RAID 1 (softraid) na systémoch amd64, sparc64 a arm64.
- V snmpd a xlock bola implementovaná separácia privilégií.
- Vo funkciách bind a connect pre UNIX sockety bola zaručená izolácia na základe systémového volania unveil.
- Bol pridaný nový systémový hovor ypconnect na vytvorenie socketu pre pripojenie s serverom YP, použijúc IP adresu zo zablokovaného súboru ypbinding. V ypldap bol pridaný režim 'local bind', kde sa realizuje viazanie RPC socketu na loopback interface, aby sa vylúčilo vonkajšie pripojenie so serverom.
- Programy umiestnené v adresári /sbin, ako hcpleased, mountd, nfsd, pflogd, resolvd, slaacd a unwind, boli prevedené na použitie dynamického linkovania na aktiváciu dodatočných bezpečnostných prostriedkov, ktoré sú použiteľné pre dynamicky linkované spustiteľné súbory.
- V sieťovom stacku boli implementované systémové volania sendmmsg a recvmmsg, ktoré umožňujú v rámci jedného systémového volania organizovať odosielanie a čítanie viacerých správ, čo by predtým vyžadovalo samostatné volania sendmsg a recvmsg.
- V balíkovom filtri pf bola zmenená obsluha paketov IGMP a ICMP6 MLD (Multicast Listener Discovery), čo umožnilo zabezpečiť správnu prácu s riadiacimi multicast paketmi v predvolenej konfigurácii. Implementovaná bola prísnejšia kontrola správ IGMP/MLD.
- V IPsec bola zlepšená práca so certifikátmi. V iked bola zlepšená kompatibilita s OpenIKED. Do príkazu ikectl show stats bol pridaný výstup štatistík o úspešných a zlyhaných pripojeniach k iked.
- Do bgpd bol pridaný filter max-communities na obmedzenie počtu povolených community, implementovaný bol RFC 9234 (Prevencia a detekcia únikov trás pomocou rolí v UPDATE a OPEN správach), zabezpečená bola úplná podpora RFC 7911 (Inzercia viacerých trás v BGP), statické hashovanie bolo nahradené RB-stromami na zvýšenie výkonu veľkých systémov. Bol pridaný proces bgplgd s implementáciou servera FastCGI, poskytujúceho REST API pre príkazy bgpctl.
- V rpki-client bola povolená práca s viacerými CRL URI v certifikátoch, implementovaný bol parameter skiplist na ignorovanie domén, pridala sa možnosť kontroly ASPA (Autonomous System Provider Authorization) a sig-súborov, bola implementovaná dekódovanie TAL (RFC 8630), sprísnila sa kontrola EE-certifikátov, zlepšila sa kompatibilita s špecifikáciami HTTP.
- V snmpd bolo povolené použitie mien objektov v snmpd.conf nielen OID. Implemetovaná bola možnosť nastaviť čiernu listinu na vylúčenie podstromov z výstupu. Do implementácie protokolu AgentX bola pridaná podpora master agenta.
- V httpd boli navrhnuté nové definície MIME typov.
- Nástroj ftp bol presunutý na používanie pripojení, ktoré sú spracovávané v neblokujúcom režime pomocou ppoll.
- Do tmux ("terminal multiplexer") bola pridaná možnosť používania ACL na organizovanie pripojenia viacerých používateľov cez jeden socket.
- Aktualizované balíky LibreSSL a OpenSSH. Podrobný prehľad vylepšení si môžete prezrieť v recenziách LibreSSL 3.6.0 a OpenSSH 9.1.
- Počet portov pre architektúru AMD64 vzrástol na 11451 (predtým 11301), pre aarch64 na 11261 (predtým 11081), pre i386 na 10225 (predtým 10136). Medzi verziami aplikácií v portoch:
- Asterisk 16.28.0, 18.14.0 a 19.6.0
- Audacity 2.4.2
- CMake 3.24.2
- Chromium 105.0.5195.125
- Emacs 28.2
- FFmpeg 4.4.2
- GCC 8.4.0 a 11.2.0
- GHC 9.2.4
- GNOME 42.4
- Go 1.19.1
- JDK 8u342, 11.0.16 a 17.0.4
- KDE Gear 22.08.1
- KDE Frameworks 5.98.0
- Krita 5.1.1
- LLVM/Clang 13.0.0
- LibreOffice 7.4.1.2
- Lua 5.1.5, 5.2.4 a 5.3.6
- MariaDB 10.9.3
- Mono 6.12.0.182
- Mozilla Firefox 105.0.1 a ESR 102.3.0
- Mozilla Thunderbird 102.3.0
- Mutt 2.2.7 a NeoMutt 20220429
- Node.js 16.17.1
- OCaml 4.12.1
- OpenLDAP 2.6.3
- PHP 7.4.30, 8.0.23 a 8.1.10
- Postfix 3.7.2
- PostgreSQL 14.5
- Python 2.7.18, 3.9.14 a 3.10.7
- Qt 5.15.6 a 6.3.1
- R 4.2.1
- Ruby 2.7.6, 3.0.4 a 3.1.2
- Rust 1.63.0
- SQLite 3.39.3
- Shotcut 22.06.23
- Sudo 1.9.11.2
- Suricata 6.0.6
- Tcl/Tk 8.5.19 a 8.6.12
- TeX Live 2021
- Vim 9.0.0192 a Neovim 0.7.2
- Xfce 4.16
- Aktualizované komponenty od tretích strán, ktoré sú súčasťou OpenBSD 7.2:
- Grafický stack Xenocara založený na X.Org 7.7 s xserver 1.21.4 + opravy, freetype 2.12.1, fontconfig 2.13.94, Mesa 22.1.7, xterm 372, xkeyboard-config 2.20, fonttosfnt 1.2.2.
- LLVM/Clang 13.0.0 (+ opravy)
- GCC 4.2.1 (+ opravy) a 3.3.6 (+ opravy)
- Perl 5.32.1 (+ opravy)
- NSD 4.6.0
- Unbound 1.16.3
- Ncurses 5.7
- Binutils 2.17 (+ záplaty)
- Gdb 6.3 (+ oprava)
- Awk 12.9.2022
- Expat 2.4.9
Zdroj: opennet.ru
