people
Yesterday

OpenBSD: интервью с Вячеславом Воронцовым

Не в то время и не в том формате, но мы это сделали! Если хотя-бы слышали слово «OpenBSD» — стоит прочитать и посмотреть.

Заставка нарисована женой Вячеслава ;)

Подготовка

Изначально мы планировали собраться большой компанией, чтобы я смог отснять вживую «ярких представителей российского сообщества OpenBSD», вместе с их «battle stations» — рабочими машинами с OpenBSD.

Ну и позадавать вопросы.

Не получилось, поскольку у ребят случился корпоратив.

Затем хотели устроить запись в Сheckpoint (самое большое Анти-Кафе в Москве), но не учли, что дело происходило в пятницу и абсолютно все залы оказались забронированы до позднего вечера.

Попытались найти свободную студию подкастов в центре — после шестого отказа, глядя на ярко-красную толстовку Вячеслава и отличную погоду за окном, я решил что есть вариант интереснее.

мы взяли экшн-камеру и просто пошли гулять по центру Москвы.

Так появилось это удивительное интервью.

Первый день с 360-камерой.

Камера

Кстати насчет камеры.

Она была куплена за день до съемок, поэтому наши удивленные лица в первом кадре, напоминающие знаменитую сцену из «Шрека» — подлинник, поскольку на тот момент я еще очень слабо разбирался с ее управлением.

Конечно же случился эпический фейл — я выбрал неверный тип съемки и мы умудрились записать интервью в формате 360-видео.

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

Насколько мне известно, это первое интервью на технические темы, снятое в таком формате.

К сожалению возникли определенные сложности с монтажом такого видео и последующей заливкой на платформы видеохостингов, поэтому 360-версия будет позже (когда разберемся с технологиями) и видимо на отдельном сайте со специальным плеером.

Пока выложили тестовую запись, по которой можно оценить как это будет выглядеть:

Не забывайте, что картинку тут можно крутить мышкой прямо во время проигрывания.

Комментарии причастных

Поскольку тема сложная, раскрыть ее сразу правильно, без технических ошибок гуляя с камерой по Москве было мало реально.

Тем более что дублей у нас не было.

Так что я сделал предварительную версию ролика, которую выдал членам сообщества OpenBSD в России — для оценки и комментариев.

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

Видео

Собственно сам ролик, выложенный на четыре платформы.

Rutube:

VK Video:

Youtube:

Платформа:

https://plvideo.ru/watch?v=awsMlyJWtVtU

Интервью

Ниже представлена «литературная расшифровка» интервью с Вячеславом, разумеется сильно облагороженная. Поскольку «филфаков» мы не заканчивали — общаемся в жизни далеко не на литературном русском.

Также стоит пояснить:

с Вячеславом мы общаемся уже давно, еще автор сам много лет использует OpenBSD, хотя и в куда меньших масштабах.

Поэтому у интервью несколько вольный стиль изложения и добавлены собственные комментарии — автор тоже в теме и в OpenBSD далеко не гость ;)

Для выделения реплик я использовал наши ники в сети:

  • alex0×08 — Александр Чернышев (автор)
  • zyapazyapa — Вячеслав Воронцов (гость)

zyapazyapa

Ну что задавай темп.

alex0x08

Ну, в общем всех приветствую, мои дорогие телезрители и телеслушатели!Сегодня у нас в гостях «последний из могикан»..


Краткая справка для непричастных

OpenBSD — единственная операционная система на планете, которая сфокусирована вокруг темы компьютерной безопасности.

Это очень очень редкая система и ваш шанс встретить живого пользователя OpenBSD на улице примерно равен шансу встретиться с космонавтом.

Вот так.


alex0x08

..живой пользователь OpenBSD!

Он же — главный по OpenBSD по Москве и области. Который сейчас кратко представится и расскажет о себе.

Давай, жги.

zyapazyapa

Всем привет.

Зовут меня Воронцов Вячеслав.

В Телеграм многие меня знают как NICKNAME.TXT, особенно если вы связаны с «Байкалом», OpenBSD или «Эльбрусом» — тем самым невиданным зверем.

Так что, как в принципе можно догадаться, интересы мои почему-то в каких-то очень нишевых и невиданных для широких масс областях.

Всех рад приветствовать.

Мультик

Тут вставлен «рекламно-стебный» мультик, созданный yzeek1 для сообщества OpenBSD, который к сожалению пришлось немного порезать из-за цензуры (особенно концовку).

Тут можно насладиться полной версией:

Среда обитания

zyapazyapa

На самом деле OpenBSD достаточно распространена в энтерпрайзе, правда об этом никто не помнит.

Но если копнуть, то всегда найдётся одна или две машинки или виртуалочки, когда-то кем-то развёрнутые и забытые.

А забытые они потому, что продолжают работать!

Достаточно много пользователей.

Много у нас в России собственно говоря даже официальных разработчиков с commit-битами и ментейнеров (maintainer) пакетов.

alex0x08

Нихера себе!

То есть борзость характера Тео (основатель проекта OpenBSD) на Россию не распространяется?

zyapazyapa

Ну, скажем так, она нам близка в какой-то мере.

Особенно по сравнению с остальными проектами, переросшими определенные размеры. Ну я про большие проекты, где уже начинаются различные требования к коммитерам (легкий намек на линукс).


Реальное применение

alex0x08

Понятно.

А скажи тогда такую вещь, реальное применение OpenBSD всё-таки где сейчас больше?

zyapazyapa

По сути дела, OpenBSD сейчас это то, чем в каком-то моральном и идеологическом плане в моём представлении была вся опенсорс-сцена в нулевые и десятые года.

У тебя есть операционная система, которая просто работает. То есть она работает, в ней есть программное обеспечение.

Если чего-то не хватает, то можешь попробовать это собрать и с высокой долей вероятностью оно соберётся.


Комментарий #1

У нас вся инфраструктура построена на OpenBSD, ИТ-специалисты используют ее на рабочих станциях.

5 физических серверов, из них на 4 используется vmd для запуска виртуальных машин. На серверах развернуты инфраструктурные сервисы и облачное решение (SaaS), которое мы клиентам продаем.

Антон Касимов, «Радиум-ИТ» https://radium-it.ru


Практика коммитов

alex0x08

Ну ок.

Расскажи про реальную практику добавления коммитов в ядро и софт.

Как это вообще у вас происходит?

zyapazyapa

Это кстати хороший вопрос, потому что я как человек, который отправил аж два, а может быть даже три.. три патча (раз, два, три).

Но два точно приняли в ядро OpenBSD — могу рассказать про этот процесс.

Скриншот одного из коммитов Вячеслава в OpenBSD

Байкал

alex0x08

И при этом ты одновременно разработчик «Байкала», как я понимаю?

zyapazyapa

Не не, к «Байкалу» я имею отношение только как пользователь.

Рабочая станция на процессоре Байкал-М.

alex0x08

Хера себе!

zyapazyapa

У меня дома стоит «Байкал» в качестве рабочей станции, под управлением конечно же OpenBSD.

Мало того, сайт openbsd.org.ru, который стоит на моём столе, потому что «поддиванные» сервера — самые лучшие, он тоже работает на «Байкале». И конечно же на OpenBSD!

alex0x08

Чтобы вы понимали и оценили, «Байкал» — продукция компании Baikal Electronics, это отечественный процессор, с определёнными проблемами со средствами разработки.

Оно там такое, в полу-рабочем состоянии. И в основном это всё используется для оборонки.

То есть как бы OpenBSD на такой машине, ну-у это прям нечто.

zyapazyapa

По поводу Байкала я тебя должен поправить, видимо путаешь с Эльбрусом. «Эльбрус» — для оборонки.

А Байкал это тоже отечественный процессор, но более открытый. И он основан на архитектуре ARM, поэтому там с тулингом (средствами разработки) намного проще.

zyapazyapa

По сути дела мне даже не сильно много пришлось править. Взял ARM64-версию OpenBSD, поставил её на диск.

Ну, там немножечко пришлось пошаманить, отправить один патчик в ядро. Который приняли кстати, в отличие от линукса.

Тео и Россия

alex0x08

Слушай, а когда ты всё это делал?

zyapazyapa

Это всё было году.. наверное в двадцать третьем (2023).

alex0x08

Ну то есть уже после всех событий. И что, вопросов не было?

zyapazyapa

Позиция проекта OpenBSD и Teo де Радта, который сам себя называет benevolent dictator (пожизненный диктатор) достаточно простая.

Собственной персоной, ага.

OpenBSD — его личный проект, который стоит у него в подвале.

Это реальные сервера OpenBSD, из личного подвала Тео.

zyapazyapa

Все остальные просто присылают патчи, по желанию. Если код его устраивает — он добавляется в систему.

alex0x08

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

Ну как не так давно — как раз после событий на Украине.

По-тихому удалили контактные данные всех российских разработчиков, особенно связанных со всякими «Яндексами» и подобными организациями с явным государственным участием.

alex0x08

Задним числом и в обход всех необходимых процедур и согласований. 

Втихую.

Оказалось, что Линус Торвальдс неровно дышит к России и не очень её любит. Как он там сказал?

Я финн в первую очередь, потом всё остальное.

А тут получается целая операционная система, открытая, где клали с пробором на все эти санкции.

Что не может не радовать.

Добавление коммита

zyapazyapa

Возвращаясь к вопросу как добавить что-то в OpenBSD, который звучал.

Процесс добавления достаточно прост:

ты что-то поправил у себя в ядре или в каком-то ПО, выделил штатными средствами операционной системы в банальный текстовый патч и отправил его по старинке в список рассылки.

Для тех кто не в курсе, рассылка (mailing list) это что-то типа общего почтового ящика, с дополнительными удобствами для владельца.

zyapazyapa

Отправляешь патч с описанием, его рассматривают. Подходит он или не подходит — будет обратная связь.

А может и просто добавят.

История с Wine

alex0x08

По поводу совместимости и проблем с софтом.

Когда я ещё на ЛОРе общался с ребятами — выкладывал статью про виртуализацию на OpenBSD и заводил там Skype.

И мне кто-то сказал, что есть проблема с Wine, что вроде как невозможно запустить Wine на OpenBSD.

Начал копать и оказалось, что действительно проблема есть.

Причём поддержку выпилили как-то хитро — в какой-то из старых версий и так, что из-за новых настроек безопасности реализовать поддержку Wine в OpenBSD теперь фактически нельзя.

Что скажешь?

zyapazyapa

По поводу Wine хочется пошутить:

проблемы нет, потому что нет Wine и нет проблемы.

zyapazyapa

Почему его нет это вопрос сложный и многофакторный.

Во-первых, OpenBSD это система, которая декларирует, что её приоритет — безопасность.

Причём безопасность на опережение, из коробки.

Поэтому в системе очень много для кого-то спорных, для кого-то прогрессивных решений в этой сфере, которые нуждаются в поддержке со стороны конечного ПО.

А вторая проблема  — информационный шум в виде линукса.

zyapazyapa

Потому что линукс популярен и многие люди воспринимают стандарты линукса как стандарты вообще.

Поэтому очень много так называемых «линуксизмов».

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

Ужасы портирования

alex0x08

Тут стоит добавить, что все мои истории с портированием различных эмуляторов — живой пример словам Вячеслава.

Даже портирование с Linux на куда более поддерживаемую FreeBSD немедленно подсвечивает множество «прибитых гвоздями» вещей, которые по идее должны быть кроссплатформенными.

Сокеты, работа с файлами, с сетью.

Причём это всё поменялось относительно недавно.

alex0x08

Изучая заголовочные файлы ядра Linux, увидел что большинство ломающих совместимость изменений приходятся на 2010-15 годы, не так уж давно. Получается что пошёл какой-то отъезд от всех стандартов.

Совместимость

alex0x08

А как в OpenBSD с этим делом? Тео держит марку?

zyapazyapa

Ну, во-первых конечно Тео держит марку.

zyapazyapa

Опять же из-за различных security-фишек что-то да, что-то надо патчить руками. Но в духе настоящего опенсорса:

кому это нужно, тот это и патчит.

И патчится это всё достаточно быстро.

Поэтому порты и пакеты, пакетная база дополнительного ПО достаточно быстро обновляется, освежается и патчится.


Комментарий #2

OpenBSD не хватает некоторых системных функций для работы с файлами, поэтому многие NPM-библиотеки не работают правильно.

Которые, например, определяют изменения в файлах а раздача контента веб-серверами не так эффективна как в Linux.

Антон Касимов, «Радиум-ИТ» https://radium-it.ru


OpenBSD как платформа

alex0x08

Задам интересный вопрос насчёт сферы применения.

Для меня в свое время оказалось большим сюрпризом, что OpenBSD часто используется в качестве платформы для конечных устройств, особенно сетевых файрволлов и IDS.

alex0x08

То есть есть некое решение — программно-аппаратный комплекс, которое строится на базе OpenBSD.

А в российских реалиях кто-нибудь таким занимается?

Есть примеры?

zyapazyapa

Не могу сейчас прямо вспомнить каких-то конкретных названий, потому что встречал лично только внутренние системы и решения, когда местные админы или разработчики что-то подняли, что-то сделали на базе OpenBSD.

Но знаю пару компаний, которые закладывались на OpenBSD как на основной стек, не знаю как это правильно назвать.

В основном это связано с вопросами безопасности.

alex0x08

Хочешь сказать, что даже пользовательские рабочие места на OpenBSD?

zyapazyapa

С пользовательскими рабочими местами сложно, потому что всегда остаются телефоны, которые все очень активно используют.

Ultima Online на OpenBSD!

zyapazyapa

Про рабочие места не скажу — у нас в России.

За рубежом, насколько знаю, такие «success story» были.

У нас слышал только про решения для безопасности, которые делаются в виде программно-аппаратного комплекса.

Прямо девайс поставляется, который ставится в серверную стойку и внутри OpenBSD только в качестве платформы.

Встраиваемые системы

alex0x08

Кстати, у тебя же был наверное опыт использования OpenBSD для embedded-разработки?

Arduino какие-нибудь?

zyapazyapa

Конкретно Arduino — нет, но было достаточно много других одноплатников.

Это например «малинка» — Raspberry Pi, различные китайские или какой-нибудь Nano Pi.

alex0x08

Ну Nano Pi это конечно круто. Он совсем мелкий же.

NanoPi R6S

zyapazyapa

Ну да.

Был отечественный Repka Pi, это наш так сказать, ответ «малинке».

Опять же есть питерские, питерско-китайские ребятки «Полбир» (РВ Полярный Медведь).

На самом деле с одноплатниками ситуация достаточно простая.

Главное не забыть, что это скажем так.. ну как мне кажется, с одноплатниками появилась достаточно вредная практика, когда ты просто накатываешь образ на SD-карту и вставляешь.

Забывая, что одноплатник — по сути дела обычный компьютер.

zyapazyapa

Записав тот же самый U-Boot, это не знаю как сказать — аналог BIOS, можно с ним работать полноценно, поставить операционку через USB, накатить на неё сверху софт какой нужно.

alex0x08

Ну это ты в плане безопасности рассказываешь, что есть варианты обхода.

Так глубоко уже не надо :)

Понимаешь, мы с тобой — представители старого поколения, молодёжь так глубоко не копает.

Тут как дискета выглядит и то уже все забыли.

Так выглядит дискета.

alex0x08

Поэтому с точки зрения безопасности это как бы легко, но для нас.

Вот вы услышали реальный кейс применения.

Система полностью и целиком открытая, система очень маленькая, её кодовая база наверное раза в два меньше чем даже у FreeBSD.

C линуксом вообще не сравнить.

alex0x08

И всё это готово для использования на десктопе, для встраивания, для серверов. Кстати про сервера.

Знаменитый веб-сервер

alex0x08

Этот знаменитый OpenBSD-шный веб-сервер — он все ещё в деле, его используют?

zyapazyapa

Так понимаю ты говоришь про httpd?

alex0x08

Ну да, они же его со старого Apache 1.x форкнули и дальше сами поддерживали. Куча патчей и всё такое.

zyapazyapa

Нет, это уже немножко другая история. Текущая версия httpd никакого отношение к Apache уже не имеет.

Ну кроме названия httpd — название бинаря.

zyapazyapa

Работает.

Очень маленький, очень лёгкий.

Поддерживает Fast-CGI.


Комментарий #3

httpd в OpenBSD никогда не имел отношения к Apache.

Он был написан с нуля немецкими разработчиками OpenBSD. Один из ключевых авторов Reyk Floeter.

Kirill Bychkov, kirby@openbsd.org


Безопасность

zyapazyapa

По поводу дырок ничего не скажу, потому что от профессиональной безопасности достаточно далёк.

Но есть люди, которые критикуют OpenBSD за его безопасность, что типа она не настоящая.

А есть те, кто выступают за неё.

Ну.. это же интернет.

alex0x08

Да, да.

Ты наверное видел — выложил ссылку на сайт (ныне не работает), где собран развернутый список претензий к OpenBSD в плане безопасности.

Там ещё логотип OpenBSD с прилепленным клоунским носом.

alex0x08

Почитав это дело, могу сказать что это претензии «одного профессора к другому».

К обывателю и его проблемам это всё отношения не имеет, ну чтобы вы не испугались и не убежали в ужасе.

Для сравнения с тем же линуксом, можно открыть какой-нибудь GitHub Advisory Database и просто охереть — я его как фильм ужасов теперь смотрю.

OpenBSD и C++

alex0x08

Ну коль уж ты используешь OpenBSD постоянно на десктопе и сам патчи писал, наверное в курсе за инструментарий для разработки?

Допустим надо развернуть инструменты разработки — весь тулчейн для скажем разработчика на C++.

Насколько это сложно? Сильно сложнее чем в линуксе?

zyapazyapa

Что подразумевается под «развернуть»?

Начнём с того, что в OpenBSD как и у остальных *BSD есть такое понятие как «base system» (база).

zyapazyapa

Это некий законченный набор софта, который изначально есть в любой установленной системе.

Если Linux это ядро плюс набор пакетов со стороны, то во всех BSD-системах, что во FreeBSD, что в NetBSD подразумевается что набор закончен.

zyapazyapa

В принципе туда же входит и clang и тот же vi и местный клон Emacs под названием mg.

Собственный клон Emacs из OpenBSD, "as-is".

alex0x08

Они ещё и Emacs клонировали?

Не знал.

Ну, от Тео можно было ожидать, что тут скажешь.

alex0x08

Проблематика такая, что судя по статьям, народ активно хочет подсветку синтаксиса и использовать например lang-сервер.

Даже для C++.

Так понимаю, что вся эта радость в OpenBSD не заводится?

zyapazyapa

Слушай, ну подсветка синтаксиса зависит от IDE (среды разработки). IDE ставятся из пакетов достаточно спокойно.

Lang-сервера, скажу честно, поднимать не приходилось, потому что я всё-таки по основному профилю работы ближе к чему-то админствующему, поэтому и правки системы у меня более мелкие.

alex0x08

Ну ты лично в чём работаешь?

zyapazyapa

Я в основном пользуюсь Vim, по старинке.

alex0x08

Ооо.. старая школа!

Тогда добавлю, что есть проблемы с «большими» профессиональными средами разработки. Даже на FreeBSD удалось поднять ту же IntelliJ Idea с очень большим упорством.

Патчи нужны.

VSCode и соответственно электрон (Electron) не заводятся.

Update: уже заводятся, работы идут.

Поддержку электрона по-моему даже лично Тео зарезал, cказав что-то вроде: «не канонично, не православно, не надо такое использовать».

Поэтому весь ваш выбор это vim или что-то такое, простое.

А clang кстати какой сейчас у вас?

zyapazyapa

Девятнадцатый (19).

alex0x08

Девятнадцатый — уже хорошо.

zyapazyapa

Но это в базе, в пакетах свежее, да.

alex0x08

Кстати, вы же тоже переехали на clang? GCC уже не используется и база собирается clang?

zyapazyapa

Clang, да.

GCC используется только для ПО, которое почему-то с помощью clang не собирается.

Но это в основном что-то прям мега-старое или мега-редкое, которое при этом до сих пор поддерживается.

alex0x08

Ну на самом деле я бы добавил, что это скорее «мега-криво написанное».

Когда перелопачивал эмуляторы, постоянно натыкался, что какие-то части в коде были завязаны на отключаемые опции GCC, которые выходят за рамки стандартов языка, являются устаревшим поведением компилятора и так далее.

А в clang этого нет, это более молодой тулчейн.

Кстати, если clang девятнадцатый, LLVM ведь тоже девятнадцатый?

zyapazyapa

Да.

alex0x08

Это достаточно свежие штуки.

OpenBSD и PostgreSQL

alex0x08

Теперь по админству.

PostgreSQL у вас наверное цветет и пахнет?

zyapazyapa

Ну PostgreSQL конечно есть — пострес, мускуль (MySQL), все эти штуки, но ситуация та же самая:

кому что нужно, тот то и добавляет.

alex0x08

Я к тому что например завести PostgreSQL на неподдерживаемой системе не так-то просто.

Объем кодовой базы у этого проекта — дай бог разобраться.

zyapazyapa

Ну это да.

alex0x08

Самое главное что он есть.

Есть практики использования и соответственно на совсем детские ошибки с кодировками или системными лимитами вы уже не попадёте.

Что называется «бери да пользуйся».

OpenBSD в Москве

alex0x08

Как у вас в Москве с OpenBSD дела обстоят?

zyapazyapa

В Москве с OpenBSD дела обстоят хорошо, как я уже говорил.

У нас здесь достаточно много (по меркам неподготовленного разума) даже разработчиков.

Мало того, один из разработчиков OpenBSD даже переехал в Россию!

Любовь творит чудеса.

alex0x08

Откуда?

zyapazyapa

Из Германии.

Это случаем не тот самый сбежавший Сноуден?

zyapazyapa

Нет, зачем ему OpenBSD?

Он, как мне кажется человек, гораздо более близкий к линуксу.

alex0x08

Ну я почитал его материалы, интервью. И понял, что он был лишь пользователем, не разработчиком ни разу.

Ну да, использовал какие-то специфические штуки за время работы в спецслужбах.

Но лишь как пользователь, сам он ведь их не создавал, не знает как эти штуки на самом деле работают.

zyapazyapa

Если вернуться к теме OpenBSD в Москве, мы стараемся проводить что-то типа посиделок и сборов пользователей.

И приглашаем многих разработчиков OpenBSD.

alex0x08

Круто.

И сколько вас получается?

zyapazyapa

Ну, активных не считал, но давай примерно прикину.

alex0x08

Группа большая.

zyapazyapa

Группу что ты видел — она только для русскоязычных пользователей, около 500 человек только в Телегаме.

alex0x08

Ну вот, я уже с этого офигел.

zyapazyapa

А в Москве, из тех кто выразил желание активно участвовать — человек 30.

alex0x08

Для столь редкой системы это очень много.

Это люди, которые явно не просто так подписались, они не прохожие, не гости — а те, кто эту систему использует каждый день.

Стоит объяснить, что по OpenBSD все руководства, статьи, все учебные материалы, вообще все материалы — строго только на английском.

Материалов на русском языке по OpenBSD исчезающе мало. .

Перевод документации

zyapazyapa

Есть один большой проект, который существует уже много лет:

перевод официальной документации на русский язык.

Начался он еще «старшим поколением» разработчиков, им же до сих пор продолжается.

Находится на Github, кривой редирект на него стоит на домене openbsd.ru. Собственно люди когда-то с этого домена его и начали.

Там переведена вся официальная документация, которая поддерживается в актуальном состоянии.

Так что если для кого-то английский язык является проблемой, можно зайти и посмотреть, почитать.

alex0x08

Мы пытались с одним товарищем такое сделать для NetBSD, году еще в 2015.

Скажу честно, работа неподъёмная — очень-очень много материалов, которые надо переводить, причем технически сложных.

Так что мы побились лбом где-то с годик и забили.

Но у вас насколько я понимаю, ситуация сильно лучше?

zyapazyapa

Ну да, как я иногда шучу:

это всё потому, что OpenBSD это жизнь, она меняет самого человека.

Кому оно надо

alex0x08

По поводу OpenBSD и опенсорса в целом.

Я много раз пытался объяснять людям зачем нужны BSD-системы и вообще UNIX. Потому что есть глобальное непонимание, что ключевые знания о компьютерах и ОС может дать только UNIX.

Как устроена операционная система, как она работает, как работает память, процессор, как происходит взаимодействие между процессами — понимание всего этого может дать только UNIX.

Если вы будете работать в одной винде — ничего не узнаете.

Это всё скрыто даже от разработчиков под слоями API. И лишь только открытые системы позволят действительно разобраться.

А небольшие, компактные системы вроде OpenBSD дадут возможность разобраться глубже, потому что вы соприкоснётесь с низким уровнем, с деталями гораздо быстрее и в гораздо большем объёме.

Что скажешь на эту замечательную тему?

zyapazyapa

На эту замечательную тему скажу, что для меня до сих пор остаётся большим секретом, почему о плюсах опенсорса, о его необходимости гораздо проще объяснить людям, не связанным с технологиями.

Потому что нигде я не видел больших отрицателей опенсорса, чем среди технарей.

Хотя казалось бы.

alex0x08

Вы знаете, это все по большому счёту последствия захвата рынка операционных систем в России Майкрософтом и закрытыми проприетарными решениями, который случился в девяностые. С одновременным оттоком целого поколения IT-специалистов зарубеж.

Возникла натуральная яма — провал в компетенциях, который до сих пор восполнить проблематично.

alex0x08

Я это вижу по индустрии разработки ПО, а вы можете наблюдать на улицах городов. Например эти ездящие роботы появились у нас совсем недавно, хотя сама технология уже достаточно старая.

Эти штуки могли появиться лет на десять раньше и без помощи Китая.

alex0x08

Получается, что у нас до сих пор профильное техническое образование даже близко несопоставимо с серьёзным западным, причем именно по CS (Computer Science)-специальностям.

У нас просто не учат многим вещам, которые нужны серьёзному специалисту:

разработка компиляторов, операционных систем, алгоритмы.

То есть то что лежит, например, в основе СУБД — вы просто так в этом не разберётесь, самостоятельно.

А все специалисты, которые имели такие знания, фактически свалили из страны в девяностые.

Так что полностью подтверждаю высказанные мысли.

Действительно, ситуация вот такая.

Постороннему человеку, даже студенту объяснять матчасть зачастую проще, чем «матёрому специалисту» по проприетарным технологиям, с WinFAQ какого-нибудь.

OpenBSD и закон

alex0x08

Cкажи, у вас кто-нибудь пытался юридическую сторону вопроса как-то оформить?

Ну то есть, ты же знаешь наверное про эту историю с опенсорсом в России — что с точки зрения закона открытые лицензии у нас не действуют?

Все эти GPL3, LGPL и так далее — формально не применимы?

Была целая серия статей на Хабре на эту тему.

А у вас кто-нибудь озадачивался этим?

zyapazyapa

Собственно говоря, во многом люди приходят к BSD и к пермиссивным лицензиям, потому что это лицензии, от которых у тебя не болит голова.

Ты просто взял и написал код, который тебе нужен.

Или кто-то его написал, а ты пропачил.

zyapazyapa

Накладываешь пермиссивную лицензию и по сути дела все — ты про него забываешь.

Не нужно возиться с лицензиями и лицензированием: кто там что нарушил, кто там что не нарушил.

Естественно многих это не устраивает.

Из стана любителей GPL постоянно раздаются «вскукареки», что бздшники — «подстилки корпоративные».

zyapazyapa

А по поводу юридического оформления, ну достаточно давно зреет мысль сделать некоммерческую организацию, которая будет не то чтобы представлять — как-то продвигать пермиссивные лицензии.

Но как бы всё упирается в одно.

Это не находится в какой-то приоритетной зоне, потому что.. ну а зачем?

alex0x08

Тут надо было добавить сразу, что BSD-лицензия на самом деле гораздо более открытая чем GPL. Чем пользуются крупные компании, используя исходный код BSD-систем в своих разработках.

Действительно никто никому ничего не должен.

alex0x08

Кодовую базу можно как угодно менять, вплоть до того, что вы даже не обязаны упоминать оригинальных авторов.

То есть вообще похер всем.

Получается что с точки зрения лицензионных заморочек, OpenBSD для корпоративного применения подходит гораздо лучше чем любые Linux, как бы смешно это не звучало.

Первое знакомство

ale0x08

Расскажи тогда как ты познакомился с ОpenBSD, как ты пришёл к этой системе.

zyapazyapa

Как пришёл?

Да в принципе, думаю достаточно стандартная история для людей моего возраста.

Родился я в восемьдесят пятом году (1985).

Когда-то давно, каким-то неведомым образом в моём доме и детстве материализовался советский клон ZX Spectrum.

И как говорится всё завертелось.

Потом естественно были — по мере облегчения доступности, всякие там досы (DOS), маздаи девяностопятые (Windows 95).

Пока наконец, в примерно девяносто девятом (1999) или даже нулевом году (2000), каким-то мистическим образом в моей жизни не материализовалась книга.

В английском оригинале она звучит что-то типа Unix Unleashed.

И с ней в комплекте шёл диск с каким-то древним на текущий момент RedHat Linux.

И FreeBSD.

Но не уже помню была ли там и OpenBSD.

alex0x08

Это какой год?

zyapazyapa

Это год наверное 2001.

RedHat был пятый, FreeBSD была четвёртая.

alex0x08

Так получается ты моложе меня.

Я восемьдесят третьего года (1983), мне было в 2003м уже 20, был вполне взрослым.

А ты познакомился совсем подростком, получается?

zyapazyapa

Да, попал в плохую компанию.

В начале это был, как и у многих в России, Linux.

Опять же ЛОР, фидошка (FIDO).

Мы получали информацию, как могли.

alex0x08

Ну кстати да, с этим подтверждаю.

А ты в фидошке тоже был получается?

zyapazyapa

Конечно был.

У меня даже нода была. И пищащий модем, трещащий по ночам.

alex0x08

Шпрот поди какой-нибудь?

zyapazyapa

Кстати да, конечно Шпрот.

Ну вначале я начинал с Lucent, ещё поинтом, но как бы это же вендовый софтмодем (soft modem).

Это несерьёзно было.

Пацаны не поймут.

Ну а в OpenDSD попал опять же случайно — кто-то дал диск на одной тусовке. Я её попробовал, не понял, скажу честно, с первого раза.

Но тогда она была немножко другой системой.

Особенности инсталлятора

alex0x08

Признавайся, с какой попытки её установил?

zyapazyapa

Слушай, ну установилась она достаточно просто.

alex0x08

Сколько дисков запорол?

zyapazyapa

В общем мне в этом плане было проще:

я всегда капитально сносил диски.

Если ставить операционку — то по новой!

alex0x08

Чтобы вы понимали контекст, в OpenBSD инсталлятор это нечто — что-то, с чем-то.

До последних дней и последних времён, там надо было указывать вручную количество цилиндров на диске.

Из-за этих заморочек я убил в свое время очень много разметок (MBR), потому что у меня всегда была куча операционных систем на компьютерах.

И вот с OpenBSD, итогом первой попытки её установить была разбитая об стену клавиатура.

Настолько дикой жестью это когда-то было.

Сейчас конечно сильно проще, но в те времена это был ад.

Ну вот, получается, что мы с тех самых лет всё это дело используем.

Группы по интересам

alex0x08

Слушай, а был же форум «лисяра», ещё что-то бсдшное?

zyapazyapa

«Лисяра», насколько я помню, существует до сих пор.

alex0x08

А насколько он жив?

zyapazyapa

Не скажу, если честно.

alex0x08

Потом еще был sysadmins.ru, зелёный такой.

zyapazyapa

Про sysadmins.ru тоже не скажу, но думаю ты и сам подтвердишь, что последние годы вся жизнь ушла в Telegram, скажем так.

alex0x08

Да, я честно говоря просто с админством закончил примерно к 2005 году. И с тех лет в основном занимаюсь разработкой.

Поэтому сисадминские форумы не смотрел уже очень давно.

«Лисяра» — ну просто он попадал в поисковую выдачу, что там такой популярный форум для бэсдшников и постоянно всплывают какие-то сложные вещи по этим системам.

А в Телеграм видел группу по FreeBSD, русскоязычную, что-то вроде FreeBSD_ru и твою.

И всё.

Больше никого там не видел по этим системам.

zyapazyapa

Вот мы там и собираемся.

Есть ещё «флудилка», но это отдельно.

Мировое комьюнити

zyapazyapa

Кстати два других крупных OpenBSD-комьюнити это бразильцы и китайцы.

alex0x08

Серьёзно? В Бразилии?

zyapazyapa

В Бразилии.

В Бразилии очень сильное OpenBSD-коммьюнити, достаточно много строчек в так называемом «саппорт-файле» из этой страны.

На сайте OpenBSD есть раздел, куда люди могут добавиться, если они оказывают услуги, связанные с OpenBSD и Бразилия там достаточно плотненько представлена.

alex0x08

Ну вот, я честно говоря не то что не знал — даже не подозревал, что в Бразилии может быть популярна такая система.

Что-то уникальное.

Ну, будем знать.

Коммерческий интерес

alex0x08

Насколько понимаю, в России коммерческого интереса, чтобы к тебе обращались за поддержкой по OpenBSD — не особо?

zyapazyapa

Скажем так, я и не особо его ищу.

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

zyapazyapa

Халява, она расхолаживает.

alex0x08

Понимаю, но все же расскажу как обычно это происходит.

Есть интерес к системе из-за ее повышенной безопасности, но нет специалистов, которые смогут что-то настроить на ней.

Ко мне на самом деле были подобные обращения, но поскольку я всё-таки разработчик а не сисадмин — не брался за такие задачи.

alex0x08

Но могу сказать, что тенденция есть и система интересна.

Если кому-то из читателей вдруг надо, то вот вам живой человек, за которым стоит сообщество специалистов, который по этой системе сможет подсказать и что-то сделать.

Обращайтесь.

Как вкатиться в OpenBSD

alex0x08

Допустим есть человек с опытом администрирования линукса. И он хочет попробовать OpenBSD.

C чего ему лучше всего начать?

zyapazyapa

Начинать в принципе, как и в любой другой системе, начинать надо с того.. чтобы зайти на сайт проекта.

[колокольный звон]

zyapazyapa

Вот да кстати, очень в тему.

zyapazyapa

В первую очередь надо зайти на сайт, скачать установочный образ и попробовать поставить.

Возможно это мой негативный опыт, но заметил, что очень многие новички хотят чтобы.. ну у них нет тяги и какого-то огонька чтобы попробовать самим.

Они хотят чтобы им рассказали, о том что они «почувствуют»!

zyapazyapa

К сожалению так не работает, нужно пробовать самому.

Не бояться спрашивать, не бояться читать документацию — в OpenBSD она одна из лучших, как считается, там достаточно подробно все описано.

Ну и как говорится — приходите, cпрашивайте.

Отношение к новичкам

alex0x08

А как вообще твоё сообщество относится к новичкам?

Ну я это с подвохом конечно спрашиваю, потому что прекрасно понимаю что такое например ЛОР и как там относятся ко всем вообще, включая опытных профессионалов.

zyapazyapa

Мы не ЛОР.

Но как говорится «кто с мечом к нам придёт — от меча и погибнет».

zyapazyapa

Поэтому всем адекватным мы рады, всем заходящим с острым желанием потроллить рады меньше.

Но это зависит от настроения и времени суток, да.

alex0x08

Но как бы, ребят поймите — ваши «детские» проблемы на самом деле мало кому интересны.

Писать сообщения из серии «ничего не работает, спасите-помогите, режут-убивают» — перестало работать везде, даже на StackOverflow.

И потом вы должны понимать, что всё-таки в OpenBSD с поддержкой оборудования не очень хорошо. А в большинстве случаев проблемы будут именно с ним.

alex0x08

И решить их через посты и сообщения мягко говоря — не очень просто.

Поэтому оборудование вам придётся подбирать специально под эту систему, исходя из опыта более просвещённых коллег.

Поддержка оборудования

alex0x08

Вот кстати, расскажи про это самое оборудование.

zyapazyapa

Ну с оборудованием на самом деле всё не так плохо.

Основная болевая точка, скажем так, это Wi-Fi, потому что его очень любят закрывать и никому не давать.

zyapazyapa

Написать драйвера, куда-нибудь их скинуть. А те же самые дата шиты (datasheets) — не предоставлять.

alex0x08

Но я могу от себя добавить, что проблема с WiFi-драйверами характерна вообще для всех открытых систем, даже для линукса.

Потому что сейчас это работает через специальные прошивки — такой специальный блоб (blob), который закачивается в карту в момент использования.

У меня например, установлено несколько систем и получается, что когда ноутбук засыпает в Windows и потом его перезагрузить даже не не в BSD, а в Linux — всё, WiFi-карта подыхает.

То же самое после переключения из линукса в FreeBSD.

Из-за этой долбаной прошивки.

Wifibox

alex0x08

Кстати, вам Wifibox не завезли еще?

zyapazyapa

Ммм.. ещё раз?

alex0x08

WifiBox, знаешь такую штуку?

Видимо надо рассказать, это не сильно давняя разработка.

В общем, через слой виртуализации запихивается Alpine Linux и внутри него крутятся линуксовые драйвера для WiFi-карты.

То есть физическая сетевая карта, WiFi-карта пробрасывается в виртуальную машину.

alex0x08

В этой виртуалке с линуксом работают уже нормальные драйвера, понимаете?

И весь этот сказочный цирк только ради стабильной работы WiFi. У меня на двух ноутбуках на FreeBSD оно работает вот так.

В OpenBSD наверное нет такого?

zyapazyapa

Ну у нас пока такого нету.

И я даже не уверен — хочется ли мне чтобы оно появилось.

zyapazyapa

Потому что это вечная проблема, вечный конфликт:

исправлять следствие или причину.

То есть да, оно работает быстро и доступно.

Но ситуация такая же, тоже самое за что критикуют Wine:

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

alex0x08

Вы кратко прослушали мнение о Wine со стороны OpenBSD-разработчиков, совпадающее с официальной позицией.

Виртуализация

alex0x08

По-моему даже Тео лично озвучивал, что всё это не нужно, потому что у нас теперь есть слой виртуализации — аналог KVM в Linux, да.

zyapazyapa

Он называется vmm.

alex0x08

Суть в том что все, кому нужно работать с альтернативными системами, должны просто использовать такую виртуализацию.

В принципе да, этим вопрос решается.

alex0x08

Но естественно использовать Windows в виртуальной машине это далеко не тоже самое, это работает гораздо медленнее.

Но работает.


Комментарий №4

Виртуализация для WiFi-карт в OpenBSD пока еще технически невозможна, поскольку vmm не поддерживает передачу PCI-устройств внутрь виртуальной машины.

Klemens Nanni, kn@openbsd.org


Видеокарты

alex0x08

По оборудованию.. ну с WiFi понятно. А что например c видеокартами?

zyapazyapa

С видео опять же есть открытые драйвера, то есть если карта от Intel или AMD — проблем не будет.

NVIDIA, ну.. считаем что её нет.

zyapazyapa

За нас всё сказал Линус Торвальдс:

Fuck you Nvidia и всё такое.

Тот самый ролик с признанием любви к NVIDIA

alex0x08

Тоже добавлю, что когда у меня последний раз был сбой этого проклятого блоба, а нет.. это было не у меня, это я выложил статью по Xfce4, по убиванию диалога открытия настроек при засыпании.

И в комментариях пошёл треш-угар.

Оказалось, что из-за NVIDIA и ее драйверов всё сыпется у людей, падает.

Так что, чтобы вы понимали, драйвера NVIDIA это проблема далеко не только BSD-системах.

Это проблема даже в винде:

у меня студия, где я монтирую видео, так даже там проблема с драйверами. Хотя там винды и официальные драйвера и современный ноутбук.

alex0x08

Тем не менее, даже там это проблема.

Вот, чтобы вы не удивлялись такому отношению к этой корпорации.

Bluetooth

zyapazyapa

И наверное третья, скажем так.. «особенность» поддержки оборудования, про которую стоит упомянуть:

в OpenBSD нет поддержки bluetooth.

zyapazyapa

Потому что он дыряв, его было некому, да и незачем поддерживать.

Ну, по мнению разработчиков.

Беспроводных наушников совсем недавно было — раз-два и обчёлся.

Может быть сейчас, с ростом популярности bluetooth найдутся люди, которые её добавят в OpenBSD.

zyapazyapa

Но пока что проблема решается обладателями bluetooth-наушников, причём на вполне официальном уровне — покупкой донгла от Creative, который вставляется в 3.5-разъем или в USB, уже сейчас не помню.

zyapazyapa

И уже этот донгл раздаёт WiFi, при этом с точки зрения системы это звуковая карта.

alex0x08

Понятно.

Добавлю от себя, что вся эта история с Bluetooth — нихера не простая даже в линуксе.

alex0x08

Я заводил bluetooth и в линуксе и в FreeBSD, скажу что это «цирк с конями» ещё тот.

Всё работает нестабильно, глючит, далеко не все оборудование поддерживается.

alex0x08

В общем, если вам оно такое надо — используйте венду или мак, потому что во всех остальных случаях это будет проблемой и достаточно большой.

Проблема с Giant Lock

alex0x08

А что с сетью?

Говорят, в OpenBSD сетевой стек медленный?

zyapazyapa

Вот кстати хорошо, что про «медленность» вспомнил. В OpenBSD есть пока серьёзная проблема, которую скрывать нет смысла.

Да и нечестно:

Ещё не до конца выпилен Giant Lock.

zyapazyapa

Такая забытая технология, из прежних времён, да.

alex0x08

Тут стоит пояснить, что это актуально для мультипроцессорных и мульти ядерных систем, связано с механизмом параллельного выполнения.

Поэтому этот Giant Lock, его эффект проявляется далеко не всегда.

alex0x08

Если у вас длинная расчётная задача, то что он есть, что нет в системе — до одного места.

То есть это для ситуации, когда много подключений, много потоков, много процессов. И всё это нужно переключать на ходу.

Все же OpenBSD несколько далека от такого применения, так что думаю Giant Lock — не сильно большая проблема на практике.

Сетевой стек

alex0x08

Так что, сетевой стек говорят медленный?

zyapazyapa

Как говорится — «мне хватает».

zyapazyapa

То есть по тестам производительности, с заточенными под сеть решениями разница конечно есть, но это не какие-то порядки.

Не в десятки раз.

zyapazyapa

То есть да, в OpenBSD предельная возможность сети в большинстве случаев будет меньше.

А в плане поддержки оборудования — ну всякие там 10Гбит и выше интерфейсы вполне поддерживаются.

Файрволл

alex0x08

Поясняю для тех кто не знает.

Авторы OpenBSD создали один из самых навороченных файрволлов, которые только есть на свете.

pf он по-моему называется? «Packet filter»?

zyapazyapa

Да.

alex0x08

То есть это самый навороченный, самый продвинутый файрволл из всех.

И в общем-то эта тема насчёт медленности стека, ну как вам сказать, сетевой стек — сложная штука.

alex0x08

Там есть, например фрагментация пакетов, есть защита от всевозможных хитрых атак.

Поэтому то что вам кажется медленно, на самом деле зачастую осмыслено, потому что в OpenBSD гораздо больше проверок.

Про SSL

alex0x08

Кстати эти же товарищи запилили, по сути, весь OpenSSL и современный LibreSSL.

И BoringSSL по-моему тоже они?

zyapazyapa

BoringSSL это уже Google.

alex0x08

Вот этого не знал.

zyapazyapa

Собственно они же его сейчас и убили, в итоге. По своей давней Google-традиции бросать собственные проекты.

alex0x08

Да, у Гугла уже целое кладбище.

zyapazyapa

Кстати по поводу проектов, которые зародились в OpenBSD.

Это отдельная история.

Так сказать — любимый укор линуксоидов и всех остальных, кто пытается говорить «не нужно».

zyapazyapa

Банальный пример — OpenSSH.

То, чем заходят на 99,9% серверов в современном мире — проект OpenBSD.

Тот самый tmux.

zyapazyapa

tmux (terminal multiplexer), который используется даже в инсталляторе у RedHat, CentOS, Fedora и прочего — проект OpenBSD.

Уже упомянутый LiberSSL и множество других проектов.

zyapazyapa

Даже банальный libc из OpenBSD, пусть и с сильными переработками — Bionic из Андроида.

OpenBSD и мировые корпорации

alex0x08

Кстати, что скажешь насчёт реального использования OpenBSD мировыми корпорациями?

Кто использует и зачем?

zyapazyapa

У нас в группе был эксперимент:

один из подписчиков лазил по текстам лицензионных соглашений (License Agreement) разных корпораций, к выпускаемым продуктам.

zyapazyapa

И получилось, что упоминание OpenBSD встречается практически у всех корпораций и не по одному разу.

zyapazyapa

Даже и в стиральных машинках Bosch есть упоминания о лицензиях OpenBSD!

Но насколько глубоко разработки OpenBSD там используются и в каких местах — видимо коммерческая тайна.

alex0x08

М-да, не знал о таком.

zyapazyapa

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

В прямом смысле все, включая Микрософт!

zyapazyapa

Потому что реальную стоимость и ценность проекта понимают все.

Скандалы, интриги, расследования

alex0x08

Кстати добавлю, что по слухам (информация не подтверждённая) Тео оказывается.. подрабатывал на ЦРУ.

Его прям нанимали на какой-то закрытый проект, что-то с криптографией связанное, с алгоритмами.

Не слышал про это?

zyapazyapa

Ну честно говоря нет, про это не слышал.

Основные две истории громкие, это про грант DARPA, который отняли после того, как Тео негативно высказался про агрессию в Ираке.

zyapazyapa

А вторая история, про то что какой-то разработчик написал, что ему — этому безымянному разработчику, предложили проект, чтобы он попытался внедрить бэкдор в OpenBSD.

alex0x08

Во-во.

И это было якобы по заданию ЦРУ.

zyapazyapa

Ну там непонятно, агентств этих всяких  — как грязи.

zyapazyapa

Короче да, гуляет эта информация по сети. Но опять же — она не была подтверждена, прошло много лет.

Место в исходном коде OpenBSD, на которое указывал тот разработчик несколько раз переписывалось.

alex0x08

Понятно.

«Мне нужны были деньги, я был молод» и всё такое прочее.

Стоит добавить, что исходный код, кодовая база OpenBSD это сейчас наверное самая проверяемая штука на свете.

alex0x08

То как вычищают, тестируют и проверяют исходный код в OpenBSD больше не делает никто.

Очень много практик компьютерной безопасности, аудит исходного кода, технические средства защиты — если не изобретены, то популяризованы командой OpenBSD.

А дальше это использовалось другими крупными проектами.

alex0x08

Если не ошибаюсь, технология рандомизации стека — так это называется?

Когда при при запуске OpenBSD запускается процесс перелинковки и используется рандомизация стека, которую тоже сделали в OpenBSD.

zyapazyapa

Там много всего на самом деле происходит.

Перелинковка ядра, библиотек и. всё время забываю как её правильно произнести: «X крышка R» или «V крышка X». (W^X)

alex0x08

Да-да.

zyapazyapa

Там много чего и действительно очень многое идёт из OpenBSD.

Мало того — внедрение этих практик косвенно помогает и другим открытым проектам!

zyapazyapa

При внедрении.. сейчас не скажу какой технологии в OpenBSD, было выявлено очень много падений прикладного софта.

И полетели патчи в апстрим (авторам).

В итоге например браузер Firefox стал более безопасен благодаря OpenBSD.

Публичный репозиторий

zyapazyapa

OpenBSD, благодаря своей природной скромности — незаметна, но первая во всём.

Ну, в очень многом.

zyapazyapa

Например OpenBSD была первой операционной системой, исходный код которой был публично доступен в репозитории.

То есть CVSweb проекта OpenBSD — первый публичный репозиторий на тот момент у операционной системы.


Комментарий №5

Не cvsweb а anoncvs.

До OpenBSD весь опенсорс распространялся в виде архивов tar.gz и (опционально) diff-файлов рядом c пакетами.

Как например vim.

Vitaliy Makkoveev, mvs@openbsd.org


alex0x08

До OpenBSD же Тео участвовал в проекте NetBSD. И он тоже был открытым, как так?

zyapazyapa

Да, он был открыт, но именно своей репы (репозитория) не было.

alex0x08

А как они разработку вели интересно?

zyapazyapa

Ну, в своём, в закрытом.

Это та же самая история что и с линуксовым git.

То есть как бы он открыт, но до появления git Linux вообще хостился в проприетарном каком-то.

alex0x08

Тут стоит пояснить важный нюанс.

В исходном коде, помимо самого исходного кода, важна ещё и история его изменений.

alex0x08

Если её нет — у вас проблема.

Без истории изменений непонятно кто, почему и где именно правил или добавлял. Когда проект большой это становится нерешаемой проблемой.

alex0x08

Вот например, выкачиваете вы с официального kernel.org сборку ядра Linux. Но без списка изменений — не сможете провести аудит, не сможете понять что именно, когда и кем, а главное почему было изменено.

С учётом масштаба проекта и размера кодовой базы, попытки разобраться без истории изменений становятся бессмысленной затеей.

Поэтому факт, что проект OpenBSD — первый, кто стал выкладывать изменения в открытый доступ, это разумеется важный вклад в общую индустрию компьютерной безопасности.

Еще один пример, в качестве иллюстрации — внедрение бэкдора.

Технически, бэкдор это лишь незаметная и небольшая правка в исходном коде, которая делает например подгрузку основной логики с удалённого сервера.

alex0x08

И все.

Так просто вы такую правку не найдёте.

Если вам выдать срез исходников ядра Linux без истории коммитов (в последних ядрах это примерно 2Гб текстовых файлов) — вы ничего в этой куче не найдёте.

Поэтому на больших проектах история коммитов становится чрезвычайно важна.

alex0x08

Но про историю с первым публичным репозиторием не знал.

Прикольно.

Направление развития

alex0x08 Над чем сейчас вообще работают в OpenBSD? В какую сторону идёт развитие проекта?

zyapazyapa

Вопрос интересный, но сложный.

Основной вектор (заявленный изначально) — продолжение наращивания безопасности.

zyapazyapa

Например не так давно в OpenBSD было внедрено решение, многими воспринимаемое как спорное:

нельзя обращаться к системным вызовам (syscalls) из кода напрямую, только через библиотеку libc.

zyapazyapa

C другой стороны, наш российский разработчик и по-моему даже ваш питерский, продолжает выпиливать Giant Lock из OpenBSD.

zyapazyapa

А так система развивается, хочется сказать — во всех направлениях.

Как система для повседневного использования и как система для какого-то специфического там того же сетевого применения.

Допиливаются драйвера, добавляется поддержка большего числа устройств. Активно играемся с RISC V.

Портирование на LoongArch

zyapazyapa

Не знаю насколько сейчас адекватно об этом говорить, но лично я пытаюсь в настоящий момент портировать OpenBSD на такую архитектуру как LoongArch.

alex0x08

Это же продолжение китайской Loongson, так понимаю?

zyapazyapa

Старые Loongson уже давно поддерживаются.

OpenBSD кстати одна из редких операционных систем, которая их вообще поддерживала.

zyapazyapa

Ну а я сейчас потихонечку пытаюсь портировать OpenBSD на современный LoongArch.

Благо железо доступно на том же «Алиэкспрессе» и «Авито».

В LLVM оно уже добавлено и я даже умудрился туда добавить патчики, чтобы компилятор знал, что такое в будущем возможно.

alex0x08

Если кто не понимает, речь про тот самый Loongson, который сейчас используется в новых смартфонах, из-за которых было..

zyapazyapa

Не, не то.

Речь про десктопные и серверные процессоры.

alex0x08

А-a, ну ок.

zyapazyapa

То что они независимо разработали свою архитектуру в Китае, для смартфонов — отдельная история.

Там всё-таки ARM, но главное что он был произведён на материковом Китае — никто не верил, что они смогут это произвести без Тайваня.

alex0x08

Да-да, помню что был какой-то эпический срач аж в конгрессе США по этому поводу, как раз из-за вот этого процессора.

Эпилог

alex0x08

Мы поговорили с Вячеславом по поводу OpenBSD — замечательной операционной системы.

Он — представитель сообщества OpenBSD в России, у него своя отдельная группа по OpenBSD и если у вас есть интерес к этой системе — смело обращайтесь.

Подскажет, поможет, направит.

У него есть люди с большим опытом, которые смогут проконсультировать по вопросам внедрения, использования для промышленной разработки и так далее.

Система интересная, редкая.

Надеюсь мы раскрыли хотя-бы часть вопросов по ней.

zyapazyapa

Ну что тут добавить :)

Ждём больше пользователей, больше интересующихся.

Не останавливайтесь, так сказать, в одном положении.

Интересуйтесь новым.

alex0x08

На этом мы завершаем наш замечательный пеший подкаст-интервью.

Спасибо за внимание!

Сообщество OpenBSD в России

Сайт:

https://openbsd.org.ru

Почта:

public@openbsd.org.ru

Telegram:

@openbsd_org_ru — новости

@openbsd_ru — общение

Вячеслав Воронцов

@zyapazyapa

Комментарии причастных

Для этого интервью мне удалось собрать комментарии от непосредственных разработчиков OpenBSD — людей, которые много лет не просто используют эту редкую операционную систему, а еще и участвуют в ее разработке.

Выражаем им огромную благодарность, как за тяжкий труд, так и за уделенное время:

Благодарим за контент

Для большего раскрытия темы OpenBSD, попросил участников сообщества накидать контента, связанного с реальным применением и использованием этой ОС.

Результат можно увидеть в ролике и статье:

все скриншоты рабочих столов, Ultima Online и даже мультик про OpenBSD — все реальное, от непосредственных пользователей российского сообщества.

Не «взятое с интернета».

Так что редакция выражает благодарность активным участникам, откликнувшихся на зов:

  • yzeek1
  • vasyahacker
  • alex_vvv744444444
  • qypeqoiq
  • ansyaak
  • aexyel

OpenBSD

https://openbsd.org

Ну и конечно особая благодарность сообществу OpenBSD и лично Тео, за создание и многолетний труд по развитию и поддержке этой удивительной операционной системы.

Долгих лет!