Безопасность в песочнице Firejail
Песочница это термин, который описывает изоляцию программ друг от друга (или от конкретных системных ресурсов) путем ограничения их объема, или доступа к частям операционной системы. Есть много форм песочниц, от виртуальных машин до контейнеров Docker. Другие механизмы, которые мы можем использовать , чтобы изолировать процессы от ресурсов включают SELinux, AppArmor и контрольных групп. Эти инструменты легкие и мощные, но их довольно сложно установить, особенно для неопытных пользователей. SELinux, в частности, использует зашифрованный синтаксис который, люди довольно трудно осваивают.
К счастью, для тех из нас, кто хочет легкий, мощный, безопасный, и который прост в использовании то это Firejail. Проект Firejail описывает свое программное обеспечение следующим образом :
Firejail это программа, которая снижает риск нарушения безопасности, ограничивая среду ненадежных приложений с использованием пространств имен Linux. Firejail может работать в среде SELinux или AppArmor, и она интегрирована с контрольными группами Linux.
Firejail позволяет быстро и легко предотвратить процесс доступа к определенным файлам или каталогам, отключить способность процесса получать доступ к корневой учетной записи, блока или ограничить доступ сети и установить временные файловые системы для приложения.
Программное обеспечение Firejail доступно в репозиториях Debian , Ubuntu и их производных. Проект Firejail также поддерживает пакеты и инструкции по установке для различных дистрибутивов Linux, включая Fedora , CentOS , OpenSUSE , Gentoo и Arch Linux . Помимо программного обеспечения командной строки Firejail, проект также поддерживает настольное приложение, которое может быть использовано для песочницы некоторых популярных приложений с базовым уровнем безопасности.
Чтобы установить Firejail в Ubuntu 16.04/Linux Mint 18 и других, просто набираем в терминале
sudo apt install firejail
Как правило, когда мы хотим запустить приложение внутри песочницы Firejail, мы можем просто запустить firejail команду и передать ему название программы, которую мы хотим запустить. Например, мы можем запустить Firefox с помощью
firejail firefox
Приведенная выше команда устанавливает песочницу и запускает Firefox. Веб — браузер будет иметь ограниченный доступ к нашей файловой системе и может только сохранять файлы в нескольких местах, таких, как наш каталог «Загрузки». Это означает, что если сайт ломает наш веб — браузер, то можно будет только сохранять файлы в специально отведенных местах, как и Загрузки, но не будет иметь возможность записи файлов в нашей директории «Документы».
Когда мы запускаем Firejail, песочница смотрит на имя приложения, которое мы хотим запустить в песочнице (Firefox в приведенном выше примере). Затем просматривает список известных профилей, которые хранятся в /etc/ firejail/ директории. Когда соответствующий профиль найден, правила этого профиля загружаются и применяются. Firejail поставляется со стандартным набором профилей для около 50 приложений, включая Chrome, Firefox, Opera, Thunderbird, медиа — плеер VLC, XChat, Filezilla. Если попытаться запустить приложение внутри песочницы и Firejail не имеет существующего профиля для приложения, будет использоваться общий профиль.
Программное обеспечение Firejail позволяет отключить некоторые функции. Например, мы можем отключить звук с помощью «—nosound» (параметр командной строки). Скажем , мы хотим запустить игру с отключенным звуком, мы можем использовать Firejail следующим образом :
firejail --nosound SuperTuxKart
Еще одна особенность Firejail, была возможность отключить доступ к корневой учетной записи. Firejail может блокировать доступ к учетной записи корневого пользователя, предотвращая многие типы локальных эксплойтов. Доступ к сетевых функций , которые требуют корневого доступа (например , в Ping)недоступны.
Firejail не может быть лучшим техническим решением, но будет использоваться широкой аудиторией потому что Firejail обеспечивает хорошую безопасность практически без усилий со стороны пользователя. Firejail также облегчает настройки профилей для новых приложений, поэтому список программ Firejail расширяется довольно быстро.
Короче говоря, Firejail обеспечивает полезный слой защиты, легко настроить и не требует практически никаких знаний в использовании. Это означает, что Firejail можно использовать с очень небольшим усилием и не пониманием базовых технологий. Firejail изолирует процессы, повышает нашу безопасность, использует очень мало ресурсов и почти не требует усилий для использования. В современном мире нарушений безопасности и неприкосновенности частной жизни, мое мнение: почему бы не использовать Firejail?