релиз на свободной, кроссплатформенной UNIX-подобной операционной системе . Проект OpenBSD был основан Тэо де Раадтом в 1995 году, после с разработчиками NetBSD, в результате которого доступ Тэо к CVS репозиторию NetBSD был закрыт. После этого Тео де Раадт с группой единомышленников создал новую открытую операционную систему на основе исходного кода NetBSD, с основными целями развития: переносимость ( 13 аппаратных платформ), стандартизация, надежная работа, активная безопасность и интегрированные криптографические средства. Полный размер установочного базовая система OpenBSD 6.5 занимает 407 Мб.
Кроме самой операционной системы, проект OpenBSD известен своими компонентами, которые были адаптированы в других системах и стали известными как одни из самых безопасных и качественных решений. Среди них: ( OpenSSL), , пакетный фильтр , демоны маршрутизации , NTP-сервер , почтовый сервер , мультиплексор текстового терминала (аналог GNU screen) , демон с реализацией протокола IDENT, альтернатива пакету GNU groff — , протокол для организации отказоустойчивых систем CARP (Common Address Redundancy Protocol), легковесный , утилита синхронизации файлов .
Среди наиболее значительных изменений: представлена переносимая версия 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 для фильтрации на начальном этапе поступления пакета устройством;
- В инсталляторе добавлена поддержка за добавяне на образ на диска в 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 също така сега се използва вместо традиционната защита на стека в системи 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;
- Добавлена опция за откриване на случаи на неясно поведение в ядрото на OpenBSD.
- Утилитата tcpdump е напълно освободена от използването на root привилегии;
- Подобрена е производителността на malloc в многопоточни приложения;
- Добавена е начална версия на програмата с реализация на утилитата за синхронизиране на файлове rsync;
- Обновена е версията на пощенския сървър OpenSMTPD, в която в smtpd.conf е добавен нов критерий за съвпадения ‘from rdns’, позволяващ избор на сервизи на базата на резолвинг на обратния DNS (определяне на името на хоста по IP). При търсене в таблиците е добавена възможност за прилагане на регулярни изрази;
- Обновен е пакетът OpenSSH 8.0, подробен преглед на подобренията може да бъде видян ;
- Обновен е пакетът LibreSSL, подробен преглед на подобренията може да бъде видян в анонсите на версиите и ;
- В 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
- Go 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
- Mono 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
- Rust 1.33.0
- Sendmail 8.16.0.41
- SQLite3 3.27.2
- Suricata 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 (с пачове)
- NSD 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
