Hoʻokuʻu ʻia ʻo Firejail Application Isolation System 0.9.62
Ma hope o ʻeono mahina o ka hoʻomohala ʻana loaʻa hoʻokuʻu papahana Halepaahao Ahi 0.9.62, i loko kahi e hoʻomohala ʻia ai kahi ʻōnaehana no ka hoʻokō kaʻawale ʻana i nā noi kiʻi, console a me nā kikowaena. ʻO ka hoʻohana ʻana iā Firejail hiki iā ʻoe ke hōʻemi i ka pilikia o ka hoʻololi ʻana i ka ʻōnaehana nui i ka wā e holo ana i nā polokalamu hilinaʻi ʻole a i ʻole nā polokalamu pilikia. Ua kākau ʻia ka papahana ma ka ʻōlelo C, mahele ʻia e laikini ʻia ma lalo o GPLv2 a hiki ke holo ma kekahi mahele Linux me kahi kernel i ʻoi aku ma mua o 3.0. ʻO nā pūʻolo i hana ʻia me Firejail hoomakaukauia i ka deb (Debian, Ubuntu) a me rpm (CentOS, Fedora).
No ka noho kaʻawale ʻana ma ka hale paʻahao ahi hoʻohana ʻia пространства имён (namespaces), AppArmor и фильтрация системных вызовов (seccomp-bpf) в Linux. После запуска программа и все её дочерние процессы используют отдельные представления ресурсов ядра, таких как сетевой стек, таблица процессов и точки монтирования. Зависимые между собой приложения можно объединять в один общий sandbox. При желании Firejail можно применять и для запуска контейнеров Docker, LXC и OpenVZ.
ʻAʻole like me nā mea hana insulation container, ʻoi loa ka hale paʻahao māmā в конфигурации и не требует подготовки системного образа — состав контейнера формируется на лету на основе содержимого текущей ФС и удаляется после завершения работы приложения. Предоставляются гибкие средства задания правил доступа к файловой системе, можно определять к каким файлами и директориям разрешён или запрещён доступ, подключать для данных временные ФС (tmpfs), ограничивать доступ к файлам или директориям только на чтение, совмещать директории через bind-mount и overlayfs.
No ka nui o nā noi kaulana, me Firefox, Chromium, VLC a me Transmission, mākaukau nā ʻikepili изоляции системных вызовов. Для получения привилегий, необходимых для настройки изолированного окружения, исполняемый файл firejail устанавливается с флагом SUID root (после инициализации привилегии сбрасываются). Для выполнения программы в режиме изоляции достаточно указать имя приложения в качестве аргумента утилиты firejail, например, «firejail firefox» или «sudo firejail /etc/init.d/nginx start».
I ka hoʻokuʻu hou:
В файл конфигурации /etc/firejail/firejail.config hoʻohui ʻia настройка file-copy-limit, позволяющая ограничить размер файлов, которые будут скопированы в память при использовании опций «—private-*» (по умолчанию ограничение выставлено в 500MB).
В каталог /usr/share/doc/firejail добавлены шаблоны для создания новых профилей ограничения приложений.
В профилях разрешено использование отладчиков.
Улучшена фильтрация системных вызовов при помощи механизма seccomp.
Обеспечено автоопределение флагов компилятора.
Вызов chroot теперь выполняется не на основе пути, а используя точки монтирования на базе файлового дескриптора.
Каталог /usr/share помещён в белый список разнообразных профилей.
В секцию conrib добавлены новые вспомогательные скрипты gdb-firejail.sh и sort.py.
Усилена защита на стадии выполнения привилегированного кода (SUID).
Для профилей реализованы новые условные признаки HAS_X11 и HAS_NET для проверки наличия X-сервера и сетевого доступа.
Добавлены профили для изолированного запуска приложений (общее число профилей доведено до 884):