Включите исполнение JavaScript в браузере, чтобы запустить приложение.
5 ноя 2024

OpenBSD - безопасная операционная система

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

Что такое OpenBSD?

OpenBSD — это бесплатная и открытая операционная система, основанная на BSD-реализации UNIX-системы. Проект появился в 1995 году, начал его программист и инженер по ПО Тео де Раадт. Подробную информацию об установке и настройке операционной системы можно найти здесь.

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

Возможности и преимущества OpenBSD

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

  • использование современных механизмов безопасности, например, W^X, постоянное проведение аудита безопасности для выявления уязвимостей;
  • поддержка множества аппаратных архитектур;
  • операционная система доступна бесплатно, любой разработчик имеет право свободно модифицировать и распространять ее;
  • большой набор встроенных инструментов;
  • минимальная необходимость в дополнительной настройке после установки;
  • активное и заинтересованное сообщество;
  • наличие качественной и подробной документации, содержащей информацию о каждой утилите и системном вызове. 

Что входит в базовую поставку OpenBSD?

В базовую поставку операционной системы входит:

  • X.org — система, обеспечивающая организацию графической рабочей среды;
  • LLVM и Clang — инструменты для компиляции кода;
  • GCC — коллекция компиляторов для нескольких языков программирования;
  • Perl;
  • NSD и Unbound — DNS-серверы;
  • ncurses — библиотека для создания текстового пользовательского интерфейса;
  • binutils — набор инструментов для работы с объектными файлами;
  • gdb — отладчик, который поддерживает множество языков (C, C++, Go, Rust и другие);
  • libfido2 — библиотека для работы с устройствами FIDO;
  • Expat — библиотека для парсинга XML;
  • zlib — библиотека для сжатия данных;
  • также включено множество других компонентов, среди которых, например, LibreSSL, OpenSSH, pf и tmux.

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

Поддержка аппаратного обеспечения OpenBSD

Разработчики проекта активно работают над осуществлением поддержки современного оборудования, хотя уже сейчас поддерживается множество аппаратных платформ. Операционная система совместима со следующими архитектурами: amd64, arm64, powerpc64, sparc64, i386, armv7, alpha, hppa, landisk, loongson, luna88k, macppc, osteon, riscv64. Довольно много архитектур (например, arc, hppa64 и pmax) поддерживалось ранее, но сейчас их поддержка прекращена.

Страницы руководства

Разработчики проекта уделяют большое внимание документации: обеспечивают подробную информацию о каждом компоненте и отслеживают ее актуальность. Документация представлена в виде страниц руководства, которые представляют из себя основной и авторитетный источник информации о проекте. Страницы руководства доступны через команду man, более подробно об этой команде и ее опциях можно прочитать здесь (как и о других командах, если вставить в поисковую строку их название). Среди других полезных команд для новых пользователей afterboot (что нужно проверить после установки), help (помощь для пользователей), adduser и rmuser (добавить и удалить новых пользователей), reboot и hatl (остановка и перезапуск системы). Ошибка в документации приравнивается к ошибке в коде, поэтому разработчики подходят к написанию страниц руководства ответственно.

Область применения OpenBSD

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

В качестве операционной системы для мобильный устройств и настольных ПК (или ноутбуков) OpenBSD используется крайне редко, так как не поддерживает большую часть возможностей для повседневного пользования и работы, предоставляемых популярными ОС, такими как, например, Windows. 

Различия между OpenBSD и другими вариантами Unix

Главным отличием OpenBSD от других Unix-подобных систем являются строгие требования к безопасности: именно она стоит на первом месте, в то время как для других систем приоритетом может быть производительность, совместимость с широким спектром аппаратных платформ и так далее. Именно этой особенностью обусловлены остальные отличия проекта от других Unix-подобных систем: используемые технологии, постоянный мониторинг кода для выявления уязвимостей (что сказывается на расширении проекта и определяет его модель развития), включение/исключение из встроенных инструментов того или иного продукта, так как все встроенные инструменты должны соответствовать целям проекта, одной из которых и является безопасность.

Сообщения об ошибках

Кто угодно может сообщить об ошибках, или просто предложить исправления, более того, разработчики считают это скорее обязанностью пользователей. Для создания отчета об ошибке нужно использовать команду sendbug. Если по какой-то причине пользователь не может использовать эту команду, то отчет об ошибке можно отправить на электронную почту. При создании отчета важно максимально подробно и четко описывать проблему, не обращая внимание на длину сообщения; также стоит указать, как воспроизвести проблему, какой получился вывод и другие детали возникшей проблемы. 

В этом разделе официального сайта можно получить более подробную информацию о том, как сообщить разработчикам об ошибке. Прежде чем обращаться за помощью, стоит выполнить все рекомендации с этой страницы, ведь проект поддерживается за счет пожертвований и собственных средств разработчиков, в связи с чем ресурсы проекта ограничены. Для тех, кто хочет быть в курсе новостей и участвовать в обсуждении различных тем (баги, безопасность, soft updates, общие вопросы) существуют мейлинг-листы по темам.