KDE Linux ужесточает требования к компонентам системы

1000px.jpg

В ОС KDE Linux, развиваемой командой KDE, после внутреннего мини-аудита безопасности системы, были пересмотрены базовые компоненты. Проект, который KDE позиционирует как собственную находящуюся в разработке операционную систему, продолжает двигаться к более контролируемой и предсказуемой модели: меньше нестандартных модулей ядра, меньше зависимостей от AUR и больше пользовательских реализаций там, где раньше использовались компоненты ядра.

Разработчики объяснили изменения тем, что в предыдущем месяце в upstream-ядре Linux было найдено несколько проблем безопасности. После этого Adrian Vovk, Hadi Chokr и Nate Graham провели проверку небезопасного и неиспользуемого ПО, уже включённого в KDE Linux. Итогом стал набор изменений, направленных на упрощение системной базы и снижение числа потенциально рискованных компонентов.

Основные изменения

  • Возврат с Zen Kernel на обычное ядро Linux. KDE Linux больше не будет использовать Zen Kernel как базовый вариант ядра. По словам разработчиков, эта ветка уже не давала заметных преимуществ сверх тех настроек конфигурации, которые проект и так применяет самостоятельно. Иными словами, ради упрощения сопровождения выбрали более близкий к upstream вариант ядра.

  • Удаление небезопасных и неиспользуемых модулей ядра. Из системы убраны модули, которые разработчики сочли одновременно ненужными и потенциально рискованными. Это снижает поверхность атаки: чем меньше кода загружается в пространство ядра, тем меньше компонентов могут стать источником уязвимостей.

  • Перенос NTFS и CDemu на FUSE-варианты. Вместо модулей ядра для NTFS и CDemu теперь используются пользовательские FUSE-реализации. Такой подход делает систему более консервативной: файловая логика работает вне ядра, а значит возможные ошибки не получают тот же уровень привилегий, что код внутри kernel space.

  • Удаление внешних модулей OpenRazer и APFS. Предустановленные out-of-tree-модули OpenRazer и APFS убрали из образа. В проекте считают, что такие компоненты в будущем могли бы помешать прохождению проверки Secure Boot, поэтому вместо поставки сторонних модулей ядра KDE Linux хочет двигаться в сторону upstream-решений. Для APFS при этом остаётся возможность работы через FUSE-драйвер, хотя разработчики отдельно отмечают неопределённость вокруг его будущего.

  • Удаление лишних пакетов из базового образа. Из поставки исключены acpi_call, busybox, cryfs, encfs, hplip, v4l2loopback-utils и vpl-gpu-rt. Мотивировка простая: эти компоненты либо не используются, либо не нужны в базовой системе, либо могут быть заменены пользовательскими решениями.

  • Отказ от fuse2. KDE Linux удаляет fuse2, поскольку он считается неподдерживаемым и небезопасным. Побочный эффект — часть старых AppImage-приложений может перестать запускаться. Разработчики предлагают считать это проблемой самих приложений и их упаковщиков: им нужно переходить на fuse3, тем более что другие ОС уже также отказались от fuse2.

  • Полный отказ от использования AUR. Из-за удаления fenrir проект смог полностью избавиться от зависимости от Arch User Repository. Ранее AUR уже был источником инфраструктурной нестабильности; кроме того, такая зависимость плохо сочеталась с целью KDE Linux быть менее привязанной к специфике упаковки Arch.

Параллельно с «чисткой» разработчики улучшили инфраструктуру сборки: KDE Linux теперь компилирует KDE-софт напрямую через kde-builder, а не генерирует пакеты Arch и не устанавливает их через mkosi. Это должно лучше соответствовать тому, как сами разработчики KDE собирают своё ПО, упростить возможную смену источника не-KDE-компонентов и ускорить сборки за счёт более эффективного кэширования.

Ещё одно направление — автоматическое тестирование. У KDE Linux уже есть базовая проверка «загружается ли образ до рабочего стола», но теперь проект дорабатывает систему на базе OpenQA, чтобы заранее отлавливать сломанные сборки и постепенно расширять набор проверок. Также добавлен тест, который должен не допустить выпуска образов с некорректными файловыми capabilities.

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

>>> Источник

©  Linux.org.ru