Wydanie OpenBSD 7.1

Została wydana wersja wolnego, wieloplatformowego systemu operacyjnego typu UNIX o nazwie OpenBSD 7.1. Projekt OpenBSD został założony przez Theo de Raadt w 1995 roku po konflikcie z deweloperami NetBSD, w wyniku którego dostęp Theo do repozytorium CVS NetBSD został zablokowany. Po tym incydencie Theo de Raadt i grupa współpracowników stworzyli nowy otwarty system operacyjny na bazie drzewa źródłowego NetBSD, którego głównymi celami rozwoju są przenośność (obsługuje 13 platform sprzętowych), standaryzacja, poprawność działania, proaktywne bezpieczeństwo i zintegrowane narzędzia kryptograficzne. Rozmiar pełnego obrazu ISO instalacyjnego podstawowego systemu OpenBSD 7.1 wynosi 580 MB.

Oprócz samego systemu operacyjnego, projekt OpenBSD znany jest z komponentów, które zyskały popularność w innych systemach i zostały uznane za jedne z najbardziej bezpiecznych oraz jakościowych rozwiązań. Wśród nich znajduje się: LibreSSL (fork OpenSSL), OpenSSH, filtr pakietów PF, demony routingu OpenBGPD i OpenOSPFD, serwer NTP OpenNTPD, pocztowy OpenSMTPD, multiplexer terminali tekstowych (odpowiednik GNU screen) tmux, demon identyfikacji identd z implementacją protokołu IDENT, alternatywa pakietu GNU groff - mandoc, protokół organizacji systemów odpornych na awarie CARP (Common Address Redundancy Protocol), lekki serwer http, oraz narzędzie do synchronizacji plików OpenRSYNC. serwer OpenSMTPD, multiplexer terminali tekstowych (odpowiednik GNU screen) tmux, demon identd z realizacją protokołu IDENT, BSDL-alternatywa dla pakietu GNU groff — mandoc, protokół organizujący systemy odporne na awarie CARP (Common Address Redundancy Protocol), 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).

  • Ogłoszono gotowość do użycia wsparcia dla komputerów Mac z procesorem ARM Apple M1 (Apple Silicon), takich jak Apple M1 Pro/Max oraz Apple T2 Macs. Dodano sterowniki dla SPI, I2C, kontrolera DMA, klawiatury, gładzika, zarządzania zasilaniem i wydajnością. Wsparcie dla Wi-Fi, GPIO, framebuffer, USB, wyświetlacza i dysków NVMe zostało zapewnione.
  • Poprawiono wsparcie dla architektury ARM64. Dodano sterowniki gpiocharger, gpioleds i gpiokeys, które zapewniają wsparcie dla ładowarek, podświetleń i przycisków podłączonych do GPIO (np. w Pinebook Pro). Dodano nowe sterowniki: mpfclock (kontroler zegara PolarFire SoC MSS), cdsdhc (kontroler gospodarza Cadence SD/SDIO/eMMC), mpfiic (kontroler I2C PolarFire SoC MSS) oraz mpfgpio (GPIO PolarFire SoC MSS).
  • Poprawiono wsparcie dla architektury RISC-V 64, w tym aktywacja sterowników uhid i fido, co umożliwia instalację na dyskach z GPT.
  • W narzędziu mount_msdos domyślnie włączono użycie długich nazw plików.
  • Przebudowano kod zbieracza śmieci dla gniazd unixowych.
  • sysctl hw.perfpolicy domyślnie ustawiono na wartość „auto”, co oznacza włączenie trybu pełnej wydajności przy podłączonym zasilaniu oraz zastosowanie adaptacyjnego algorytmu przy zasilaniu z akumulatora.
  • Udoskonalone wsparcie dla systemów wieloprocesorowych (SMP). Wprowadzono filtry zdarzeń nieanonimowych kanałów, kqread, dźwięku i gniazd w trybie mp-safe oraz mechanizm BPF. Wywołania systemowe poll, select, ppoll i pselect zostały przepisane i teraz są realizowane na bazie kqueue. Wywołania systemowe kevent, getsockname, getpeername, accept i accept4 pozbawiono blokad. Dodano interfejs jądra dla atomowych funkcji load i store, umożliwiających korzystanie z typów int i long w elementach struktur, na które zastosowano zliczanie referencji.
  • Realizacja frameworku drm (Direct Rendering Manager) została zsynchronizowana z jądrem Linux 5.15.26 (w poprzednim wydaniu - 5.10.65). W sterowniku inteldrm dodano wsparcie dla układów Intel opartych na mikroarchitekturach Elkhart Lake, Jasper Lake i Rocket Lake. W sterowniku amdgpu dodano wsparcie dla APU/GPU Van Gogh, Rembrandt 'Yellow Carp' Ryzen 6000, Navi 22 'Navy Flounder', Navi 23 'Dimgrey Cavefish' i Navi 24 'Beige Goby'.
  • W bibliotece FreeType wprowadzono subpikselowe renderowanie czcionek.
  • Dodano narzędzie realpath do wyświetlania absolutnej ścieżki do pliku.
  • Do narzędzia rcctl dodano polecenie „ls rogue” do wyświetlania procesów w tle, które są uruchomione, ale nie są uwzględnione w rc.conf.local.
  • W BPFtrace dodano wsparcie dla zmiennych w kontroli. Do btrace dodano skrypty kprofile.bt do profilowania stosu jądra i runqlat.bt do wykrywania opóźnień w działaniu planisty.
  • W libc dodano wsparcie dla RFC6840, definiującego obsługę flagi AD oraz ustawienia 'trust-ad' dla DNSSEC.
  • W apm i apmd dodano wyświetlanie prognozowanego czasu ładowania akumulatora.
  • Umożliwiono przechowywanie bazy danych capability w /etc/login.conf.d w celu uproszczenia dodawania klas kont przez pakiety.
  • W malloc zapewniono buforowanie regionów pamięci o rozmiarze od 128k do 2M.
  • W archiwatorze pax dodano wsparcie dla rozszerzonych nagłówków z danymi mtime, atime i ctime.
  • W narzędziach gzip i gunzip dodano opcję „-k” do zachowania oryginalnego pliku.
  • W narzędziu openrsync dodano opcje: „—compare-dest” do sprawdzania obecności plików w dodatkowych katalogach; „—max-size” i „—min-size” do ograniczenia rozmiaru plików.
  • Dodano polecenie seq do wyświetlania sekwencji liczb.
  • Z FreeBSD 13 przeniesiono uniwersalne oprogramowanie do implementacji funkcji trygonometrycznych (implementacje w assemblerze dla x86 zostały wyłączone).
  • Z FreeBSD przeniesiono implementację funkcji lrint, lrintf, llrint i llrintf (wcześniej stosowano implementację z NetBSD).
  • W narzędziu fdisk wprowadzono liczne zmiany i poprawki związane z pracą z partycjami dysków.
  • Dodano wsparcie dla nowego sprzętu, w tym kontrolera Intel PCH GPIO (dla platform Cannon Lake H i Tiger Lake H), NXP PCF85063A/TP RTC, Synopsys Designware UART, Intel 2.5Gb Ethernet, SIMCom SIM7600, RTL8156B, MediaTek MT7601U USB wifi, BCM4387 wifi.
  • W skład zestawu włączono przebudowane firmware dla bezprzewodowych chipów Realtek, umożliwiające korzystanie z driverów rsu, rtwn i urtwn bez ręcznego ładowania firmware.
  • W driverach ixl (Intel Ethernet 700), ix (Intel 82598/82599/X540/X550) i aq (Aquantia AQC1xx) dodano wsparcie dla sprzętowej obróbki znaczników VLAN oraz obliczania/sprawdzania sum kontrolnych dla IPv4, TCP4/6 i UDP4/6.
  • Dodano sterownik dźwięku dla chipów Intel Jasper Lake. Dodano wsparcie dla kontrolera gier XBox One.
  • W bezprzewodowym stosie IEEE 802.11 wprowadzono wsparcie dla kanałów 40MHz w trybie 802.11n oraz wstępną obsługę standardu 802.11ac (VHT). Do driverów dodano opcjonalny procesor skanowania w tle. Podczas wyboru punktu dostępowego priorytet mają teraz punkty z kanałami 5GHz, a dopiero później wybierane są punkty z kanałami 2GHz.
  • Przepisano implementację drivera vxlan, który teraz działa niezależnie od subsystemu bridge.
  • W instalatorze przeprojektowano logikę wywoływania narzędzia pkg_add w celu zmniejszenia intensywności przenoszenia plików podczas aktualizacji. W pliku install.site udokumentowano proces konfiguracji instalacji i aktualizacji. Dla wszystkich architektur dodano firmware, których dystrybucja jest dozwolona w produktach stron trzecich. Do instalacji własnościowych firmware dostępnych na nośniku instalacyjnym wykorzystano narzędzie fw_update.
  • W xterm z powodów bezpieczeństwa domyślnie wyłączono śledzenie myszy.
  • W usbhidctl i usbhidaction zapewniono izolację dostępu do systemu plików za pomocą systemowego wywołania unveil.
  • W dhcpd domyślnie zapewniono dołączenie do interfejsów sieciowych, które są w stanie nieaktywnym (‘down’), aby zapewnić odbiór pakietów zaraz po aktywacji interfejsu sieciowego.
  • W OpenSMTPD (smtpd) domyślnie włączono sprawdzanie TLS dla wychodzących połączeń „smtps://” i „smtp+tls://”.
  • W httpd zaimplementowano sprawdzanie wersji protokołu, dodano możliwość definiowania własnych plików z treściami błędów oraz poprawiono przetwarzanie danych w skompresowanej formie, w tym w httpd.conf dodano opcję gzip-static do dostarczania wcześniej skompresowanych plików ze znakiem gzip w nagłówku content-encoding.
  • W IPsec w parametrze proto w iked.conf zezwolono na wskazanie listy protokołów. Do narzędzia ikectl dodano polecenie „show certinfo” do wyświetlania zaufanych centrów certyfikacji i certyfikatów. W iked poprawiono obsługę fragmentowanych wiadomości.
  • W rpki-client dodano wsparcie dla weryfikacji otwartych kluczy BGPsec Router oraz ulepszono sprawdzanie certyfikatów X509. Dodano pamięć podręczną zweryfikowanych plików. Poprawiono zgodność z RFC 6488.
  • Do bgpd dodano parametr „port”, który można używać w sekcjach „listen on” i „neighbor” do wiązania z niestandardowym numerem portu sieciowego. Przeprowadzono refaktoryzację kodu do pracy z RIB (Routing Information Base), wykonaną z myślą o przyszłym wsparciu multipath.
  • W menedżerze okien konsolowych tmux („terminal multiplexer”) rozszerzono możliwości dla kolorowego wyjścia. Dodano polecenia pane-border-format, cursor-colour oraz cursor-style.
  • W LibreSSL dokonano portowania z OpenSSL wsparcia dla RFC 3779 (rozszerzenia X.509 dla adresów IP i systemów autonomicznych) oraz mechanizmu Certificate Transparency (niezależny publiczny rejestr wszystkich wydanych i unieważnionych certyfikatów, który umożliwia przeprowadzanie niezależnego audytu wszystkich zmian i działań centrów certyfikacji, a także pozwala na bieżące śledzenie wszelkich prób ukrytego tworzenia fałszywych wpisów). Znacząco poprawiono zgodność z OpenSSL 1.1 oraz wykorzystano identyczne z OpenSSL nazwy szyfrów dla TLSv1.3. Wiele funkcji przekształcono na użycie calloc(). W libssl i libcrypto dodano dużą porcję nowych wywołań.
  • Zaktualizowano pakiet OpenSSH. Szczegółowy przegląd ulepszeń można zobaczyć w przeglądach OpenSSH 8.9 i OpenSSH 9.0. Narzędzie scp domyślnie przeszło na użycie SFTP zamiast przestarzałego protokołu SCP/RCP.
  • Liczba portów dla architektury AMD64 wyniosła 11301 (wcześniej 11325), dla aarch64 — 11081 (wcześniej 11034), dla i386 — 10136 (wcześniej 10248). Wśród wersji aplikacji w portach: Asterisk 16.25.1, 18.11.1 i 19.3.1 Audacity 2.4.2 CMake 3.20.3 Chromium 100.0.4896.75 Emacs 27.2 FFmpeg 4.4.1 GCC 8.4.0 i 11.2.0 GNOME 41.5 Go 1.17.7 JDK 8u322, 11.0.14 i 17.0.2 KDE Applications 21.12.2 KDE Frameworks 5.91.0 Krita 5.0.2 LLVM/Clang 13.0.0 LibreOffice 7.3.2.2 Lua 5.1.5, 5.2.4 i 5.3.6 MariaDB 10.6.7 Mono 6.12.0.122 Firefox 99.0 i ESR 91.8.0 Thunderbird 91.8.0 Mutt 2.2.2 i NeoMutt 20211029 Node.js 16.14.2 OpenLDAP 2.4.59 PHP 7.4.28, 8.0.17 i 8.1.4 Postfix 3.5.14 PostgreSQL 14.2 Python 2.7.18, 3.8.13, 3.9.12 i 3.10.4 Qt 5.15.2 i 6.0.4 R 4.1.2 Ruby 2.7.5, 3.0.3 i 3.1.1 Rust 1.59.0 SQLite 2.8.17 i 3.38.2 Shotcut 21.10.31 Sudo 1.9.10 Suricata 6.0.4 Tcl/Tk 8.5.19 i 8.6.8 TeX Live 2021 Vim 8.2.4600 i Neovim 0.6.1 Xfce 4.16
  • Zaktualizowane komponenty od zewnętrznych dostawców wchodzące w skład OpenBSD 7.1:
    • Grafika sterownika Xenocara na bazie X.Org 7.7 z xserver 1.21.1 + łaty, freetype 2.11.0, fontconfig 2.12.94, Mesa 21.3.7, xterm 369, xkeyboard-config 2.20, fonttosfnt 1.2.2.
    • LLVM/Clang 13.0.0 (+ poprawki)
    • GCC 4.2.1 (+ poprawki) i 3.3.6 (+ poprawki)
    • Perl 5.32.1 (+ łatki)
    • NSD 4.4.0
    • Unbound 1.15.0
    • Ncurses 5.7
    • Binutils 2.17 (+ poprawki)
    • Gdb 6.3 (+ poprawka)
    • Awk 12.10.2021
    • Expat 2.4.7

Ź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