Випуск OpenBSD 7.0

Представлено випуск вільної крос-платформної UNIX-подібної операційної системи OpenBSD 7.0. Зазначається, що це 51-й випуск проекту, якому 18 жовтня виповниться 26 років. Проект OpenBSD був заснований Тео де Раадтом (Theo de Raadt) в 1995 після конфлікту з розробниками NetBSD, в результаті якого для Тео був закритий доступ до CVS репозиторію NetBSD. Після цього Тео де Раадт із групою однодумців створив на базі дерева вихідних текстів NetBSD нову відкриту операційну систему, головними цілями розвитку якої стали переносимість (підтримується 13 апаратних платформ), стандартизація, коректна робота, проактивна безпека та інтегровані криптографічні засоби. Розмір повного настановного ISO-образу базової системи OpenBSD 7.0 складає 554 МБ.

Окрім безпосередньо операційної системи, проект OpenBSD відомий своїми компонентами, які набули поширення в інших системах та зарекомендували себе як одні з найбільш безпечних та якісних рішень. Серед них: LibreSSL (форк OpenSSL), OpenSSH, пакетний фільтр PF, демони маршрутизації OpenBGPD та OpenOSPFD, NTP-сервер OpenNTPD, поштовий сервер OpenSMTPD, мультиплексор текстового терміналу (аналог GNU screen) tmux, демон identd з реалізацією протоколу IDENT, BSDL- пакету GNU groff — mandoc, протокол для організації стійких до відмови систем CARP (Common Address Redundancy Protocol), легковажний http-сервер, утиліта синхронізації файлів OpenRSYNC.

Основні покращення:

  • Доданий порт для 64-розрядних систем на базі архітектури RISC-V. В даний час підтримується робота на платах HiFive Unmatched та частково на PolarFire SoC Icicle Kit.
  • У порті для платформ ARM64 покращена, але поки що все ще не доведена до кінця, підтримка пристроїв Apple з процесором M1. У поточному вигляді підтримується встановлення OpenBSD на диск з GPT і є драйвери для USB 3, NVME, GPIO та SPMI. Крім M1 у порті ARM64 також розширено підтримку Raspberry Pi 3 Model B+ і плат на базі SoC Rockchip RK3399.
  • Для архітектури AMD64 відключений за замовчуванням компілятор GCC (залишений лише Clang). Раніше GCC був відключений для архітектур armv7 та i386.
  • Припинено супровід платформи SGI.
  • Для платформ amd64, arm64, i386, sparc64 та powerpc64 за замовчуванням включено складання ядра з підтримкою системи динамічного трасування dt. Доданий провайдер kprobes для збору інформації про події на рівні ядра.
  • У btrace реалізовано підтримку операторів «<» і «>» у фільтрах і забезпечено виведення часу перебування у просторі користувача під час аналізу стека ядра.
  • Додано конфігураційний файл /etc/bsd.re-config, який можна використовувати для налаштування ядра під час завантаження та увімкнення/вимкнення певних пристроїв.
  • Забезпечено визначення пристроїв TPM 2.0 та коректне виконання команд для переходу в сплячий режим (вирішує проблему з пробудженням ноутбуків ThinkPad X1 Carbon Gen 9 та ThinkPad X1 Nano).
  • Реалізація kqueue перекладена використання mutex-ов.
  • Реалізовано можливість налаштування через sysctl розміру буфера для сокетів PF_UNIX. За замовчуванням розмір буфера збільшено до 8 КБ.
  • Удосконалено підтримку багатопроцесорних систем (SMP). Переведений у розряд mp-safe виклик pmap_extract() на системах hppa та amd64. Із загального блокування ядра виведено код для підрахунку посилань на анонімні об'єкти, частина обробника винятків та функції lseek, connect та setrtable. Реалізовані окремі для кожного ядра CPU буфери повідомлень при краху (panic).
  • Реалізація фреймворку DRM (Direct Rendering Manager) синхронізована з ядром Linux 5.10.65. У драйвері inteldrm покращено підтримку чіпів Intel на базі мікроархітектури Tiger Lake. У драйвері amdgpu реалізована підтримка GPU Navi 12, Navi 21 "Sienna Cichlid", Arcturus та APU Cezanne "Green Sardine" Ryzen 5000.
  • Додана підтримка нового обладнання, в тому числі Aquantia AQC111U/AQC112U USB Ethernet, Aquantia 1/2.5/5/10Gb/s PCIe Ethernet, Cadence GEM, Broadcom BCM5725, RTL8168FP/RTL8111FP/RTL8117 Доданий драйвер ucc для клавіатур з інтерфейсом USB HID Consumer Control, у яких використовуються кнопки виклику програм, керування відтворенням звуку та зміни гучності.
  • Внесено покращення в гіпервізор VMM. Доданий ліміт 512 VCPU на віртуальну машину. Вирішено проблеми з блокуваннями VCPU. У бекенд для керування віртуальними машинами vmd з'явилася підтримка захисту від гостьових систем зі шкідливими драйверами virtio.
  • З NetBSD перенесено утиліту timeout, що дозволяє обмежити час виконання команд.
  • В утиліті синхронізації файлів openrsync реалізовані опції "include" та "exclude".
  • В утиліті ps забезпечено виведення відомостей про супутні групи.
  • До текстового редактора mg додано команду «dired-jump».
  • В утилітах fdisk і newfs покращена підтримка дисків із розміром сектора 4K. У fdisk перероблено код ініціалізації MBR/GPT і додано розпізнавання GPT-розділів "BIOS Boot", "APFS", "APFS ISC", "APFS Recovry" (sic), "HiFive FSBL" та "HiFive BBL". Додано опцію "-A" для ініціалізації GPT без видалення завантажувальних розділів.
  • В утиліті traceroute для прискорення роботи реалізовано обробку перевірочних пакетів та запитів DNS в асинхронному режимі.
  • В утиліті doas надано три спроби введення пароля.
  • У xterm забезпечено ізоляцію доступу до файлової системи за допомогою системного виклику unveil(). Процеси ftpd захищені за допомогою виклику pledge.
  • Реалізовано виведення в лог відомостей про некоректне використання параметра форматування %n у функції printf.
  • У реалізації IPsec в iked додано підтримку налаштування DNS на стороні клієнта.
  • У snmpd за замовчуванням відключено підтримку протоколів SNMPv1 і SNMPv2c на користь застосування SNMPv3.
  • За замовчуванням включені процеси dhcpleased і resolvd, що надають можливість налаштування IPv4 адрес через DHCP. Утиліта dhclient залишена в системі як опція. В утиліту route додана команда «nameserver» для передачі інформації про DNS серера в resolvd.
  • У LibreSSL додано підтримку TLSv3 API OpenSSL 1.1.1 та активовано новий валідатор X.509, який підтримує коректну перевірку перехресно підписаних сертифікатів.
  • В OpenSMTPD додана підтримка опцій TLS cafile=(path), nosni, noverify і servername=(name). У smtp можна вибирати параметри шифрів і протоколів TLS.
  • Оновлено пакет OpenSSH. Детальний огляд покращень можна переглянути тут: OpenSSH 8.7, OpenSSH 8.8. Вимкнено підтримку цифрових підписів rsa-sha.
  • Число портів для архітектури AMD64 склало 11325, для aarch64 - 11034, для i386 - 10248. Серед версій додатків у портах: FFmpeg 4.4 GCC 8.4.0 та 11.2.0 GNOME 40.4 Go 1.17 Go 8. KDE Applications 302 KDE Frameworks 11.0.12 LLVM/Clang 16.0.2 LibreOffice 21.08.1 Lua 5.85.0, 11.1.0 та 7.2.1.2 MariaDB 5.1.5 Node.js 5.2.4 PHP 5.3.6. .10.6.4 Postfix 12.22.6 PostgreSQL 7.3.30 Python 7.4.23, 8.0.10 та 3.5.12 Qt 13.4 та 2.7.18 Ruby 3.8.12, 3.9.7 та 5.15.2 Rust 6.0.4 SQLite2.6.8 .
  • Оновлено компоненти від сторонніх розробників, які входять до складу OpenBSD 7.0:
    • Графічний стек Xenocara на базі X.Org 7.7 з xserver 1.20.13 + патчі, 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 (+ патчі)
    • GCC 4.2.1 (+ патчі) та 3.3.6 (+ патчі)
    • Perl 5.32.1 (+ патчі)
    • 4.3.7 РНБ
    • Unbound 1.13.3
    • Ncurses 5.7
    • Binutils 2.17 (+ патчі)
    • Gdb 6.3 (+ патч)
    • Awk 18.12.2020
    • Expat 2.4.1

Джерело: opennet.ru

Додати коментар або відгук