Predstavljena je izdaja prostega UNIX-podobnega operacijskega sistema OpenBSD 7.5. Projekt OpenBSD je ustanovil Theo de Raadt leta 1995 po sporu z razvijalci NetBSD, kar je povzročilo, da je imel Theo onemogočen dostop do CVS repozitorija NetBSD. Po tem je Theo de Raadt s skupino somišljenikov ustvaril na osnovi drevesa izvorne kode NetBSD nov odprt operacijski sistem, katerega glavni cilji so postali prenosljivost (podpira 13 strojnih platform), standardizacija, dosledno delovanje, proaktivna varnost in integrirana kriptografska sredstva. Velikost celotne namestitvene ISO-slike osnovnega sistema OpenBSD 7.5 znaša 630 MB.
Poleg samega operacijskega sistema je projekt OpenBSD znan po svojih komponentah, ki so se razširile v druge sisteme in se dokazale kot ena izmed najbolj varnih in kakovostnih rešitev. Med njimi so: LibreSSL (fork OpenSSL), OpenSSH, paketni filter PF, demoni usmerjanja OpenBGPD in OpenOSPFD, NTP strežnik OpenNTPD, poštni strežnik OpenSMTPD, multiplexer besedilnega terminala (analoga GNU screen) tmux, demon identd z implementacijo protokola IDENT, BSDL-alternativa paketu GNU groff — mandoc, protokol za organizacijo odpornosti sistemov CARP (Common Address Redundancy Protocol), lahki http strežnik, orodje za sinhronizacijo datotek OpenRSYNC.
Glavne izboljšave:
- V namestitveni program je dodana podpora za šifriranje korenskega razdelka. V avtomatiziranem načinu namestitve (autoinstall) je omogočeno vključevanje šifriranja diskov z določitvijo gesla v odprtem besedilu ali dostavo ključev na ločenem nosilcu. Zgradbe za arhitekturo AMD64 cdXX.iso in installXX.iso so prilagojene za zagon v EFI načinu.
- Dodana je sistemska klica pinsyscalls, ki omogoča dovoljenje za dostop do sistemskih klicev le iz določenih mest v naslovnem prostoru procesa. Jedro in ld.so lahko registrirata točno mesto vnosa v vsak sistemski klic, ki ga uporablja program in knjižnica libc.so, za poznejšo blokado pošiljanja sistemskih klicev iz neregistriranih mest.
- Podpora posrednega dostopa do sistemskih klicev prek funkcije syscall je bila odstranjena. V kombinaciji s pinsyscalls ta sprememba omogoča prepoved neposrednega dostopa do sistemskih klicev brez uporabe oblog, ki jih zagotavlja libc. Paketi, ki vključujejo neposreden dostop do sistemskih klicev, kot sta Perl in Go, so bili spremenjeni, da uporabljajo le funkcije libc.
- Na sistemih ARM64 je bilo razširjeno uporabljanje mehanizmov preverjanja veljavnosti pokazateljev (PAC — Pointer Authentication) in prepoznavanja vej (BTI — Branch Target Identification).
- V omrežnem vmesniku ppp je bila dodana podrška za IPv6.
- V orodju netstat je bila uvedena možnost prikaza statistike o učinkovitosti predpomnjenja poti (v izpisu „netstat -s“ so zdaj prikazani števcem zadetkov in zgrešenih zadetkov predpomnilnika).
- V paketnem filtru pf so upoštevane spremembe v omrežnem skladu, povezane s paralelizacijo operacij na večprocesnih sistemih. Pri izvajanju orodja tcpdump z omrežnim vmesnikom pflog je omogočen prikaz paketov, ki so bili zavrnjeni pri sprožitvi pravila po privzetku z dejanjem „block“. Pri pravilih z dejanjem „pass“ je omogočeno prikazovanje blokiranih neveljavnih paketov. V divert je bila dodana preiskava pravilnosti nastavitev možnosti v paketih IPv4.
- Izboljšana podpora za večprocesne sisteme (SMP). V razred mp-safe so premeščeni obdelovalci časovnih omejitev v omrežnem skladu, štetje paketov za vmesnik loopback in modul vscsi_filtops. Omogočeno je paralelno izvajanje sistemskih klicev bind in connect, pa tudi operacij s tabelami UDP za IPv4 in IPv6. Dodana je podpora za hkratno pošiljanje UDP paketov iz različnih niti.
- Izboljšano obvladovanje situacij prenasičenja področja izmenjevanja, dodane spremembe za preprečevanje medsebojnih zaklenitev.
- V jedru za sisteme arm64 je bilo uvedeno predpomnjenje vsebine skladišč tabel strani pomnilnika in PTE-deskriptorjev, kar je bistveno pospešilo delovanje na večjedrnih sistemih.
- VMM гипервизор был улучшен. Реализация vionet была переписана для поддержки многопоточности и передачи данных между хостом и гостевой системой в режиме zero-copy, без промежуточной буферизации. Повышена стабильность работы гипервизора на системах с Intel VMX инструкциями. Добавлена дополнительная защита от недавно выявленных уязвимостей в процессорах, связанных со спекулятивным выполнением инструкций и утечками остаточных данных из регистров.
- Для amd64 систем добавлен sysctl machdep.retpoline для управления включением механизма retpoline, чтобы защититься от атак класса Spectre.
- Реализация фреймворка drm (Direct Rendering Manager) синхронизирована с ядром Linux 6.6.19 (в предыдущем выпуске — 6.1.55).
- Добавлена поддержка нового оборудования и новые драйверы, связанные с компонентами различных SoC, поддержкой Ethernet-контроллеров и делегированием выполнения сетевых операций на сетевые карты.
- В звуковой подсистеме uaudio разрешено прикрепление нескольких драйверов для звуковых устройств.
- Добавлены драйверы apldcp и apldrm для контроллеров дисплея, используемых в устройствах Apple. Для Apple Powerbook реализована возможность управления подсветкой клавиатуры.
- Добавлен драйвер qwx для беспроводных чипов Qualcomm IEEE 802.11ax, созданный путем портирования драйвера ath11k из ядра Linux (входит в ядро, начиная с ветки 5.6). Драйвер позволяет использовать беспроводные адаптеры, применяемые в таких ноутбуках, как Lenovo ThinkPad X13s и DELL XPS 9500. Для работы драйвера требуется установка файлов с прошивкой.
- В утилиту pax добавлена возможность записи в pax-архивы, а в утилиту tar добавлена поддержка pax-архивов размером более 8 ГБ.
- В утилиту ifconfig добавлена поддержка указания номеров портов для туннельных сетевых интерфейсов, таких как gif и gre.
- В bgpd механизм передачи сообщений и большинство парсеров протоколов переведены на новый API безопасной работы с памятью.
- В rpki-client добавлена экспериментальная поддержка алгоритма цифровых подписей P-256. Реализована возможность ограничения действия RPKI Trust Anchor только для определённых номеров автономных систем. Добавлена поддержка списков подписанных префиксов RPKI (Signed Prefix List).
- В smtpd добавлена поддержка RFC 7505 («Null MX» для идентификации domena, ki ne sprejemajo e-pošte) in omogočeno je vgradnjo večvrstičnih tabel in seznamov s filtri v smtpd.conf.
- Omogočena je namestitev uporabniškega okolja KDE Plasma 5.27 iz paketov kde-plasma in kde-plasma-extra (po prenehanju podpore za KDE4 je podpora za uporabo delovne površine KDE Plasma 5 ostala v OpenBSD neobvladljiva). Na voljo so različice KDE Plasma 5.27.10, KDE Applications 23.08.4 in KDE Frameworks 5.115.0.
- Posodobljeni so paketi LibreSSL in OpenSSH. Podrobne informacije o izboljšavah si lahko ogledate v pregledih LibreSSL 3.9.0, OpenSSH 9.6 in OpenSSH 9.7.
- Število paketov za arhitekturo AMD64 je znašalo: 12309 (prej 11845), za aarch64 — 12145 (prej 11508), za i386 — 10830 (prej 10603). Med različicami aplikacij v paketih:
- Asterisk 16.30.1, 18.21.0, 20.6.0
- Audacity 3.4.2
- CMake 3.28.3
- Chromium 122.0.6261.111
- FFmpeg 4.4.4
- Firefox 123.0.1, ESR 115.8.0
- GCC 8.4.0, 11.2.0
- GHC 9.6.4
- GNOME 45
- Go 1.22.1
- JDK 8u402, 11.0.22, 17.0.10, 21.0.2
- Krita 5.2.2
- LLVM/Clang 13.0.0, 16.0.6, 17.0.6
- LibreOffice 24.2.1.2
- Lua 5.1.5, 5.2.4, 5.3.6, 5.4.6
- MariaDB 10.9.8
- Mono 6.12.0.199
- Mutt 2.2.13 in NeoMutt 20240201
- Node.js 18.19.1
- OCaml 4.14.1
- OpenLDAP 2.6.7
- PHP 7.4.33, 8.0.30, 8.1.27, 8.2.16, 8.3.3
- Postfix 3.8.6
- PostgreSQL 16.2
- Python 2.7.18, 3.9.18, 3.10.13, 3.11.8
- Qt 5.15.12 (+ kde popravki), 6.6.1
- R 4.2.3
- Ruby 3.1.4, 3.2.3, 3.3.0
- Rust 1.76.0
- SQLite 3.44.2
- Shotcut 23.07.29
- Sudo 1.9.15.5
- Suricata 7.0.3
- Tcl/Tk 8.5.19, 8.6.13
- TeX Live 2023
- Thunderbird 115.8.1
- Vim 9.1.139, Neovim 0.9.5
- Xfce 4.18.1
- Posodobljeni so komponenti tretjih proizvajalcev, ki so vključene v OpenBSD 7.5:
- Grafični sklop Xenocara na osnovi X.Org 7.7 z xserver 21.1.11 + popravki, freetype 2.13.0, fontconfig 2.14.2, Mesa 23.1.9, xterm 378, xkeyboard-config 2.20, fonttosfnt 1.2.3.
- LLVM/Clang 16.0.6 (+ popravki)
- GCC 4.2.1 (+ popravki) in 3.3.6 (+ popravki)
- Perl 5.36.3 (+ popravki)
- NSD 4.8.0
- Unbound 1.18
- Ncurses 5.7
- Binutils 2.17 (+ popravki)
- Gdb 6.3 (+ popravki)
- Awk 22.01.2024
- Expat 2.6.0.
- zlib 1.3.1 (+ popravki).
Izvor: opennet.ru
