Premiera OpenBSD 6.9

Została wydana wersja wolnego, wieloplatformowego systemu operacyjnego podobnego do UNIX, OpenBSD 6.9. Zaznacza się, że jest to 50. wydanie projektu, który w tym roku obchodzi 26-lecie. Projekt OpenBSD został założony przez Theo de Raadta w 1995 roku po konflikcie z deweloperami NetBSD, w wyniku którego Theo stracił dostęp do repozytorium CVS NetBSD. Po tym Theo de Raadt wraz z grupą zwolenników stworzył na bazie drzewa źródłowego NetBSD nowy otwarty system operacyjny, którego głównymi celami były przenośność (wsparcie dla 13 platform sprzętowych), standaryzacja, poprawna praca, aktywne bezpieczeństwo i zintegrowane środki kryptograficzne. Rozmiar pełnego obrazu ISO dla podstawowego systemu OpenBSD 6.9 wynosi 544 MB.

Oprócz samego systemu operacyjnego, projekt OpenBSD znany jest ze swoich komponentów, które zyskały popularność w innych systemach i ugruntowały swoją pozycję jako jedno z najbardziej bezpiecznych i jakościowych rozwiązań. Należą do nich: LibreSSL (fork OpenSSL), OpenSSH, filtr pakietów PF, demony routingu OpenBGPD i OpenOSPFD, serwer NTP OpenNTPD, serwer pocztowy OpenSMTPD, multiplexer terminali tekstowych (analog GNU screen) tmux, demon identd z implementacją protokołu IDENT, BSDL-alternatywa dla pakietu GNU groff — mandoc, protokół do organizacji systemów odpornych na awarie CARP (Common Address Redundancy Protocol), oraz lekki serwer http, narzędzie do synchronizacji plików OpenRSYNC.

Zaimplementowano wywołania systemowe waitid (oczekiwanie na zmianę stanu procesu), pinsyscall (do przekazywania informacji o punkcie wejścia execve w celu ochrony przed exploitami ROP), getthrname i setthrname (uzyskiwanie i ustalanie nazwy wątku).

  • Do sterownika softraid dodano tryb RAID1C, realizujący programowe RAID1 z szyfrowaniem danych.
  • В состав включены два новых фоновых процесса — dhcpleased и resolvd, которые работают вместе с slaacd и unwind для автоматической настройки сетевых интерфейсов и определения имён в DNS. В dhcpleased реализован протокол DHCP для получения IP-адресов, а в resolvd обеспечено управление содержимым resolv.conf на основе данных о серверах имён, полученных от dhcpleased, slaacd и драйверов наподобие umb.
  • Dodano wstępne wsparcie dla urządzeń Apple z procesorem M1. W tym zrealizowano rozpoznawanie rdzeni arm64 Apple Icestorm/Firestorm i dodano wsparcie dla bezprzewodowych chipów BCM4378 używanych w SoC Apple M1.
  • Poprawiona obsługa platformy powerpc64, rozwijanej dla 64-bitowych systemów opartych na procesorach POWER8 i POWER9. W porównaniu do poprzedniej wersji dla powerpc64 wprowadzono wsparcie dla mechanizmu ochrony RETGUARD, dodano sterownik astfb do buforu ramki Aspeed BMC, rozwiązano problemy z działaniem sterowników radeondrm i amdgpu w systemach z GPU AMD, do kompilacji jądra dla ramdysku dodano możliwość uruchamiania z sieci, dodano wsparcie dla trybów oszczędzania energii CPU POWER9, dodano wsparcie dla wyjątków generowanych podczas operacji na liczbach zmiennoprzecinkowych, wprowadzono obsługę IPMI dla systemów PowerNV.
  • Dla platform ARM64 zapewniono wsparcie CPU Cortex-A78AE, Cortex-X1 i Neoverse V1, wprowadzono zoptymalizowane dla ARM64 wersje wywołań copyin, copyout i kcopy, dodano sterownik cryptox dla wsparcia rozszerzeń kryptograficznych ARMv8 oraz sterownik smmu dla RM System MMU z obsługą Guard Page. Poprawiono wsparcie urządzeń Raspberry Pi, Rock Pi N10, NanoPi i Pinebook Pro.
  • W sterowniku video dodano parametr sysctl kern.video.record, który analogicznie do kern.audio.record zarządza włączeniem wyjścia pustego obrazu podczas próby nagrywania wideo (aby zmienić wartość przechwytywania, należy ustawić ją na 1). Procesy mają teraz pozwolenie na wielokrotne otwieranie urządzenia video (rozwiązuje problemy z używaniem kamer internetowych w Firefoxie i BigBlueButton).
  • Добавлены точки трассировки для вызовов malloc и free, позволяющие при помощи dt и btrace отслеживать связанную с распределением памяти активность. В btrace добавлена опция ‘-n’ для парсинга программы без выполнения каких-либо действий.
  • Udoskonalono wsparcie dla systemów wieloprocesorowych (SMP). Z ogólnej blokady jądra wyprowadzono implementację UNIX-socketów, dodano wspólny mutex do serializacji operacji z msgbuf, przekształcono w rozrachunek mp-safe wywołanie uvm_pagealloc, usunięto blokady wywołań getppid i sendsyslog.
  • Naprawiono problemy w komponentach DRM (Direct Rendering Manager), w tym usunięto awarie w sterowniku radeondrm w systemach Powerbook5/6 i RV350, nawiązano wsparcie DRI3 w sterownikach amdgpu i ati, dla zgodności z Linuxem wprowadzono tworzenie urządzeń w katalogu /dev/dri/.
  • Wprowadzono ulepszenia w hipernadzorze VMM. W backendzie do zarządzania maszynami wirtualnymi vmd dodano wsparcie dla uruchamiania skompresowanych ramdysków.
  • Wprowadzono ulepszenia w systemie audio. Zapewniono możliwość osobnego przypisania urządzeń dźwiękowych sndio tylko do odtwarzania i tylko do nagrywania. W sndiod zastosowano filtr dolnoprzepustowy o końcowej charakterystyce impulsowej (filtr FIR) ósmego rzędu, co pozwoliło na wyeliminowanie szumów wynikających z nakładania się widm przy ponownym próbkowaniu. Domyślnie wyłączona jest funkcja automatycznego zmniejszania głośności, gdy nowy program zaczyna odtwarzanie (autovolume), a domyślny poziom głośności ustawiono na 127. Zezwolono na miksowanie dźwięku z alternatywnych urządzeń, różniących się poziomem wspieranej funkcjonalności w sndiod.
  • Domyślnie włączono kompilację i instalację debuggera LLDB.
  • W rcctl, rc.subr i rc.d dodano wsparcie dla handlera logger, który umożliwia organizację wyjścia logów z procesów działających w tle, wysyłających dane do stdout/stderr.
  • Dla touchpadów zapewniono możliwość konfigurowania układu przycisków poprzez wsconsctl. W wscons poprawiono obsługę jednoczesnych dotknięć.
  • Dla urządzeń ARM64 wdrożono możliwość korzystania z APM w celu uzyskania danych o zużyciu energii i naładowaniu akumulatora. W celu ograniczenia dostępu procesu apmd do systemu plików zastosowano wywołanie unveil.
  • Rozszerzono wsparcie dla sprzętu. Dodano nowe sterowniki acpige (do obsługi zdarzeń ACPI, takich jak naciśnięcie przycisku zasilania), pchgpio (dla kontrolerów GPIO, które są wyposażone w nowoczesne Intel PCH), ujoy (dla kontrolerów gier), uhidpp (dla urządzeń Logitech HID++). Dodano wsparcie dla rozszerzeń AMD Vi i Intel VTD IOMMU, aby izolować urządzenia PCI i blokować nieprawidłowy dostęp do pamięci. Dodano wsparcie dla komputerów Lynloong LM9002/9003 i LM9013. W sterownikach pcamux i imxiic dodano wsparcie dla ACPI.
  • Poprawiono wsparcie dla kart sieciowych: mvpp (SFP+ i 10G dla Marvel Armada Ethernet), mvneta (1000base-x i 2500base-x), mvsw (swtich'e Marvel SOHO), rge (wsparcie dla Wake on LAN), Netgear ProSecure UTM25. Dla sterowników bezprzewodowych iwm, iwn i athn dodano wsparcie RA (802.11n Tx Rate Adaptation). W bezprzewodowym stosie wprowadzono automatyczny wybór trybów 11a/b/g/n/ac przy użyciu interfejsu sieciowego jako punktu dostępu.
  • В сетевом стеке реализован драйвер veb (Virtual Ethernet Bridge). Реализована поддержка режима мониторинга, при котором приходящие на сетевой интерфейс пакеты не передаются в сетевой стек для обработки, но к ним могут применяться механизмы анализа трафика, такие как BPF. Добавлен новый тип сетевых интерфейсов — etherbridge. Предоставлена возможность (команда route sourceaddr) переопределения исходного adresy IP dla programów, z pominięciem standardowego algorytmu wyboru adresu. Zapewniono automatyczne uruchamianie interfejsów sieciowych podczas włączania trybu automatycznej konfiguracji (AUTOCONF4 i AUTOCONF6).
  • W instalatorze zaimplementowano dostarczanie skompresowanego obrazu ram-dysku (bsd.rd) na wszystkich platformach obsługujących takie uruchamianie.
  • Реализован вывод через syslog предупреждения об использовании в printf подстановки форматирования строк «%n».
  • В демоне маршрутизации OpenBGPD добавлена поддержка протокола RTR (Resource Public Key Infrastructure (RPKI) to Router Protocol). Для отображения основной информации об RTR-сеансах добавлена команда «bgpctl show rtr».
  • Przeprowadzono restrukturyzację kodu ospfd i ospf6d w celu zjednoczenia ich z innymi demonami routingu oraz uproszczenia utrzymania. Ustanowiono wsparcie dla interfejsów sieciowych w trybie punkt-punkt.
  • Во встроенном HTTP-сервере httpd реализованы новые опции «location (found|notfound)» для проверки существования ресурсов.
  • W narzędziu rpki-client dodano wsparcie dla protokołu RRDP (The RPKI Repository Delta Protocol, RFC 8182). Umożliwiono wskazanie więcej niż jednego URI w pliku TAL.
  • W narzędziu dig zaimplementowano wsparcie dla RFC 8914 (Extended DNS Error) oraz RFC 8976 (ZONEMD).
  • В dhclient добавлена возможность указания опций в файлах hostname.if, используя строки «dhcp».
  • W demonie snmpd zaimplementowano pełne wsparcie dla konwersji Trapv1 na Trapv2 (RFC 3584). W snmpd.conf dodano nowe słowa kluczowe read, write i notify. W narzędziu snmp dodano wsparcie dla enumeracji SMI.
  • W DNS resolverze unwind dodano wsparcie dla DNS64 oraz przyjmowania połączeń przez port TCP.
  • W narzędziu ftp dodano wsparcie dla stałych przekierowań (RFC 7538) oraz możliwość wysłania nagłówka If-Modified-Since przy wysyłaniu zapytań przez HTTP/HTTPS.
  • В OpenSMTPD добавлена опция «-a» для выполнения аутентификации до отправки сообщения. Средства шифрования переведены на использования библиотеки libtls. В слушающих сокетах для TLS реализована возможность настройки нескольких сертификатов, выбираемых в зависимости от имени domeny (SNI).
  • В LibreSSL добавлена поддержка протокола DTLSv1.2. Реализована возможность сборки только libtls (‘—enable-libtls-only’) без libcrypto и libssl.
  • Zaktualizowano pakiet OpenSSH. Szczegółowy przegląd ulepszeń można zobaczyć tutaj: OpenSSH 8.5, OpenSSH 8.6.
  • Число портов для архитектуры AMD64 составило 11310, для aarch64 — 10943, для i386 — 10468. Среди версий приложений в портах: Xfce 4.16, Asterisk 18.3.0, Chromium 90.0.4430.72, FFmpeg 4.3.2, GCC 8.4.0, GNOME 3.38, Go 1.16.2, KDE Applications 20.12.3, Krita 4.4.3, LLVM/Clang 10.0.1, LibreOffice 7.0.5.2, Lua 5.3.6, MariaDB 10.5.9, Firefox 88.0 и ESR 78.10.0, Thunderbird 78.10.0, Node.js 12.16.1, PHP 8.0.3, Postfix 3.5.10, PostgreSQL 13.2, Python 3.9.2, Ruby 3.0.1, Rust 1.51.0.

    Zaktualizowano komponenty od zewnętrznych deweloperów wchodzące w skład OpenBSD 6.9:

    • Stos graficzny Xenocara oparty na X.Org 7.7 z xserver 1.20.10 + poprawki, freetype 2.10.4, fontconfig 2.12.4, Mesa 20.0.8, xterm 367, xkeyboard-config 2.20, fonttosfnt 1.2.1.
    • LLVM/Clang 10.0.1 (+ poprawki)
    • GCC 4.2.1 (+ poprawki) i 3.3.6 (+ poprawki)
    • Perl 5.32.1 (+ łatki)
    • NSD 4.3.6
    • Unbound 1.13.1
    • Ncurses 5.7
    • Binutils 2.17 (+ poprawki)
    • Gdb 6.3 (+ poprawka)
    • Awk 18.12.2020
    • Expat 2.2.10

К выходу релиза OpenBSD 6.9 приурочена новая песня «Vetera Novis».

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster