Firejail — безопасный запуск ненадежных приложений в Linux
Иногда вам может потребоваться использовать приложения, которые не были тщательно протестированы в различных средах, но вы должны их использовать. В таких случаях вполне нормально беспокоиться о безопасности вашей системы. В Linux можно использовать приложения в песочнице.
«Песочница» — это возможность запуска приложения в ограниченной среде. Таким образом, приложению предоставляется ограниченное количество ресурсов, необходимых для запуска. Благодаря приложению Firejail вы можете безопасно запускать ненадежные приложения в Linux.
Firejail — это приложение SUID (установка идентификатора пользователя владельца), которое снижает вероятность нарушений безопасности, ограничивая рабочую среду ненадежных программ с помощью пространств имен Linux и seccomp-bpf. .
Это позволяет процессу и всем его потомкам иметь собственное секретное представление о глобально разделяемых ресурсах ядра, таких как сетевой стек, таблица процессов, таблица монтирования.
Некоторые функции, которые использует Firejail:
- Пространства имен Linux
- Контейнер файловой системы
- Фильтры безопасности
- Сетевая поддержка
- Распределение ресурсов
Подробную информацию о возможностях Firejail можно найти на официальной странице.
Как установить Firejail в Linux
Установку можно завершить, загрузив последний пакет со страницы проекта на github с помощью команды git, как показано.
git clone https://github.com/netblue30/firejail.git
cd firejail
./configure && make && sudo make install-strip
Если в вашей системе не установлен git, вы можете установить его с помощью:
sudo apt install git [On Debian/Ubuntu]
yum install git [On CentOS/RHEL]
dnf install git [On Fedora 22+]
Альтернативный способ установки firejail — загрузить пакет, связанный с вашим дистрибутивом Linux, и установить его с помощью менеджера пакетов. Файлы можно скачать со страницы проекта на SourceForge. После загрузки файла вы можете установить его с помощью:
sudo dpkg -i firejail_X.Y_1_amd64.deb [On Debian/Ubuntu]
sudo rpm -i firejail_X.Y-Z.x86_64.rpm [On CentOS/RHEL/Fedora]
Как запускать приложения с помощью Firejail в Linux
Теперь вы готовы запускать свои приложения с помощью Firejail. Это достигается путем запуска терминала и добавления firejail перед командой, которую вы хотите запустить.
Вот пример:
firejail firefox #start Firefox web browser
firejail vlc # start VLC player
Создать профиль безопасности
Firejail включает в себя множество профилей безопасности для различных приложений, и они хранятся в:
/etc/firejail
Если вы собрали проект из исходного кода, вы можете найти профили в:
path-to-firejail/etc/
Если вы использовали пакет rpm/deb, вы можете найти профили безопасности в:
/etc/firejail/
Пользователи должны разместить свои профили в следующем каталоге:
~/.config/firejail
Если вы хотите расширить существующий профиль безопасности, вы можете использовать include с путем к профилю, а затем добавить свои строки. Это должно выглядеть примерно так:
cat ~/.config/firejail/vlc.profile
include /etc/firejail/vlc.profile
net none
Если вы хотите ограничить доступ приложения к определенному каталогу, вы можете использовать правило черного списка, чтобы добиться именно этого. Например, вы можете добавить в свой профиль безопасности следующее:
blacklist ${HOME}/Documents
Другой способ добиться того же результата — описать полный путь к папке, которую вы хотите ограничить:
blacklist /home/user/Documents
Существует множество различных способов настройки профилей безопасности, например запрет доступа, разрешение доступа только для чтения и т. д. Если вы заинтересованы в создании собственных профилей, вы можете ознакомиться со следующими инструкциями по Firejail.
Firejail — отличный инструмент для пользователей, заботящихся о безопасности и желающих защитить свою систему.