`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

UNIX для практичных... параноиков

Статья опубликована в №37 (556) от 3 октября

0 
 

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

Сегодня мы поговорим о еще одной незаслуженно игнорируемой прессой UNIX-подобной операционной системе. Эта ОС – отпрыск легендарной BSD UNIX, созданной в Калифорнийском университете в Беркли, занимает почетное второе место по распространению среди BSD-систем. Она слывет самой концептуально безопасной и хорошо спроектированной системой современности. Наконец, большинство системных администраторов UNIX/Linux повсеместно используют инструментальные средства, портированные из этой ОС. Наверное, вы уже успели догадаться, что речь пойдет об OpenBSD...

«Иной» и его система

UNIX для практичных... параноиков
Тео де Раадт – не только чрезвычайно творческая личность, но также заядлый турист и скалолаз-любитель

Тео де Раадт (Theo de Raadt) относится к числу талантливых людей, которые не укладываются в общепринятые рамки. И дело не столько в уровне его способностей (безусловно, он отличный специалист по UNIX, заслуживающий звания UNIX-гуру), сколько в его характере, несвойственном другим авторитетным экспертам. Разумеется, компьютерный еженедельник – не совсем подходящее место для какого-либо обсуждения личностных качеств человека, однако в данной ситуации нельзя не сказать об этом несколько слов, потому что именно неуступчивость, несдержанность, бестактность и сварливость де Раадта стали причиной его исключения в конце 1994 г. из проекта NetBSD, притом, что он был одним из небезызвестной четверки, которая в 1993 г. его и основала. Более того, само название было предложено именно де Раадтом из-за решающей роли Глобальной Сети в распределенной модели совместной разработки ОС. К сожалению, буквально в течение двух лет один из главных разработчиков и член основной команды NetBSD (так называемой core team) сумел рассориться с пользователями системы, сторонними разработчиками и, как результат, с представителями высшего руководства проекта. Ему указали на дверь, и бесславный «Элвис покинул здание», не преминув громко ею хлопнуть, – де Раадт опубликовал переписку, в которой запечатлен весь процесс его удаления.

UNIX для практичных... параноиков
Разработчикам OpenBSD не чужд юмор

Однако он нашел способ реализации своих организаторских способностей, четырнадцатилетнего опыта системного программирования в SunOS (10 лет) и BSD-подобных (4 года), а также, если так можно выразиться, реабилитации в глазах общественности. Не прошло и года, как разработчик инициирует создание проекта OpenBSD – ОС, основанной на коде NetBSD. Внутренний релиз (1.2) увидел свет в июле 1996 г., версия 2.0 системы вышла в октябре. С этого момента новые варианты появляются каждые полгода. Так, на данный момент последним предложением OpenBSD стал выпущенный 1 мая этого года релиз с номером 3.9, следующий – 4.0 – будет представлен 1 ноября.

Де Раадт более чем хорошо усвоил прежний урок и теперь руководит проектом OpenBSD довольно сносно, хотя поток жалоб от журналистов и интервьюеров на него не иссякает. Что же касается проекта NetBSD, то ему, похоже, воздается по заслугам – из-за ошибок руководства он сейчас находится в незавидном положении. Подробнее об этом вы можете узнать, если введете в строке поиска Google фразу «the future of NetBSD».

Свобода превыше всего

Одной из целей, преследуемых проектом OpenBSD, было создание открытой, свободной от ограничений в плане распространения ОС. Чтобы этого добиться, для ПО, входящего в состав системы, решено использовать лицензии, схожие по условиям с Berkeley Copyright. В частности, Berkeley Copyright не накладывает каких бы то ни было ограничений на частное или коммерческое использование ПО, а лишь обязывает сохранять в модифицированных версиях копию авторского права и включать в рекламу, связанную с пакетом, упоминание его создателей (т. е. Калифорнийский университет в Беркли и прочих участников разработки). Следовательно, для основных компонентов системы допустимыми являются лицензии ISC, BSD, Apache, MIT и пр., а вот использование copyleft-лицензий, в частности самой распространенной в FOSS-мире – GNU GPL – из-за ее ограничивающего характера воспрещается. Впрочем, опциональные компоненты системы, например такие как инструментарий разработки, в исключительных ситуациях могут быть GPL-лицензируемыми. Главный образец такого рода исключений – порт GNU Compiler Collection (GCC), альтернативу которому найти нельзя, а создать действительно достойную замену у команды OpenBSD просто нет возможностей.

В июне 2001 г. исходный текст системы и дерева портов был подвергнут тщательной лицензионной ревизии. Оказалось, что более сотни файлов «не обременены» лицензиями, неясно лицензированы или вообще используются без соблюдения условий лицензий, на которых распространяются. Во многих случаях участникам проекта приходилось обращаться к авторам ПО для выяснения их позиции. Часто создатели соответствующих программ меняли лицензии на более либеральные, редко – код удалялся из OpenBSD и портов.

С чего начать

Но давайте «спустимся на землю» и поговорим о вопросах практического характера – методах получения системы. Их существует пять.

UNIX для практичных... параноиков
Сохраняя традицию выбора животных на роль символов UNIX-подобных ОС, для OpenBSD выбран некий гибрид иглобрюха (Tetraodon) и рыбы-ежа (Diodontidae) по имени Puffy

Первый, как и почти для любой современной Open Source ОС, – исходные тесты системы и документацию можно получить посредством анонимных CVS или CVSup. К слову сказать, OpenBSD был первым проектом, разработка которого начала вестись с использованием открытого для просмотра всеми желающими CVS-репозитория, из-за чего она и получила свое название.

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

Третий – FTP-установка. Производится она следующим образом: с одного из FTP-серверов, или зеркал, необходимо скачать небольшой загрузочный образ CD-ROM (файл называется cd39.iso), содержащий инсталляционную программу. После записи на диск и загрузки с него компьютера программа на одном из последних этапов установки предложит выбрать требуемые для получения файлы.

Четвертый – использование полного установочного ISO-образа. Такие дистрибутивы на официальном сайте не предоставляются, потому как финансирование проекта напрямую зависит от продаж компакт-дисков и сопутствующих товаров, а также пожертвований. Впрочем, некоторые сайты самостоятельно выкладывают для загрузки образы дисков, и найти их не составляет особого труда.

Наконец, пятый – применение одного из немногочисленных LiveCD. Самым известным считается разработанный французским программистом Габриелем Падерни (Gabriel Paderni) дистрибутив под названием OliveCD. Жаль, что в его основе лежит предыдущая версия OpenBSD 3.8, поскольку он выполнен довольно качественно и, без сомнения, заслуживает внимания.

Дело говорит само за себя

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

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

UNIX для практичных... параноиков
UNIX старой школы: базовая инсталляция OpenBSD оснащена и выглядит воистину по-спартански – без каких бы то ни было излишеств. Хотя для применения в роли серверов и брандмауэров такой системы вполне достаточно

Прежде всего стоит упомянуть оригинальный процесс аудита кода OpenBSD. Сначала, по соглашению, им занималась компания Secure Networks, производитель известного ПО поиска сетевых дефектов Ballista (после того как Secure Networks была куплена Network Associates, продукт переименовали в Cybercop Scanner). Но по мере «совершенствования» ошибок компании становилось все труднее их отыскивать, и после нескольких лет сотрудничества договор был расторгнут. Так аудитом начали заниматься сами разработчики ОС. Состоит этот процесс во всестороннем пофайловом анализе каждого критического программного компонента. Производится поиск не столько сугубо дефектов в безопасности, сколько обыкновенных ошибок в ПО. Исходные тексты подвергаются многократному аудиту разными людьми, обладающими различными умениями и навыками.

Поскольку проект OpenBSD базируется в Канаде, а законодательство этой страны не запрещает экспорт криптографических алгоритмов (в отличие от США, где разрабатывается большинство ОС), то шифрование используется в системе повсеместно – от передачи файлов до файловых систем и сетевой поддержки.

Средство OpenSSH (разрабатывается как отдельный подпроект, широко распространившееся далеко за пределы OpenBSD, заменяет rlogin с telnet безопасными командами: ssh (вход в систему), scp (копирование) и sftp (альтернатива стандартной ftp).

UNIX для практичных... параноиков
LiveCD-дистрибутив OliveBSD обладает не только довольно дружелюбным оконным менеджером IceWM, но и необходимым джентльменским набором приложений

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

Доступны хэш-библиотеки MD5, SHA1 и RIPEMD160. OpenBSD поставляется с технологией аутентификации и шифрования Heimdal Kerberos, поддерживает преобразования стандартов Blowfish, Data Encryption Standard (DES), 3DES и Cast, используемые в ядре и различных пользовательских программах, а также широкий спектр аппаратных средств шифрования.

Довольно популярным во «внешнем мире» является OpenBSD IP Security Protocol (IPSec), применяемый взамен принципиально небезопасного IPv4. Дабы защитить конфиденциальные данные и воспрепятствовать изменению пакетов во время процесса передачи, IPSec осуществляет шифрование и проверку пакетов. С появлением IPv6 он стал неотъемлемой частью стандартного Internet-протокола.

Но что весьма важно – вся эта механика функционирует, в основном, за сценой, поэтому пользователи и администраторы могут поддерживать системы в защищенном состоянии, не углубляясь в теоретические аспекты безопасности. К примеру, все несущественные для работы сервисы по умолчанию отключены – таким образом, подразумевается, что администратор сначала должен ознакомиться с возможностями доступных служб, и лишь после этого активизировать их. В результате такой подход позволяет избежать различных проблем (в первую очередь связанных с безопасностью), характерных для систем, где сервисы вроде NFS, mountd, Web-сервер по умолчанию запущены.

Важной составляющей OpenBSD считается Packet Filter (PF) – функциональная система фильтрации трафика TCP/IP и трансляции сетевых адресов (NAT). PF также обеспечивает нормализацию пакетов, управление полосой пропускания, балансировку загрузки, фильтрацию спама, аутентификацию пользователей и пр. Практически любые мыслимые функции, которые можно возложить на брандмауэр, либо уже реализованы в PF, либо гарантированно появятся в будущих релизах. Компании, годами применяющие решения на основе OpenBSD, неизменно положительно характеризуют PF – за богатство возможностей, простоту администрирования, стабильность и производительность.

В наследство от NetBSD OpenBSD получила способность к работе на разнообразных аппаратных архитектурах. Конечно, из-за доминирования x86 переносимость ОС сегодня ценится не так, как, скажем, лет десять назад, но все же эта особенность небесполезна. Среди поддерживаемых платформ (кроме x86) числятся AMD64, Alpha, SPARC, VAX, SGI, Apple PowerPC, HP/PA и др.

Достаточное внимание уделено и программной совместимости. В частности, обеспечивается бинарная эмуляция большинства программ из сред FreeBSD, Linux, Solaris, BSD/OS, SunOS и HP-UX.

Конечно, этими функциональными особенностями OpenBSD не ограничивается – упомянуть в рамках одной статьи абсолютно все ее достоинства, даже кратко, увы, невозможно. Поэтому подведем черту – OpenBSD, безусловно, интересна и производит положительное впечатление. Естественно, в этом большая заслуга великолепной отлаженности кода системы и всепроникающих средств безопасности. При этом она отличается малой ресурсоемкостью, простотой и логичностью. Если вы просто любитель UNIX, которому уже набили оскомину бесчисленные дистрибутивы Linux, хотите попробовать что-то классическое (old school) и к тому же заботитесь о безопасности, то OpenBSD станет отличным выбором. Если же вы – практикующий администратор сети и вам необходим доступный, но эффективный брандмауэр, то претендента на эту роль лучше, чем OpenBSD, найти вряд ли удастся. Подробнее о различных применениях этой системы можно узнать здесь.

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

0 
 

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT