В интернете только и разговоров, что про GNU/Linux. Про операционные системы семейства BSD не так часто разговаривают, как о нём. Они сложнее? Они скучнее? Попробуем ответить на эти вопросы вместе с одним из активных участников сообщества OpenBSD!

О сегодняшнем госте
— Расскажи нам о себе, чем занимаешься в сообществе OpenBSD и вне его.
— Всем привет, зовут меня Вячеслав Воронцов и я анонимный — на самом деле, скорее, уже нет — "продвинутый пользователь" ПК вообще и OpenBSD в частности.

Как и полагается "компьютерщику со стажем", это дело я с детства люблю, увлекаюсь, говорю об этом и всячески надоедаю окружающим. Попутно занимаюсь модерацией телеграм-каналов про OpenBSD, стараюсь помогать другим пользователям, собирать их вместе, писать и отправлять патчи, тестировать железо и хостить различные сервисы, надеясь довести их когда-нибудь до полезного состояния.
За пределами сообщества я, конечно же, в духе лучших стереотипов, работаю в ИТ-компании.
Что повлияло на выбор именно OpenBSD?
Среди наиболее известных *BSD систем выделяют FreeBSD, OpenBSD и NetBSD. Есть более узконаправленные операционные системы на их основе, например pfSense и OPNsense для сетевых брандмауэров или коммерческие, как TrueNAS, для сетевых хранилищ — все они основаны на FreeBSD.
— Почему именно OpenBSD, а не другая система семейства *BSD?
— Вопрос сложный, но интересный. Несмотря на наиболее часто упоминаемую особенность "Опёнка" как операционной системы с упором на безопасность и "самую безопасную", для меня это не является решающим фактором.
OpenBSD для меня — это в первую очередь понятная и стройная операционная система, пригодная и, что немаловажно, активно нацеленная на повседневное использование. Тут стоит напомнить о главном отличии BSD-систем от Linux-дистрибутивов: понятие и наличие "базовой системы". Базовая ОС это не просто набор пакетов, а тесно интегрированный, подобранный и проаудированный набор ПО. В случае с OpenBSD базовая система, несмотря на свой небольшой по текущим меркам размер, позволяет как развернуть базовые сетевые сервисы, так и использовать ОС в качестве рабочей станции для разработки и сборки OpenBSD. Всё это, при желании, в графическом интерфейсе.

OpenBSD активно практикует и в каком-то смысле требует "догфудинг", то есть использование собственного "продукта", поэтому часто, в отличие от других ОС, покрываются именно реальные потребности разработчиков и пользователей. При этом в форме, пригодной для "бытового" применения. По моему мнению, другие операционные системы, к сожалению, в той или иной мере отошли от таких подходов.
Роль сообщества в развитии СПО
— Справедливо ли то, что маленькие сообщества могут быть более значимыми на фоне крупных, как то же GNU/Linux сообщество? Например, клиент и сервер OpenSSH уже несколько лет поставляются с Windows, и в ней есть своя версия библиотеки LibreSSL.
— Абсолютно. Измерение "важности" размером, в принципе, достаточно вредно и сродни подсчёту количества строк или мегабайт в программе.
Но почему бы не утолить любопытство и посчитать весь репозиторий?
Из сводки исключена папка gnu, в которой находятся сторонние зависимости и инструментарий.
E:\Git\openbsd>cloc . --timeout 0 --exclude-dir=gnu 45065 text files. 23299 unique files. 21810 files ignored. github.com/AlDanial/cloc v 2.08 T=96.56 s (241.3 files/s, 139193.7 lines/s) -------------------------------------------------------------------------------- Language files blank comment code -------------------------------------------------------------------------------- C/C++ Header 7242 202089 864453 5457857 C 11210 793566 858653 4622924 Bourne Shell 573 15614 15299 93353 Perl 679 11188 10512 83876 yacc 58 8167 2998 72049 Assembly 619 12282 32905 57037 make 2032 11996 6066 41408 Text 84 5430 0 38101 ASP.NET 2 1139 18 27329 m4 58 1931 623 17827 BitBake 220 842 497 8328 Python 155 1293 698 8214 lex 17 805 949 6318 reStructuredText 7 2155 751 4580 Markdown 41 621 0 4480 HTML 3 603 38 3918 Korn Shell 84 979 1171 3731 Go 5 613 167 3697 awk 37 373 980 3519 Logos 17 386 65 2423 C++ 23 193 492 1901 ANTLR Grammar 1 0 0 1725 SQL 4 0 0 1401 sed 13 60 251 921 Scheme 3 76 127 626 Forth 1 122 162 596 CSS 3 43 53 328 XML 6 0 0 215 Nemerle 3 45 0 182 R 35 2 0 175 Windows Module Definition 2 13 0 142 Protocol Buffers 2 107 359 128 Expect 1 1 3 100 diff 20 3 54 98 Standard ML 8 0 0 64 JSON 3 0 0 29 D 6 0 0 20 Windows Resource File 2 5 0 20 DOS Batch 2 0 0 18 TOML 2 0 0 15 C Shell 1 4 8 14 GLSL 10 0 0 10 Ada 1 3 0 8 Lua 1 0 1 2 Pawn 2 0 0 2 TeX 1 0 0 2 -------------------------------------------------------------------------------- SUM: 23299 1072749 1798353 10569711 --------------------------------------------------------------------------------
Маленькие нишевые сообщества зачастую, наоборот, более сконцентрированы на достижении результата за счёт идейности и плотного общения. Уровень профессионализма в каком-то смысле в таких коллективах зачастую выше за счёт более простого доступа к телу определённых грандов. При этом люди и проекты, выросшие в таких сообществах, как правило, активно проникают в остальной мейнстрим как раз за счёт своих высоких показателей качества.
В качестве примера можно вспомнить как уже упомянутый OpenSSH или tmux, который используется в инсталляторе дистрибутивов Red Hat и многих его деривативов, так и Unicode, который пришёл из неизвестной подавляющему большинству ОС Plan9. В каком-то роде и сам UNIX вместе с языком программирования C начинался как "подпольный" проект для себя.

— Есть ли общие точки взаимодействия между сообществами других *BSD систем, например, в области безопасности или образования?
— Конечно есть. Любое сообщество — это прежде всего люди со своими интересами. Открытый код в принципе про общение и взаимодействие. Код и информационные материалы активно мигрируют, портируются и адаптируются между проектами. Конференции и митапы проводятся в основном между BSD-системами или open source в целом.
— Бывают ли дружественные взаимодействия с другими некрупными сообществами пользователей операционных систем? Что думаешь о ReactOS?
— ИТ-мир в целом небольшой, а уж андеграунд и подавно "деревня", где многие перемешаны. ReactOS — это проект с очень интересной и амбициозной задачей. Моё личное мнение, что это, скорее всего, технологический и юридический тупик как ОС, но прекрасный кладезь опыта, людей, знаний и просто удовольствия для его участников. А это стоит гораздо больше, чем просто совместимая с Windows операционная система.
В 2024 году мы проверяли исходный код ReactOS на момент разработки версии 0.4.15. С находками анализатора PVS-Studio можно ознакомиться здесь.
Защищённость OpenBSD от внешних угроз
— Количество обнаруживаемых уязвимостей в операционных системах пропорционально росту их популярности. Раньше (и сейчас) системы на ядре GNU/Linux считали защищёнными от всего, потому что их доля на пользовательских ПК меньше, и в основном они крутятся на серверах. Теперь же как минимум раз в пару месяцев всплывает какая-нибудь CVE в произвольном компоненте такой системы. Как с этим обстоят дела в OpenBSD?
— OpenBSD в принципе своей главной целью декларирует безопасность кода, и зачастую многие mitigations и sane defaults появляются там раньше, чем в других ОС. Иногда даже до появления соответствующей уязвимости.
To ensure that novice users of OpenBSD do not need to become security experts overnight (a viewpoint which other vendors seem to have), we ship the operating system in a Secure by Default mode.
Защищена ли по умолчанию OpenBSD больше, чем средний GNU/Linux дистрибутив? Моё мнение — да. Помогает в этом и меньшая площадь атаки за счёт того, что тех самых произвольных компонентов в системе меньше и за ними больше внимания. Как и в любой системе, CVE бывают, не в тех объёмах, как в других ОС.
— Бывают ли ложные ощущения её "непробиваемости" из-за небольшого интереса к ней? Как часто проверяется код на внезапные "сюрпризы"?
— Оценить, насколько это происходит за счёт небольшого интереса, достаточно сложно. Равно как и назвать OpenBSD малоинтересной. Благодаря своей истории и целям она, скорее, находится в постоянном фокусе людей и организаций, занимающихся информационной безопасностью! Проверки кода идут в постоянном режиме, а не только "по праздникам".
Как привлекать внимание?
— Что сложнее в *BSD: портирование софта с GNU/Linux или расширение поддерживаемого оборудования? Или привлечение интереса к операционной системе как таковое?
— Все активности важны, все активности нужны! Тут всё в основном зависит от личных навыков и предпочтений конкретного человека. Но хочется отметить несколько грустных тенденций в мире ПО и железа в целом.

С каталогом адаптированных под OpenBSD пакетов для GNU/Linux можно ознакомиться л��бо через официальный сервер CVSWeb в директории OpenBSD Ports, либо через другие обозреватели с более обширной функциональностью, например OpenPorts. На момент написания статьи всего портировано 11919 пакетов для совместимости с OpenBSD.
Все сильнее укрепляется отношение к open source как к продукту, а не проекту, из-за чего многие пользователи считают, что им должны просто потому что, а многие разработчики, в свою очередь, ждут золотых гор сразу и безоговорочно. В итоге теряется и дух разработки, и процесс кооперации и взаимодействия. Это сказывается как на общем качестве ПО, открытости и поддержке железа, так и на отношении к идейной составляющей.
Софт становится менее портируемым, больше "приколоченным гвоздями" к конкретным архитектурам и ОС. Производители железа зачастую вместо полноценного открытия документации по-быстренькому накидывают кое-как работающий драйвер, на который забивают через какое-то время. А общее отношение к открытому коду сдвигается в сторону "криво, зато бесплатно". Вот изменение такого отношения и есть самая сложная задача.
— Можешь привести примеры историй успеха OpenBSD там, где дистрибутив GNU/Linux оказался неподходящим по покрытию задач решением?
— Тут ответ лежит, скорее, в плоскости конкретных вкусов, пожеланий и требований. Как OpenBSD, так и дистрибутивы GNU/Linux — это сложившиеся зрелые операционные системы общего назначения с богатым и пересекающимся набором ПО с открытым исходным кодом. В умелых руках они прекрасно закрывают подавляющее большинство задач.
OpenBSD я бы рекомендовал ставить везде там, где хочется здорового минимализма, безопасных настроек по умолчанию и возможности простой изоляции при сохранении широкого функционала "из коробки". Лично я разворачивал или сталкивался в организациях с почтовыми серверами, DNS и веб-серверами, прокси и брандмауэрами на базе OpenBSD.
А компания "Радиум-ИТ" вообще держит подавляющее большинство инфраструктуры на этой ОС.
Планы на будущее
— Как планируешь развивать сообщество OpenBSD в России? Помогут ли в этом наработки для отечественного железа?
— Планов, как водится, громадьё, и хочется всего и сразу! В идеале в долгосрочной перспективе есть желание прийти к большой развёрнутой инфраструктуре для общения, развития и взаимопомощи не только OpenBSD, а открытого ПО в целом. Помимо каких-то доступных виртуальных площадок будут физические локации и мероприятия: конференции, инсталл-фесты, хакатоны и хакспейсы.
Наработки для отечественного железа — это и доказательство возможностей сообщества и ОС, и инструмент популяризации, но для этого важно желание самих разработчиков и производителей железа. Многим надо перерасти старые парадигмы с закрытостью и междусобойчиками и понять, что открытость к сообществам и пользователям всех масштабов сыграет прежде всего на руку им самим.
— Какие мероприятия планируются от сообщества OpenBSD в 2026 году?
— Хочется как минимум провести инсталл-фест и несколько хакатонов совместно с ВУЗами. Обкатать эти форматы и сделать регул��рными.
— Что ожидаешь от 2026 года для OpenBSD и его сообщества? Что желаешь себе и его участникам?
— К сожалению, от 2026 года ожидаю ещё больших вызовов, но надеюсь, что их преодоление принесёт и новые возможности. Например, продолжающийся рост цен на комплектующие вынудит многих обратить внимание на простые и понятные решения, задуматься о расходе и оптимизации ресурсов.
Пожелать бы хотелось всем побольше здоровья и возможностей заниматься любимым делом!
Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Taras Shevchenko. Is OpenBSD... exotic? Community member's perspective.
