OpenBSD
OpenBSD |
- Разработчик:
- Проект OpenBSD
- Семейство:
- BSD UNIX
- Исходный код:
- Открытый
- Тип ядра:
- Монолитное
- Номер:
- 4.4
- Состояние:
- Актуальное
OpenBSD — свободная многоплатформенная операционная система, основанная на 4.4BSD — BSD-реализации UNIX-системы. Основным отличием OpenBSD от других свободных операционных систем, базирующихся на 4.4BSD (таких, как NetBSD, FreeBSD) является изначальная ориентированность проекта на создание наиболее безопасной, свободной и лицензионно чистой из существующих операционных систем.[1]
ИсторияПравить
OpenBSD — самостоятельный проект, ответвление NetBSD, возникшее в конце 1995 года в результате раскола в команде разработчиков. Тэо де Раадт (Theo de Raadt), один из четырех основателей NetBSD, был вынужден покинуть проект после конфронтации по поводу дальнейшего развития ОС.[2] Взяв за основу дерево исходных кодов NetBSD и переделав его в соответствии со своим ви́дением, он создал свой собственный проект — OpenBSD, в который, вслед за ним, перешли и некоторые другие разработчики NetBSD.[3]
Новые версии (релизы) OpenBSD выходят каждые полгода: ориентировочно 1 мая и 1 ноября.[4] В настоящий момент поддерживаются 17 различных платформ и архитектур, включая популярные i386-совместимые компьютеры, MacPPC «New World», M68k, Sun SPARC и UltraSPARC, DEC Alpha, AMD, AMD64, VAX, Sharp Zaurus.[5]
Начиная с версии 4.2 команда разработчиков OpenBSD предоставляет для загрузки ISO для ряда платформ — образы установочных дисков, до версии 4.2 пользователям системы предлагалось самостоятельно делать установочные образы дисков или получать их из альтернативных источников (например заказывая готовые диски).[6]
Использование OpenBSD и дочерние проектыПравить
Наиболее популярным (хотя далеко не единственным) применением OpenBSD являются системы защиты сетей (межсетевые экраны). В немалой степени этому способствуют дочерние проекты, разрабатываемые параллельно:
- Packet Filter (PF) — межсетевой экран (файрвол), заменивший в OpenBSD популярный IP Filter Даррена Рида (Darren Reed) после многолетних разногласий по поводу лицензии.[7][8] PF был высоко оценён и взят на вооружение разработчиками параллельных проектов NetBSD и FreeBSD.[9][10]
- OpenSSH — самая распространённая открытая реализация SSH.[11]
- OpenNTPD — демон для синхронизации времени по протоколу NTP; может работать и как сервер.[12]
- OpenOSPFD — реализация протокола динамической маршрутизации OSPF (локальная маршрутизация).
- OpenBGPD — реализация протокола динамической маршрутизации BGP (глобальная маршрутизация).[13]
- OpenCVS — (в разработке и отладке; на данный момент используется только часть — OpenRCS) — более гибкая, безопасная и свободная реализация CVS, чем разрабатываемая в рамках GNU.[14]
Особенности разработкиПравить
OpenBSD отличается от других свободных BSD-систем своей системой разработки. Никакой код не может попасть в систему извне случайно; любые изменения просматриваются ответственными за соответствующую часть системы лицами. Любая ошибка, найденная в одном месте, вызывает пересмотр всего аналогичного кода.
В OpenBSD уделяется огромное внимание качеству документации. Любая ошибка в man-странице считается серьёзной и немедленно исправляется. Также большое внимание уделяется простоте и ясности кода — поскольку разработчики небезосновательно полагают, что чем проще код, тем меньше вероятность пропустить ошибку.
Разработчики OpenBSD категорически не приемлют использование любого несвободного кода в системе. Неоднократно части операционной системы исключались из репозитория из-за проблем с лицензированием:
- IP Filter — оригинальная лицензия Даррена Рида имела ряд серьезных ограничений, например, не допускала модификации кода. А кроме исправления ошибок, сторонние программы в OpenBSD подвергаются тюнингу — изменению умолчаний, запрету небезопасных режимов и т. п. Некоторое время IP Filter имел компромиссную лицензию, но автор вернулся к оригинальной формулировке, и начиная с релиза 3.0, межсетевым экраном в OpenBSD стал Packet Filter.
- XFree86 — из-за изменения лицензии был заменён на X.Org.
- Веб-сервер Apache — версия, входящая в OpenBSD, является последней версией (1.3.29) со старой, приемлемой, лицензией, c бэкпортами текущих патчей и специфическими патчами OpenBSD: поддержка IPv6, использование chroot и другими.
- В OpenBSD (в отличие от наиболее распространённых сегодня свободных систем — GNU/Linux и FreeBSD, не говоря о «полуоткрытых» системах вроде OpenSolaris) не используются драйвера с «блобами» — скомпилированными объектными модулями с нераскрываемым исходным кодом. Кроме несвободного исполнения, такие драйвера позиционируются как потенциально опасные (в особенности, в системе с монолитным ядром, каковой является и OpenBSD), так как не поддаются проверке и необходимой модификации. Однако бинарные прошивки включаются в состав системы, если они допускают свободное распространение, поскольку они исполняются не на центральном процессоре, а на самом оборудовании.
- В дерево портированных программ (портов), за редкими исключениями, не включаются (или удаляются) программы с лицензиями не разрешающими распространение в виде исходных кодов и в бинарном (скомпилированном) виде.
ПримечанияПравить
- ↑ http://www.openbsd.org/goals.html
- ↑ http://mail-index.netbsd.org/netbsd-users/1994/12/23/0000.html
- ↑ http://www.jus.uio.no/sisu/free.for.all.peter.wayner/18.html#987
- ↑ http://www.openbsd.org/faq/faq1.html#Next
- ↑ http://www.openbsd.org/plat.html
- ↑ http://www.openbsd.org/faq/faq3.html#ISO
- ↑ http://www.openbsd.org/faq/pf/index.html
- ↑ http://coombs.anu.edu.au/~avalon/
- ↑ http://www.netbsd.org/Documentation/network/pf.html
- ↑ http://pf4freebsd.love2party.net/
- ↑ http://www.openssh.com/
- ↑ http://www.openntpd.org/
- ↑ http://www.openbgpd.org/
- ↑ http://www.opencvs.org/
СсылкиПравить
- Официальный сайт
- Undeadly — блог-сервер разработчиков OpenBSD и не только
- Сайт русскоязычных пользователей (не зеркало)
- Новости OpenBSD на сайте Linux.org.ru
- Сайт русскоязычного сообщества OpenBSD и документация
- Дополнительная информация
- BXR.SU — поиск исходных кодов OpenBSD на основе OpenGrok и nginx
- mdoc.su — короткие веб-адреса системных руководств БСД на основе nginx с открытыми исходниками
- Советский поиск портов OpenBSD на основе sqlports с подробностями о зависимостях, получение актуальной справочной информации
- Иногородний поиск портов OpenBSD на основе истории изменений в CVS (без информации о зависимостях)
br:OpenBSD eo:OpenBSD hu:OpenBSD jbo:la by sy dy poi gubni lt:OpenBSD lv:OpenBSD nn:OpenBSD