Byla uvedena verze svobodného multiplatformního operačního systému UNIX-like OpenBSD 7.0. Uvádí se, že se jedná o 51. vydání projektu, který 18. října oslaví 26 let. Projekt OpenBSD byl založen Theo de Raadtem v roce 1995 po konfliktu s vývojáři NetBSD, důsledkem čehož byla Theoovi uzavřena přístup k CVS repozitáři NetBSD. Poté Theo de Raadt s skupinou spolupracovníků vytvořil na základě zdrojového kódu NetBSD nový otevřený operační systém, jehož hlavními cíli rozvoje byly přenositelnost (podporováno 13 hardwarových platforem), standardizace, správná funkčnost, proaktivní bezpečnost a integrované kryptografické prostředky. Velikost plného instalačního ISO obrazu základního systému OpenBSD 7.0 činí 554 MB.
Kromě samotného operačního systému je projekt OpenBSD znám svými komponenty, které se rozšířily v jiných systémech a prokázaly se jako jedno z nejbezpečnějších a nejkvalitnějších řešení. Mezi nimi: LibreSSL (fork OpenSSL), OpenSSH, paketový filtr PF, démony směrování OpenBGPD a OpenOSPFD, NTP server OpenNTPD, poštovní server OpenSMTPD, multiplexer textového terminálu (analog GNU screen) tmux, démon identd s implementací protokolu IDENT, BSDL alternativa k balíku GNU groff — mandoc, protokol pro zajištění vysoké dostupnosti systémů CARP (Common Address Redundancy Protocol), lehký http server, utilita pro synchronizaci souborů OpenRSYNC.
Hlavní vylepšení:
- Byl přidán port pro 64bitové systémy na bázi architektury RISC-V. V současnosti je podpora zajištěna na deskách HiFive Unmatched a částečně na PolarFire SoC Icicle Kit.
- V portu pro platformy ARM64 byla vylepšena, ale zatím stále není dokončena, podpora zařízení Apple s procesorem M1. V aktuálním stavu je podporována instalace OpenBSD na disk s GPT a jsou k dispozici ovladače pro USB 3, NVME, GPIO a SPMI. Kromě M1 byla v portu ARM64 také rozšířena podpora pro Raspberry Pi 3 Model B+ a desky na bázi SoC Rockchip RK3399.
- Pro architekturu AMD64 je ve výchozím nastavení zakázán kompilátor GCC (zůstává pouze Clang). Předtím byl GCC zakázán pro architektury armv7 a i386.
- Byla ukončena podpora platformy SGI.
- Pro platformy amd64, arm64, i386, sparc64 a powerpc64 je ve výchozím nastavení povolena kompilace jádra s podporou systému dynamického sledování dt. Byl přidán poskytovatel kprobes pro shromažďování informací o událostech na úrovni jádra.
- V btrace byla implementována podpora operátorů „“ ve filtrech a zajištěn výstup doby strávené v prostoru uživatele při analýze jádra.
- Byl přidán konfigurační soubor /etc/bsd.re-config, který lze použít pro nastavení jádra během spuštění a pro zapnutí/vypnutí některých zařízení.
- Je zajištěno určení existence zařízení TPM 2.0 a správné provádění příkazů pro přechod do režimu spánku (řeší problém s probouzením notebooků ThinkPad X1 Carbon Gen 9 a ThinkPad X1 Nano).
- Implementace kqueue byla převedena na používání mutexů.
- Byla zavedena možnost nastavení velikosti bufferu pro sockety PF_UNIX prostřednictvím sysctl. Výchozí velikost bufferu byla zvýšena na 8 KB.
- Byla vylepšena podpora vícejádrových systémů (SMP). Volání pmap_extract() bylo převedeno do režimu mp-safe na systémech hppa a amd64. Z obecné zámky jádra byl vyjmut kód pro počítání odkazů na anonymní objekty, část zpracovatele výjimek a funkce lseek, connect a setrtable. Byly implementovány samostatné message buffery pro každý CPU při havárii (panic).
- Implementace frameworku drm (Direct Rendering Manager) byla synchronizována s jádrem Linux 5.10.65. V ovladači inteldrm byla vylepšena podpora čipů Intel založených na mikroarchitektuře Tiger Lake. V ovladači amdgpu byla zavedena podpora GPU Navi 12, Navi 21 „Sienna Cichlid“, Arcturus a APU Cezanne „Green Sardine“ Ryzen 5000.
- Byla přidána podpora nového hardwaru, včetně Aquantia AQC111U/AQC112U USB Ethernet, Aquantia 1/2.5/5/10Gb/s PCIe Ethernet, Cadence GEM, Broadcom BCM5725, RTL8168FP/RTL8111FP/RTL8117. Byla vylepšena podpora platforem Intel založených na mikroarchitektuře Tiger Lake. Byl přidán ovladač ucc pro klávesnice s rozhraním USB HID Consumer Control, které používají tlačítka pro volání aplikací, ovládání přehrávání zvuku a změnu hlasitosti.
- Byla vylepšena hypervizor VMM. Byl přidán limit 512 VCPU na virtuální stroj. Byly vyřešeny problémy se zámky VCPU. V backendu pro správu virtuálních strojů vmd byla přidána podpora ochrany před hostitelskými systémy se škodlivými ovladači virtio.
- Z NetBSD byla přenesena utilita timeout, která umožňuje omezit dobu provádění příkazů.
- V utilitě pro synchronizaci souborů openrsync byly implementovány možnosti „include“ a „exclude“.
- V utilitě ps byl zajištěn výstup informací o podpůrných skupinách.
- Do textového editoru mg byla přidána příkaz „dired-jump“.
- U utilitách fdisk a newfs byla vylepšena podpora disků se sektory o velikosti 4K. V fdisk byl přepracován kód inicializace MBR/GPT a bylo přidáno rozpoznávání GPT oddílů „BIOS Boot“, „APFS“, „APFS ISC“, „APFS Recovery“ (sic), „HiFive FSBL“ a „HiFive BBL“. Přidána možnost „-A“ pro inicializaci GPT bez odstranění zaváděcích oddílů.
- V utilitě traceroute byla implementována asynchronní zpracování kontrolních paketů a DNS dotazů pro zvýšení rychlosti.
- V utilitě doas jsou k dispozici tři pokusy o zadání hesla.
- V xterm byla zabezpečena izolace přístupu k souborovému systému pomocí systémového volání unveil(). Procesy ftpd jsou chráněny pomocí volání pledge.
- Byl zaveden záznam do logu o nesprávném používání formátovacího parametru „%n“ ve funkci printf.
- V implementaci IPsec v iked byla přidána podpora klientské konfigurace DNS.
- V snmpd je podpora protokolů SNMPv1 a SNMPv2c ve výchozím nastavení deaktivována ve prospěch používání SNMPv3.
- Ve výchozím nastavení jsou aktivovány procesy dhcpleased a resolvd, které umožňují konfiguraci adres IPv4 pomocí DHCP. Utilita dhclient zůstala v systému jako volba. Do utilitiy route byla přidána příkaz „nameserver“ pro předávání informací o serveru DNS do resolvd.
- V LibreSSL byla přidána podpora TLSv3 API OpenSSL 1.1.1 a aktivován nový X.509 validátor, který podporuje správnou kontrolu křížově podepsaných certifikátů.
- V OpenSMTPD byla přidána podpora voleb TLS „cafile=(cesta)“, „nosni“, „noverify“ a „servername=(název)“. V smtp je povoleno vybírat šifrovací a protokolové parametry TLS.
- Balíček OpenSSH byl aktualizován. Podrobný přehled vylepšení si můžete prohlédnout zde: OpenSSH 8.7, OpenSSH 8.8. Podpora digitálních podpisů rsa-sha byla deaktivována.
- Počet portů pro architekturu AMD64 dosáhl 11325, pro aarch64 – 11034, pro i386 – 10248. Mezi verzemi aplikací v portech: FFmpeg 4.4, GCC 8.4.0 a 11.2.0, GNOME 40.4, Go 1.17, JDK 8u302, 11.0.12 a 16.0.2, KDE Applications 21.08.1, KDE Frameworks 5.85.0, LLVM/Clang 11.1.0, LibreOffice 7.2.1.2, Lua 5.1.5, 5.2.4 a 5.3.6, MariaDB 10.6.4, Node.js 12.22.6, PHP 7.3.30, 7.4.23 a 8.0.10, Postfix 3.5.12, PostgreSQL 13.4, Python 2.7.18, 3.8.12 a 3.9.7, Qt 5.15.2 a 6.0.4, Ruby 2.6.8, 2.7.4 a 3.0.2, Rust 1.55.0, SQLite 3.35.5, Xfce 4.16.
- Byly aktualizovány komponenty od třetích stran, které jsou součástí OpenBSD 7.0:
- Grafický stack Xenocara na základě X.Org 7.7 s xserver 1.20.13 + patche, freetype 2.10.4, fontconfig 2.12.4, Mesa 21.1.8, xterm 367, xkeyboard-config 2.20, fonttosfnt 1.2.2.
- LLVM/Clang 11.1.0 (+ patche)
- GCC 4.2.1 (+ patche) a 3.3.6 (+ patche)
- Perl 5.32.1 (+ patche)
- NSD 4.3.7
- Unbound 1.13.3
- Ncurses 5.7
- Binutils 2.17 (+ patche)
- Gdb 6.3 (+ patche)
- Awk 18.12.2020
- Expat 2.4.1
Zdroj: opennet.ru
