
Пространства имён Linux и песочница seccomp-bpf
Firejail — это легковесный инструмент безопасности, предназначенный для защиты системы Linux путём создания ограниченной среды для запуска (потенциально недоверенных) приложений.
Более конкретно, это SUID-программа песочницы, которая снижает риск нарушений безопасности за счёт использования пространств имён Linux, seccomp-bpf и возможностей Linux. Она позволяет процессу и всем его потомкам иметь собственное приватное представление о глобально разделяемых ресурсах ядра, таких как сетевой стек, таблица процессов и таблица монтирования. Firejail может работать в среде SELinux или AppArmor и интегрирован с контрольными группами Linux.
Написанное на C практически без зависимостей, программное обеспечение работает на любом компьютере с Linux с версией ядра 3.x или новее. Оно может изолировать в песочнице любой тип процессов: серверы, графические приложения и даже пользовательские сеансы входа. Программное обеспечение включает профили песочницы для ряда наиболее распространённых программ Linux, таких как Mozilla Firefox, Chromium, VLC, Transmission и т. д.
Песочница легковесна, накладные расходы низкие. Нет сложных файлов конфигурации для редактирования, нет открытых сокетных соединений, нет демонов, работающих в фоновом режиме. Все функции безопасности реализованы непосредственно в ядре Linux и доступны на любом компьютере с Linux.
Quick Start |
Advanced Browser Security |
Tor Browser Security |
См. SECURITY.md.
Поддерживаемые версии см. в SECURITY.md.
Примечание: версии из Debian stable и backports, вероятно, устарели, поэтому в настоящее время мы рекомендуем либо скачать и установить .deb-пакет из последнего релиза:
Либо собрать из исходного кода.
Debian stable (bullseye): Мы рекомендуем использовать пакет из backports.
Примечание: версии из дистрибутива и PPA, вероятно, устарели, поэтому в настоящее время мы рекомендуем либо скачать и установить .deb-пакет из последнего релиза:
Либо собрать из исходного кода.
Примечание: рекомендация использовать PPA относится в основном к самому firejail; firetools и связанные с firejail инструменты вполне можно устанавливать напрямую из дистрибутива, если их нет в PPA, поскольку они обновляются реже.
Пользователям Ubuntu 18.04+ и производных дистрибутивов (таких как Linux Mint) настоятельно рекомендуется использовать PPA.
Как добавить и установить из PPA:
sudo add-apt-repository ppa:deki/firejail
sudo apt-get update
sudo apt-get install firejail firejail-profiles
Причина: пакет firejail для Ubuntu 20.04 оставался уязвимым к CVE-2021-26910 в течение нескольких месяцев после того, как патч для него был опубликован на Launchpad:
См. также https://wiki.ubuntu.com/SecurityTeam/FAQ:
What software is supported by the Ubuntu Security team?
Ubuntu is currently divided into four components: main, restricted, universe and multiverse. All binary packages in main and restricted are supported by the Ubuntu Security team for the life of an Ubuntu release, while binary packages in universe and multiverse are supported by the Ubuntu community.
Кроме того, версия из PPA, вероятно, более свежая и содержит больше исправлений профилей.
Подробности см. в следующих обсуждениях:
Firejail доступен в нескольких дистрибутивах Linux:
Помимо вышеупомянутых исключений, если ваш дистрибутив предоставляет поддерживаемую версию firejail, обычно хорошей идеей будет установить её из дистрибутива.