Випуск OpenBSD 6.5

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

Окрім безпосередньо операційної системи, проект 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.

Серед найбільш помітних змін: представлена ​​переносна версія bgpd, адаптована для роботи в інших ОС, позбавлені використання root-привілеїв Xenocara і tcpdump, для amd64 і i386 задіяний за замовчуванням компонувальник LDD, значно покращена підтримка MPLS, посилено захист від експлоїтів з прийомами орієнтованого програмування (ROP), доданий найпростіший рекурсивний DNS-сервер unwind, в ядро ​​інтегрований детектор невизначеної поведінки, представлена ​​власна реалізація утиліти rsync.

Основні поліпшення:

  • При складанні для архітектур amd64 і i386 за замовчуванням задіяний компонувальник LDD, що розвивається проектом LLVM. Для архітектури mips64 додано підтримку складання з використанням Clang;
  • Нові драйвери pvclock для паравіртуалізованого таймера KVM та ixl для Intel Ethernet 700. Драйвер uaudio замінено на нову реалізацію за допомогою USB Audio 2.0.
  • Покращена робота драйверів бездротових пристроїв bwfm, iwn, iwm та athn. У бездротовий стек додана підтримка повідомлень RTM_80211INFO для передачі детальних відомостей про стан інтерфейсу команди dhclient і route. Змінено поведінку за мовчанням при підключенні до бездротових мереж — за наявності налаштованого списку автопідключення, OpenBSD тепер не з'єднується з невідомими відкритими мережами (для повернення минулої поведінки можна додати порожню мережу до списку);
  • У мережному стеку представлені нові драйвери псевдопристроїв bpe (Backbone Provider Edge) та mpip (MPLS IP layer 2). Для MPLS-інтерфейсів додано підтримку настроювання альтернативних доменів маршрутизації. Забезпечено роботу драйвера vlan в обхід обробки черг з виведенням безпосередньо до батьківського мережевого інтерфейсу. У ifconfig доданий режим txprio для управління кодуванням пріоритету в заголовках тунельованих пакетів (підтримується для драйверів vlan, gre, gif та etherip);
  • У реалізації фільтра bpf з'явилася можливість застосування механізму відкидання (drop) без захвату пакетів. Ця можливість задіяна в tcpdump для фільтрації на початковому етапі надходження пакета пристроєм;
  • В інсталяторі забезпечено підтримку rdsetroot для додавання дискового образу RAMDISK ядра. Забезпечено видалення деяких компонентів старих релізів у процесі оновлення системи;
  • Удосконалено системний виклик розкритищо забезпечує ізоляцію доступу до файлової системи. У новій версії додано визначення збігів щодо робочого каталогу поточного процесу під час аналізу відносних шляхів. Заборонено використання stat та access для обмежених компонентів файлових шляхів. Для додатків ospfd, ospf6d, rebound, getconf, kvm_mkdb, bdftopcf, Xserver, passwd, spamlogd, spamd, sensorsd, snmpd, htpasswd та ifstated реалізований захист з використанням unveil;
  • У Clang поліпшені засоби для блокування застосування прийомів зворотно-орієнтованого програмування (ROP), що дозволили значно скоротити кількість поліморфних гаджетів, що зустрічаються в результуючих файлах для архітектур i386 і amd64;
  • У Clang підвищена продуктивність та безпека при застосуванні
    механізму захисту RETGUARD, націленого на ускладнення виконання експлоїтів, побудованих з використанням запозичення шматків коду та прийомів зворотно-орієнтованого програмування. Для прискорення роботи замість стека дані по можливості розміщуються в регістрах, а при поверненні ефективніше використовується процесорний кеш. RETGUARD також тепер використовується замість традиційного захисту стека на системах amd64 та arm64;

  • Покращені утиліти, пов'язані з мережевим стеком: pcap-filter додана підтримка фільтрації пакетів MPLS. У ospfd, ospf6d і ripd додано можливість налаштування пріоритетів маршрутизації. У
    ripd додано захист на основі механізму заставу. У ifconfig додані режими sff та sffdump для отримання діагностичної інформації з оптичних передавачів;

  • Представлено перший випуск нового резолверу розмотати, що обробляє рекурсивні DNS-запити та приймає з'єднання лише на інтерфейсі 127.0.0.1.
    Unwind розрахований для використання на клієнтських системах, таких як ноутбуки, що рухаються між різними бездротовими мережами. У разі визначення блокування DNS-трафіку в локальній мережі, unwind перемикається на використання переданої DHCP адреси рекурсивного DNS-сервера, але продовжує періодично намагатися виконати резолвінг самостійно і як тільки прямі запити починають проходити повертається до самостійного звернення до DNS-серверів;

  • У bgpd проведено роботу зі зниження споживання пам'яті, додано простий оптимізатор правил (виконує злиття правил фільтрації, що відрізняються тільки наборами фільтрів), змінено процес налаштування BGP MPLS VPN, додано підтримку IPv6 BGP MPLS VPN, реалізовано функціональність «as-override» для заміни AS сусіда на локальний AS у шляхах, додано можливість зіставлення з кількома communitie в одному правилі, додано нові ознаки зіставлень «*», «local-as» та «neighbor-as», покращено роботу з великими наборами правил, додано нові команди для роботи з групами. сусідніх автономних систем (bgpctl neighbor group, bgpctl show neighbor group, bgpctl show rib neighbor group), bgpctl додана можливість додавання мереж в таблиці BGP VPN. Вперше підготовлений варіант OpenBGPD-portable, що переноситься, готовий до роботи в системах, відмінних від OpenBSD;
  • Додана опція kubsan виявлення випадків невизначеного поведінки у ядрі OpenBSD.
  • Утиліта tcpdump повністю позбавлена ​​використання root-привілеїв;
  • Поліпшено продуктивність malloc у багатопотокових додатках;
  • До складу додана початкова версія програми OpenRSYNC із власною реалізацією утиліти синхронізації файлів rsync;
  • Оновлено версію поштового сервера OpenSMTPD, в якій до smtpd.conf додано новий критерій зіставлень «from rdns», що дозволяє вибирати сенси на основі резолвінгу зворотного DNS (визначення імені хоста по IP). Під час пошуку в таблицях додано можливість застосування регулярних виразів;
  • Оновлено пакет OpenSSH 8.0, детальний огляд покращень можна переглянути тут;
  • Оновлено пакет LibreSSL, детальний огляд покращень можна переглянути в анонсах випусків 2.9.0 и 2.9.1;
  • У Mandoc значно покращено виведення в HTML, покращено малювання таблиць та додано прапор «-O» для відкриття сторінки з визначенням зазначеного терміна;
  • Розширені можливості графічного стека Xenocara: X-сервер тепер не вимагає запуску установки з прапором setuid. У Mesa-драйвері radeonsi включена підтримка апаратного прискорення для GPU Southern Islands (Radeon HD 7000) та Sea Islands (Radeon HD 8000);
  • Порти мовою C++ для архітектур, що не підтримуються в Clang, тепер зібрані з використанням GCC з портів. Число портів для архітектури AMD64 склало 10602, для aarch64 - 9654, для i386 - 10535.
    • Asterisk 16.2.1
    • Audacity 2.3.1
    • CMake 3.10.2
    • Chromium 73.0.3683.86
    • FFmpeg 4.1.3
    • GCC 4.9.4 та 8.3.0
    • GNOME 3.30.2.1
    • Перейти 1.12.1
    • JDK 8u202 та 11.0.2+9-3
    • LLVM/Clang 7.0.1
    • LibreOffice 6.2.2.2
    • Lua 5.1.5, 5.2.4 та 5.3.5
    • MariaDB 10.0.38
    • Моно 5.18.1.0
    • Mozilla Firefox 66.0.2 та ESR 60.6.1
    • Mozilla Thunderbird 60.6.1
    • Node.js 10.15.0
    • OpenLDAP 2.3.43 та 2.4.47
    • PHP 7.1.28, 7.2.17 та 7.3.4
    • Postfix 3.3.3 та 3.4.20190106
    • PostgreSQL 11.2
    • Python 2.7.16 та 3.6.8
    • R 3.5.3
    • Ruby 2.4.6, 2.5.5 та 2.6.2
    • Іржа 1.33.0
    • Sendmail 8.16.0.41
    • SQLite3 3.27.2
    • Meerkat 4.1.3
    • Tcl/Tk 8.5.19 та 8.6.8
    • TeX Live 2018
    • Vim 8.1.1048 та Neovim 0.3.4
    • Xfce 4.12
  • Компоненти від сторонніх розробників, що входять до складу OpenBSD 6.5:
    • Графічний стек Xenocara з урахуванням X.Org server 1.19.7 з патчами, freetype 2.9.1, fontconfig 2.12.4, Mesa 18.3.5, xterm 344, xkeyboard-config 2.20;
    • LLVM/Clang 7.0.1 (з патчами)
    • GCC 4.2.1 (з патчами) та 3.3.6 (з патчами)
    • Perl 5.28.1 (з патчами)
    • 4.1.27 РНБ
    • Unbound 1.9.1
    • Ncurses 5.7
    • Binutils 2.17 (з патчами)
    • Gdb 6.3 (з патчами)
    • Awk Aug 10, 2011
    • Expat 2.2.6

Джерело: opennet.ru

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