Недавно проект Ubuntu разродился бета-версией следующего релиза своей ОС, известной как Ubuntu 9.10, а также под более причудливым названием Karmic Koala (“Кармический коала”). Я тестировал эту версию Ubuntu, находившуюся еще на стадии разработки, на протяжении нескольких недель. И появление бета-версии кажется мне подходящим случаем, чтобы отметить целый ряд новых или усовершенствованных функций, которые привлекли мое внимание.

Перечень усовершенствований и дополнений в Karmic Koala весьма длинный. Среди них — обновленные версии ключевых приложений с открытым исходным кодом, которые все ожидают встретить в любом свежем дистрибутиве Linux (новые версии браузера Firefox, офисного пакета OpenOffice.org и настольной среды GNOME). Помимо этих привычных обновлений я бы особо выделил изменения, связанные с шифрованием дисков, более жесткой системой распределения полномочий и интеграцией с сервисами облачных вычислений.

Учитывая сказанное выше, я ожидаю, что версия 9.10 усилит позиции Ubuntu как наиболее популярного варианта Linux для настольных и мобильных компьютеров. Что касается серверной части, то в новом релизе проект Ubuntu предусмотрел варианты использования частных и общедоступных вычислительных облаков.

Шифрование дисков

Если учесть, как легко может быть потерян или украден ноутбук или нетбук и насколько просто постороннему человеку получить доступ к конфиденциальным сведениям на незашифрованном диске, никто не должен перевозить портативный компьютер, не защитив его жесткий диск с помощью технологий шифрования. Несколько прежних релизов Ubuntu предоставляли пользователям возможность шифрования любых разделов диска кроме загрузочного на уровне блоков информации. Но данная функция была доступна только при альтернативной установке системы с помощью текстовых команд, тогда как большинство пользователей отдает предпочтение предусмотренной по умолчанию установке с компакт-диска LiveCD. Более того, инсталлятор Ubuntu Netbook Remix (UNR) вообще не показывает четкого пути к зашифрованному диску.

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

В версию 8.10 были добавлены зашифрованные папки Private для каждого пользователя. Однако чтобы обратиться к ним приходилось копировать туда файлы, а для папок с настройками приложений создавать символические ссылки на каталог home, в котором приложения обычно ищут такие папки. В версии 9.04 защита была расширена и охватила весь каталог home, но воспользоваться ею можно было только при альтернативном способе установки системы.

Наконец, в Ubuntu 9.10 возможность шифрования каталога home стала доступна при использовании предусмотренной по умолчанию установки с LiveCD. В процессе установки инсталлятор Ubuntu спросил, хочу ли я настроить систему на автоматическую регистрацию пользователя, на регистрацию с парольной защитой или на регистрацию с паролем и шифрованием раздела home. При выборе последнего варианта файл подкачки конфигурируется с учетом шифрования. Это важно, поскольку он может содержать конфиденциальные сведения, даже если компьютер обладает достаточно большим объемом ОЗУ.

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

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

Правда, в данный момент компьютеры с таким шифрованием не поддерживают режим выключения с сохранением содержания ОЗУ на диске (hibernation). Это связано с методом шифрования файла подкачки. Но разработчики Ubuntu продолжают поиски решения, позволяющего обеспечить поддержку такого режима.

Firefox и политика AppArmor

Ubuntu с версии 7.10 содержит средства управления доступом AppArmor. Хотя они никогда не рекламировались и не преподносились пользователям столь настойчиво, как аналогичный инструмент SELinux в дистрибутивах Fedora и RHEL корпорации Red Hat, совершенствовались они с каждым новым релизом.

AppArmor развивает имеющиеся в Linux средства управления доступом, позволяя администраторам более дозировано предоставлять или отбирать системные привилегии, чем это предусматривается в используемой по умолчанию схеме предоставления доступа по усмотрению администратора Linux. В Ubuntu 9.10 имеется политика применения этих средств управления в сочетании с браузером Firefox. В протестированной мною бета-версии политика по умолчанию деактивирована. Я активировал ее командой sudo aa-enforce firefox и перезапустил Firefox.

Я изучил политику Firefox AppArmor, которая хранится в виде легко читаемого текстового файла, и выяснил, что она запрещает браузеру доступ к папке в каталоге home, где хранятся ключи SSH. По умолчанию мне предоставлялось право просмотра и редактирования этой папки. При использовании традиционных средств управления доступом, имеющихся в Linux, запущенные мною приложения получают те же права, что и я сам. Это означает, что я (или кто-то другой, кто пользуется моим браузером) мог бы с помощью Firefox читать и изменять весьма чувствительные к вносимым изменениям конфигурационные файлы SSH. Но после активации политики AppArmor для Firefox я уже не имел возможности получить доступ или модифицировать директорию SSH в каталоге home.

Хотелось бы, чтобы участники проекта Ubuntu продолжили работу над AppArmor и, возможно, распространили сферу применения инструментов для формулирования политики AppArmor на сервис управления сборками Personal Package Archive. В другом популярном дистрибутиве Linux, а именно в SUSE, который также содержит средства AppArmor, имеется аналогичный сервис. Не исключена возможность сотрудничества разработчиков двух проектов с целью обеспечения таких функций применительно к соответствующим сервисам.

Ubuntu One

В мае компания Canonical, которая является спонсором Ubuntu, выпустила закрытую бета-версию сервиса хранения в Интернете и синхронизации файлов Ubuntu One. Изначально он позволял хранить 2 Гб информации бесплатно и 10 Гб за 10 долл./мес., обеспечивая синхронизацию файлов между компьютерами под управлением Ubuntu и веб-сервисом Canonical, который использует для хранения вычислительное облако Amazon S3. За минувшее время эта бета-версия стала общедоступной, объем платного хранения увеличился до 50 Гб, помимо синхронизации файлов стала производиться синхронизация данных, используемых отдельными приложениями Ubuntu для настольных ПК.

Например, входящая в состав Ubuntu 9.10 версия приложения для составления заметок Tomboy может синхронизировать записи с Ubuntu One (но не только). Благодаря этому с помощью сервиса компании Canonical по идее можно синхронизировать заметки, сделанные на разных компьютерах. Правда, мне пока не удалось заставить эту функцию работать на своей тестовой системе. Подобные же варианты синхронизации предусматриваются для списка контактов почтового клиента Evolution и закладок браузера Firefox. В обоих случаях для синхронизации с Ubuntu One используется ориентированная на работу с документами СУБД CouchDB.

Сервис Ubuntu One и соответствующие компоненты клиентских программ все еще остаются сырыми. Особенно нуждается в доработке веб-интерфейс для просмотра заметок и навигации по файлам. Однако меня порадовала перспектива создания моста между Linux-приложениями для настольных ПК, запускаемыми локально и в Интернете.