Выпуск OpenBSD 6.3

На 14 дней раньше запланированного срока сформирован релиз свободной, кросс-платформенной UNIX-подобной операционной системы OpenBSD 6.3. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году, после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 13 аппаратных платформ), стандартизация, корректная работа, активная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 6.3 составляет 340 Мб.

Кроме непосредственно операционной системы, проект 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-сервер.

Основные улучшения:

  • Для платформ OpenBSD/arm64 добавлена поддержка SMP;
  • Для платформ OpenBSD/armv7 добавлена поддержка наборов инструкций VFP и NEON;
  • Clang задействован по умолчанию в качестве компилятора для базовой системы и портов для архитектуры armv7 (ранее использовался для amd64 и i386), а также доступен в качестве опции для архитектуры sparc64;
  • Улучшения в системе виртуализации VMM: в vmd добавлена поддержка CD-ROM/DVD ISO через vioscsi, в vmm добавлена поддержка ukvm/Solo5 unikernel, обеспечена возможность создания до 4 сетевых интерфейсов для каждой виртуальной машины, для хостов с поддержкой AMD SVM/RVI добавлена возможность миграции приостановленных виртуальных машин и создания снапшотов;
  • Улучшения в беспроводном стеке: в драйверы iwm и iwn добавлена возможность автоматического роуминга между точками доступа с общим ESSID, добавлена автоматическая очистка ключей WEP/WPA при настройке сети с новым ESSID, удалена возможность доступа к настроенным ключам WEP/WPA из пространства пользователя, в iwm добавлена поддержка подключения к сетям со скрытым SSID, в USB-устройствах, поддерживаемых драйвером athn, задействованы открытая прошивка;
  • Улучшения в сетевом стеке: От глобальной блокировки (KERNEL_LOCK) избавлены обработка входящих пакетов TCP/UDP и реализация IPsec. Упрощена реализация функции «pf divert-packet», улучшена обработка тонких моментов при использовании «pf divert-to» и «pf divert-reply», в pf.conf добавлена новая опция syncookies. Добавлена поддержка туннелей GRE поверх IPv6 и представлен новый драйвер egre для них. Добавлен драйвер nvgre для создания виртуальных сетей;
  • Внесены изменения для блокирования атак Meltdown на системах с архитектурой amd64 и и armv7. Защита от Meltdown реализована с применением техники PTI (Page Table Isolation), которая обеспечивает разделение таблиц страниц памяти ядра и пространства пользователя при переключении контекста во время системного вызова или прерывания;
  • Для архитектур armv7 и arm64 добавлена защита от атаки Spectre v2, реализованная через сброс содержимого буфера предсказания ветвления (Branch Target Buffer);
  • Проведена реорганизация кода и увеличена эффективность работы функции malloc;
  • Добавлена поддержка сброса при помощи bpf дампа обмена данными через USB. В tcpdump добавлена поддержка обработки подобных дампов в формате USBPcap;
  • В уилитах ftp и pkg_add появилась поддержка возобновления прерванных сеансов загрузки через HTTPS;
  • Обновлён пакет OpenSSH 7.7 (отдельный переносимый релиз пока не выпущен). Из изменений выделяется экспериментальная поддержка ключей PQC XMSS (Extended Hash- Based Signatures), добавление директивы RDomain для привязки аутентифицированного сеанса к домену маршрутизации, появление опции «expiry-time» для задания времени жизни ключей в файле authorized_keys, обеспечение возможности обращения к ssh, scp и sftp через URI (например ssh://user@host или sftp://user@host/path);
  • Обновлён пакет LibreSSL 2.7.0, подробный обзор улучшений можно посмотреть в анонсе данного выпуска;
  • Число портов для архитектуры AMD64 составило 9912, для i386 — 9861. Из находящихся в портах приложений, отмечены:
    • CMake 3.10.2
    • Chromium 65.0.3325.181
    • GCC 4.9.4
    • GIMP 2.8.22
    • GNOME 3.26.2
    • Go 1.10
    • JDK 8u144
    • KDE 3.5.10 и 4.14.3
    • LLVM/Clang 5.0.1
    • LibreOffice 6.0.2.1
    • Lua 5.1.5, 5.2.4, 5.3.4
    • MariaDB 10.0.34
    • Firefox 52.7.3esr и 59.0.2
    • Thunderbird 52.7.0
    • Node.js 8.9.4
    • PHP 5.6.34 и 7.0.28
    • Postfix 3.3.0 и 3.4–20180203
    • PostgreSQL 10.3
    • Python 2.7.14 и 3.6.4
    • Ruby 2.3.6, 2.4.3 и 2.5.0
    • Rust 1.24.0
    • Xfce 4.12
  • Компоненты от сторонних разработчиков, входящие в состав OpenBSD 6.3:
    • Графический стек Xenocara на базе X Server 1.19.6 c патчами, freetype 2.8.1, fontconfig 2.12.4, Mesa 13.0.6, xterm 330, xkeyboard-config 2.20;
    • LLVM/Clang 5.0.1 с патчами
    • GCC 4.2.1 (с патчами) и 3.3.6
    • Perl 5.24.3 (с патчами)
    • NSD 4.1.20
    • Unbound 1.6.8
    • Ncurses 5.7
    • Binutils 2.17 (с патчами)
    • Gdb 6.3 (с патчами)
    • Awk версия от 10 августа 2011 года
    • Expat 2.2.5
  • Расширена поддержка оборудования: Значительно расширено число драйверов для платформы ARM, улучшена поддержка SoC Broadcom BCM2835/BCM2836/BCM2837, Rockchip RK3328, i.MX6 и Allwinner (A10/A20, A23/A33, A80 и R40/V40). В драйвер mfii добавлена поддержка SAS3.5 MegaRAID. В драйвер em добавлена поддержка Ethernet-контроллеров, интегрированных в чипы Intel Cannon Lake и Ice Lake. Обеспечена загрузка микрокода для процессоров Intel и обновление при помощи fw_update. Для накопителей SD/MMC подключенных через контроллер sdhc добавлена поддержка перехода в спящий режим.

© OpenNet