LINUX.ORG.RU

Релиз OpenBSD 5.7

 ,


0

1

1 мая состоялся релиз операционной системы OpenBSD версии 5.7. Размер полного установочного ISO-образа базовой системы составляет 208Мб.

Усиление безопасности:

  • К адресному пространству ядра применён режим защиты памяти W^X (Write XOR Execute), при котором страницы памяти не могут быть доступными и на запись и на исполнение кода (или запись или исполнение, но не одновременно).
  • Удалён код для поддержки загружаемых модулей ядра и procfs.
  • Проведён обстоятельный аудит подсистем на предмет перехода на использование системного вызова reallocarray, позволяющего выделить память для нескольких отличающихся по размеру объектов без дополнительных затрат на очистку памяти, но с сохранением средств борьбы с целочисленными переполнениями.
  • Проведена работа по замене вызовов select на poll.
  • В качестве первого шага для минимизации возможности совершения атаки на раздел /var, директория /var/tmp преобразована в символическую ссылку на /tmp.
  • В реализацию memcpy добавлена защита от перекрытия областей памяти, если факт подобного перекрытия выявлен, то программа принудительно завершается с выводом соответствующего предупреждения в syslog. При необходимости перекрытия областей следует использовать memmove.
  • Вызовы rand, random, drand48, lrand48, mrand48 и srand48 переведены на использование генератора arc4random. Для получения детерменированных случайных числе введены новые функции srand_deterministic, srandom_deterministic, seed48_deterministic и lcong48_deterministic.
  • При возврате из спящего и ждущего режимов, а также при пробуждении виртуальных машин, задействованы различные методы для сброса генератора случайных чисел.
  • Все архитектуры переведены на статический формат PIE, т.е. все статически собранные исполняемые файлы в /bin и /sbin теперь содержат случаным образом расположенные сегменты «text».
  • Код ядра и ssh для работы с AES синхронизирован с кодом из OpenSSL/LibreSSL.
  • В утилите passwd прекращена поддержка всех методов хэширования, кроме blowfish.
  • В генераторе случайных чисел и при генерации начальных номеров последовательностей в TCP вместо MD5 задействован sha512.

Другое:

  • Добавлен драйвер xhci, обеспечивающий поддержку устройств с интерфейсом USB 3.0, соответствующих спецификации XHCI (eXtensible Host Controller Interface). Значительно расширена поддержка сетевых устройств, в том числе представлен новый драйвер iwm для беспроводных карт Intel 7260, 7265 и 3160.
  • Для управления фоновыми процессами и системными сервисами представлена новая утилита rcctl.
  • Из базовой системы удалены nginx и sendmail, вместо которых предлагается http-сервер собственной разработки и OpenSMTPD. Прекращена поддержка DNS-сервера BIND, вместо которого рекомендуется использовать nsd и unbound. Nginx, bind и sendmail могут быть установлены из портов.
  • Улучшения в сетевом стеке: Большинство операций с IP-адресами переведены на таблицы маршрутизации, заменившие собой RB-деревья и списки адресов IPv4. Для хэширования в пакетном фильтре PF, сетевых мостах, trunk-интерфейсах и PCB задействован алгоритм SipHash. Настройка CARP теперь требует явного создания родительского интерфейса carpdev. Слой mbuf избавлен от глобальной блокировки и признан mpsafe. Представлены новые структуры mbuf_list и mbuf_queue, а также API для работы с ними.
  • Улучшения в инсталляторе: Наборы etc и xetc, в том числе включающие файлы rc и rc.conf, теперь не поставляются отдельно, а включены в состав наборов base и xbase. Улучшено определение файла со сценарием автоматизированной установки, если присутствуют файл /auto_install.conf или /auto_upgrade.conf инсталлятор теперь сразу запускает автоматический режим.
  • Системы Syslogd и inetd переведены с select на libevent. В Syslogd добавлена поддержка отправки и приёма сообщений по UDP, TCP и TLS, при том, что для TCP и TLS реализованы средства автоматического восстановления соединения после разрыва канала связи.
  • В tftp сняты ограничение на размер принимаемых и отправляемых файлов, которые ранее не могли превышать 65536 байт.
  • В реализации ряда функций libc для архитектуры amd64 задействованы быстрые ассемблерные оптимизации.
  • Расширены возможности http-сервера от проекта OpenBSD. Прекращена поддержка SSLv2/3, улучшена поддержка ECDHE/DHE в TLS. Упрощено создание виртуальных хостов на основе определения псевдонимов по IP и именам хостов. Добавлена поддержка basic-аутентификации, определения своих кодов возврата, перенаправления и макросов для URL. Добавлена опция «root strip» для чистки начала пути для CGI-скриптов. Обеспечена возможность создания лога в директории, отличной от /var/www/logs. Реализация FastCGI доведена до совместимости со многими известными web-приложениями.
  • В новой версии почтового сервера OpenSMTPD прекращена поддержка SSLv3, добавлена поддержка новых парсеров сообщений и заголовков, добавлена опция append-domain, обеспечена возможность отправки сообщений локальному пользователю без определения домена.
  • Обновлён пакет OpenSSH 6.8, подробный обзор улучшений можно посмотреть здесь.
  • Обновлён пакет LibreSSL 2.1.5, подробный обзор улучшений можно посмотреть в анонсах выпусков 2.1.0, 2.1.2, 2.1.4 и 2.1.5.

Количество портов перевалило за 9000. Из них стоит отметить следующие:

  • Chromium 40.0.2214.115
  • Emacs 21.4 и 24.4
  • GCC 4.8.4 и 4.9.2
  • GHC 7.8.4
  • GNOME 3.14.2
  • Go 1.4.1
  • Groff 1.22.3
  • JDK 1.7.0.71
  • KDE 3.5.10 и 4.14.3
  • LLVM/Clang 3.5 (20140228)
  • LibreOffice 4.3.5.2
  • MariaDB 10.0.16
  • Mono 3.12.0
  • Mozilla Firefox 31.4.0esr и 35.0.1
  • Mozilla Thunderbird 31.4.0
  • Node.js 0.10.35
  • OpenLDAP 2.3.43 и 2.4.40
  • PHP 5.3.29, 5.4.38, 5.5.22 и 5.6.5
  • Postfix 2.11.4
  • PostgreSQL 9.4.1
  • Python 2.7.9 и 3.4.2
  • R 3.1.2
  • Ruby 1.8.7.374, 1.9.3.551, 2.0.0.598, 2.1.5 и 2.2.0
  • Sendmail 8.15.1
  • Tcl/Tk 8.5.16 и 8.6.2
  • TeX Live 2013
  • Vim 7.4.475
  • Xfce 4.10

Компоненты от сторонних разработчиков, входящие в состав OpenBSD 5.7:

  • Xenocara, основанная на X.Org 7.7 с xserver 1.16.4 + patches, freetype 2.5.5, fontconfig 2.11.1, Mesa 10.2.9, xterm 314, xkeyboard-config 2.13.
  • GCC 4.2.1 (с патчами) и 3.3.6 (с патчами).
  • Perl 5.20.1 (с патчами).
  • SQLite 3.8.6 (с патчами).
  • Unbound 1.5.2.
  • NSD 4.1.1.
  • Sudo 1.7.2p8.
  • Ncurses 5.7.
  • Binutils 2.15 (с патчами).
  • Gdb 6.3 (с патчами).
  • Less 458 (с патчами).
  • Awk в версии от 10 августа 2011 г.

ЗЫ: Со светом проблем не наблюдаются!

>>> Подробности



Проверено: JB ()
Последнее исправление: Wizard_ (всего исправлений: 4)

Ответ на: комментарий от Desmond_Hume

Почему все обсуждения к темам о BSD-системах на ЛОРе всегда вымазаны густым слоем хейтерства и ненужния?

Это так к любой OS, не относящейся к GNU/Linux. К примеру, взять ту же Haiku OS или React OS. Постоянно всплывают ненужнисты, даже среди модераторов. Почему? Да потому что во всех бедах Linux'а, в том числе в 0.7%, они винят именно пользователей альтернативных OSS/Unix-like OS'ей. Их постоянные фразочки: «Зачем вы пилите Haiku OS, когда нужно пилить Linux?», «Какой смысл делать коммиты в мёртвую BSD-систему, когда Linux'у нужны ваши патчи?», «Занимаются хернёй! Лучше бы Linux пилили!» и т. д. Пользователи, которые пишут такое, считают, что таким способом они борются с фрагментацией. Однако они же сами расплодили кучу тулкитов, кучу дистрибутивов, кучу DE, кучу форматов пакетов, кучу систем инициализации, кучу костылей к существующему (HAL / *kit) и так и не родили единого API, хотя бы по типу того, что имеется в Haiku OS.

EXL ★★★★★
()
Ответ на: комментарий от drfaust

Зачем распылять свои силы на велосипеды? Я понимаю, что охота создать всё своё - но в данном случае это просто трата человекочасов, так необходимых проекту.

И не поймёшь. И не трудись. И объяснять тут что-то бесполезно... я пробовал раз этак 1000, но если в голове нет того, что отвечает за всю картину, то ко всему подходят с универсальными шаблонными мерками, а подумать хоть чуть-чуть лучше - уже не могут, ибо в интернете не написано, как это о делается (а шаблоны - можно)

buratino ★★★★★
()
Ответ на: комментарий от EXL

Полагаю, что люди, которые обычно так ноют в треде, ничего полезного для проекта, апологетами которого они себя выставляют, не сделали (пару немногословных отчётиков об ошибке не будем считать). У меня, например, любая новость о любом свободном или BSD-like проекте всегда вызывает радостные чувства, значит это кому-то нужно, значит люди чем-то ещё увлекаются в жизни, кроме скачивания торрентиков и пересчитывания хрустящей макулатуры. Почему это должно быть плохим, почему должно осуждаться? Ну, нравится людям проект, пускай пилят. Все эти хейтеры как осенняя листва — упадут с веток и сгниют в земельке, а проекты будут жить дальше!

Desmond_Hume ★★★★★
()
Последнее исправление: Desmond_Hume (всего исправлений: 1)

Песня зачётная у них получилась (как в 90% случаев). Обожаю когда в их текстах присутствуют аббревиатуры, название всяких системных утилит, протоколов :)

А вот лого к релизу так себе. Хотя выделяется среди всех остальных, что тоже хорошо :)

С релизом всех причастных!

soko1 ★★★★★
()
Ответ на: комментарий от anonymous

openbsd — eto polsednij usabel'nyj svobodnyj unix

Только я слышал, что там с переключением раскладки проблемы.

anonymous
()

OpenBSD версии 5.7. Размер полного установочного ISO-образа базовой системы составляет 208Мб.


какая кроха. сразу видно, выношен с любовью

oblepiha_pie
()
Ответ на: комментарий от anonymous

Что-то не припомню таких проблем.

USF
() автор топика

анонимусы как-то без задора и креатива в этот раз, не порадовали. а людей заинтересованых - с релизом ! :)

W ★★★★★
()

Давно хочу попробовать сабж, теперь вот желание опять усилилось. Хочу вкатить на роутер из старого ПК, какие подводные камни будут? Сейчас это дело работает под Debian, используется pppoe, hostapd, dnsmasq, самописный adblock-скрипт на python ну и правила iptables, как скоро я смогу поднять это все на openBSD с учетом того что я его в глаза не видел (и вроде не дебил). Будет ли какой-то профит?

alozovskoy ★★★★★
()
Последнее исправление: alozovskoy (всего исправлений: 1)

Удалён код для поддержки загружаемых модулей ядра

<trollmode>Удалена поддержка разделяемых библиотек</trollmode>

dukzcry
()

сняты ограничение

anonymous
()

Давайте уж о каждом релизе каждой прошивки для роутеров новость делать чо. Это ведь даже не операционная система, даже файловой системы и той нет... Кто в здравом уме будет это использовать ?

anonymous
()
Ответ на: комментарий от anonymous

Пиши, ради бога. Вон — буртос пишет, подтверждают.

mandala ★★★★★
()
Ответ на: комментарий от cvs-255

Ага. Концепция максимальной безопасности $subj кому-то точно не даёт покоя, и не даст в будущем; своеобразное такое шило в попе.

Infra_HDC ★★★★★
()

Как у нее дела с SSD? Интересуют истории успеха.

anonymous
()

Удалён код для поддержки загружаемых модулей ядра

Упоролись.

и procfs.

Вопрос знающим людям: в BSD procfs была реализована как в линуксе (в основном текстовый IO) или как в солярке (бинарный IO и грядка специализированных тулин для его парсинга)?

В реализацию memcpy добавлена защита от перекрытия областей памяти, если факт подобного перекрытия выявлен, то программа принудительно завершается

Эпическая тупость, опасность есть только при копировании вперед, при копировании назад ничего плохого не происходит.

A-234 ★★★★★
()

Обновил свою точку доступа до 5.7
Годнота.

pascal ★★★
()
Ответ на: комментарий от pascal

Профит в виде использования годной ОС вместо сборника мусора и костылей ака линукс.

Какая боль, какая боль...

tailgunner ★★★★★
()
Ответ на: комментарий от pascal

Так устроен наш мир, что сборник мусора работает лучше и быстрее нормальных вещей.

man математика, например

unt1tled ★★★★
()
Ответ на: комментарий от pascal

А кроме «религиозной» стороны вопроса? Может там firewall лучше, или pppoe будет «работать быстрее», мне вот что интересно.

alozovskoy ★★★★★
()
Ответ на: комментарий от tailgunner

Да нет никакой боли, просто для каждой цели свой инструмент. На тот же wifi роутер удобнее поднять OpenBSD и настроить все «изкоробки». PF тот же намного удобнее настраивать чем iptables.

pascal ★★★
()
Ответ на: комментарий от unt1tled

Когда требуется повышенная безопасность.

Legioner ★★★★★
()
Ответ на: комментарий от pascal

На тот же wifi роутер удобнее поднять OpenBSD и настроить все «изкоробки».

А вот интересно, какую например железку лучше для этого взять? На чем настраивали?

Deleted
()
Ответ на: комментарий от Deleted

У меня роутер на базе foxconn nT-330i. Сам бы такой не купил, просто он имеется в наличии.

pascal ★★★
()
Последнее исправление: pascal (всего исправлений: 1)
Ответ на: комментарий от A-234

опасность есть только при копировании вперед, при копировании назад ничего плохого не происходит.
опасность есть только при копировании вперед,
при копировании назад ничего плохого не происходит.

Эпическая тупость

LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

Чего тут гуглить, в исходники memcpy и memmove загляните и просветление наступит раньше чем подействует живительный рассол.

A-234 ★★★★★
()
Ответ на: комментарий от anonymous

Чем оно лучше FreeBSD? В чем вообще смысл его существования?

Кстати, может мне кто подскажит.

Возьмём OpenBSD. Мне нужен vim с поддержкой athena. Беру и ставлю vim-athena. И оно при апдейтах (binary) прекрасно апдейтится.

Возьмём FreeBSD. Пакета нет. Надо делать `make config`. При следующем апдейте оно все перетирает и ставит то, что ненунжно.

Как быть, и почему Open лучше?

beastie ★★★★★
()
Ответ на: комментарий от A-234

Вопрос знающим людям

как в линуксе (в основном текстовый IO)

И использовалось по факту токлько с linux-emu, который почил в бездну. Посему, за ненадобностью и убрали.

beastie ★★★★★
()
Ответ на: комментарий от W

а людей заинтересованых - с релизом ! :)

thx, 3 дня, как апдейтились. ;)

beastie ★★★★★
()
Ответ на: комментарий от alozovskoy

Может там firewall лучше

You say it. pf — это счастье, особенно после iptables. ;)

beastie ★★★★★
()
Ответ на: комментарий от Infra_HDC

Концепция другая - минимальных полномочий

anonymous
()
Ответ на: комментарий от beastie

Возьмём OpenBSD

Оно апдейтится только в current, да и бинари апдейтов системы нету.

Возьмём FreeBSD

Конфиг сохраняется и используется при пересборке.

anonymous
()
Ответ на: комментарий от anonymous

да и бинари апдейтов системы нету.

bsd.rd + sysmerge

USF
() автор топика
Ответ на: комментарий от anonymous

Конфиг сохраняется и используется при пересборке.

Мне надо не при пересборке, мне надо при 'pkg upgrade', как в Open. :( То, что сохраняются — я знаю, но это костыль.

beastie ★★★★★
()
Ответ на: комментарий от beastie

мне надо при 'pkg upgrade'

делаем после установки 'pkg lock foo' и костыляем скрипт типа

pkg unlock foo
make install clean
pkg lock foo
который запускаем после апгрейда.
Или прописываем для этого пакета другую репу (свою, локальную, «правильную»)
The user can also choose to make sure a given package will always be updated from 'myrepo'

$ pkg install -r myrepo mypackage
$ pkg annotate -A mypackage reposiroty myrepo

но да, лисапеды. Обещают исправить. Ждем-с.

anonymous
()
Ответ на: комментарий от beastie

Тогда понятно, спасибо. Но ведь proc в линуксе офигительно удобная штука для руления ядром при помощи примитивных текстовых утилит, прямо из командной строки. А в BSD как это делается?

A-234 ★★★★★
()
Ответ на: комментарий от A-234

По существу аргументов я так понимаю нет.

Ты правильно понимаешь, для людей, не различающих спецификацию и реализацию, никаких разумных «аргументов» не существует.

LamerOk ★★★★★
()
Последнее исправление: LamerOk (всего исправлений: 2)
Ответ на: комментарий от LamerOk

Прежде чем абстрактно рассуждать загляните в POSIX

If copying takes place between objects that overlap, the behavior is undefined.
ERRORS
No errors are defined.
APPLICATION USAGE
The memcpy() function does not check for the overflow of the receiving memory area.

И все, просто не проверяет. Ни про какие исключения речи не идет. А вы тут панику разводить пытаетесь.

A-234 ★★★★★
()
Последнее исправление: A-234 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.