релиз свободной кросс-платформенной UNIX-подобной операционной системы . Проект OpenBSD был основан Тео де Раадтом (Theo de Raadt) в 1995 году после с разработчиками NetBSD, в результате которого доступ Тэо к CVS репозиторию NetBSD был закрыт. После этого Тео де Раадт с группой единомышленников создал новую открытую операционную систему на основе исходного кода NetBSD, с основными целями развития: переносимость ( 13 аппаратных платформ), стандартизация, надежная работа, активная безопасность и интегрированные криптографические средства. Полный размер установочного базовой системы OpenBSD 6.6 составляет 460 МБ.
Кроме самой операционной системы, проект OpenBSD известен своими компонентами, которые были адаптированы в других системах и стали известными как одни из самых безопасных и качественных решений. Среди них: ( OpenSSL), , пакетный фильтр , демоны маршрутизации , NTP-сервер , почтовый сервер , мультиплексор текстового терминала (аналог GNU screen) , демон с реализацией протокола IDENT, альтернатива пакету GNU groff — , протокол для организации отказоустойчивых систем CARP (Common Address Redundancy Protocol), легковесный , утилита синхронизации файлов .
Основни :
- В состав включает утилиту , для автоматического обновления системы до новой версии. Sysupgrade загружает необходимые файлы для обновления, проверяет их с помощью , копирует ramdisk bsd.rd в bsd.upgrade и инициирует перезагрузку системы. Загрузчик, обнаружив наличие bsd.upgrade, начинает его автоматическую загрузку и обновление системы. Для предыдущей версии OpenBSD 6.5 подготовлен syspatch, добавляющий sysupgrade и позволяющий обновить систему до OpenBSD 6.6 на архитектурах amd64, arm64 и i386 с помощью выполнения «syspatch && sysupgrade»;
- Для процессоров Cavium OCTEON (mips64) в качестве основного компилятора базовой системы используется Clang. Для архитектуры powerpc добавлена опциональная поддержка сборки с использованием Clang. Для архитектур armv7 и i386 компилятор GCC отключен по умолчанию (оставлен только Clang);
- В состав включён драйвер для графических процессоров AMD. Обновлён драйвер (Direct Rendering Manager). Добавена възможност за достъп на непривилегировани потребители до устройството drm чрез смяна на собственика на устройството при първото взаимодействие. Кодът на драйверите inteldrm и radeondrm е синхронизиран с ядрото на Linux 4.19.78. Добавена е поддръжка на GPU, използвани в чиповете Intel Broxton/Apollo Lake, Amber Lake, Gemini Lake, Coffee Lake, Whiskey Lake и Comet Lake;
- Реализиран е съвместим с Linux интерфейс и е добавена поддръжка на ACPI в драйверите radeon и amdgpu;
- Добавен е драйвер за контролерите GPIO, използвани в SoC Intel Apollo Lake;
- Подобрена е поддръжката на контролерите SAS3, повишена е надеждността на разпознаването на устройства по време на зареждане и е добавена поддръжка на 64-битов DMA в драйвера mpii;
- За PCI-устройствата е реализирана поддръжка на спецификацията 1.0;
- Добавена е поддръжка на криптографски сопроцесори, използвани в CPU/APU AMD Ryzen. Добавен е драйвер ksmn за термодатчици, използвани в 17-то поколение процесори AMD;
- Подобрена е поддръжката на архитектурата ARM64. Добавена е поддръжка на системи с CPU Ampere eMAG. Добавени са нови драйвери за SoC Amlogic, Allwinner A64, i.MX8M, Armada 3700. Добавена е поддръжка на CPU Cortex-A65;
- Във всички безжични драйвери е добавена възможност за предаване на получени пакети в мрежовия стек в пакетен режим, обработвайки няколко пакета в рамките на едно прекъсване;
- Повишена е производителността на кеша на файловите системи на компютри с архитектура AMD64;
- Управлението на startx и xinit е облекчено на модерни системи, използващи графични драйвери inteldrm, radeondrm и amdgpu;
- Подобрена е системната функция unveil, която осигурява изолация на достъпа до файловата система. Броят на приложенията от основната система, за които е реализирана защита с помощта на unveil, е достигнал 77;
- От глобалната блокировка са освободени системните функции getrlimit, setrlimit, read и write, както и кодът за достъп до ограниченията на ресурсите и смяната на позицията в файловете;
- Подобрена е методологията за блокиране на уязвимостите Spectre в CPU Intel. Добавена е защита от на класа MDS (Microarchitectural Data Sampling) в Intel процесори;
- В ntpd е въведен безопасен режим за настройка и получаване на стойности на системните часове по време на зареждане, дори при липса на часовник с автономно захранване;
- В терминалния мултиплексор tmux е добавена възможност за използване на регулярни изрази в командите search, match и substitute. Въведена е проста меню система с управление чрез мишка или клавиатура. За показване на меню в състоянието е предложена команда „display-menu“. Реализирано е автоматично превъртане при движение на курсора на мишката извън горния или долния край на екрана по време на маркиране на области;
- Увеличена производителността на bgpd. Преписан е кодът за съответствие на community, значително е ускорена работата на конфигурациите с множество community и голям брой peer-и. В bgpctl е добавена команда ‘show mrt neighbors’;
- В DNS резолвера добавена е поддръжка на списъци за блокиране;
- Добавена е утилита с реализиране на нов клиент SNMP, който заменя snmpctl;
- Обновена е версията на пощенския сървър OpenSMTPD. Добавен е API за написване на външни филтри, които могат да се разпространяват отделно през портове. Също е добавена поддръжка на вградени филтри, осигуряващи прости функции за отсяване на входящи сесии. Добавена е опция за доставка на филтрирана поща в каталога Junk в mail.maildir. Реализирана е поддръжка на протокола proxy-v2, позволяващ разполагане на SMTP сървър зад прокси. Реализирана е поддръжка на ECDSA сертификати.
- Обновен е пакетът OpenSSH 8.1, подробен преглед на подобренията може да се види ;
- Обновен е пакетът LibreSSL, в който е завършено портироването от OpenSSL 1.1 на структурата RSA_METHOD, позволяваща използването на различни реализации на функции за работа с RSA;
- Броят на портовете за архитектурата AMD64 е 10736, за aarch64 — 10075, за i386 — 10682. Обновени са компонентите от трети страни, включени в OpenBSD 6.6:
- Графичният стек Xenocara на базата на X.Org 7.7 с xserver 1.20.5 + патчи, freetype 2.10.1, fontconfig 2.12.4, Mesa 19.0.8, xterm 344, xkeyboard-config 2.20;
- LLVM/Clang 8.0.1 (с патчи)
- GCC 4.2.1 (с патчи) и 3.3.6 (с патчи)
- Perl 5.28.2 (с патчи)
- NSD 4.2.2
- Unbound 1.9.4
- Ncurses 5.7
- Binutils 2.17 (с патчи)
- Gdb 6.3 (с патчи)
- Awk Aug 10, 2011
- Expat 2.2.8
Източник: opennet.ru
