Установка и использование Firejail

firejail

Firejail — это SUID-программа безопасности Linux, которая значительно снижает риск взлома системы безопасности путем изолированной среды работающих ненадежных приложений. Firejail достигает этого, используя пространства имен Linux и seccomp-bpf, которые позволяют подключать фильтр системных вызовов к процессу и всем его потомкам, тем самым уменьшая вероятность атаки на ядро системы.

После установки Firejail вы можете запускать приложения из командной строки, чтобы они имели частное представление глобально общих ресурсов ядра, таких как сетевой стек. С этим дополнением к вашей платформе Linux вы получите повышенный уровень безопасности в уже защищенной среде.

Firejail не ограничивается графическими приложениями. На самом деле Firejail может работать в изолированной среде от серверов, инструментов с графическим интерфейсом пользователя и даже от сеансов входа пользователя.

Хотите верьте, хотите нет, Firejail невероятно прост в использовании.

Поскольку Firejail встречается в большинстве стандартных репозиториев, вам нужно всего лишь использовать команды по установке в соответствии с выбранным дистрибутивом.

Установка Firejail

Чтобы установить Firejail, войдите в свою операционную систему Linux, откройте окно терминала и введите команду:

sudo apt-get установить firejail -y

Использование Firejail

Использовать Firejail довольно просто. Допустим, вы хотите открыть экземпляр Firefox. Для этого вернитесь в окно терминала и введите команду:
firejail firefox

Откроется Firefox, и вы увидите довольно много результатов в окне терминала.
Firefox работает в песочнице Firejail

Если вы обнаружили что в запущенных через Firejail приложениях нет звука, то введите команду:

firecfg --fix-sound

Приведенная выше команда исправит несколько ошибок в Pulseaudio, поэтому звук больше не должен быть проблемой. После выполнения команды выйдите и снова войдите в систему, чтобы исправление вступило в силу.

Если вы используете Firejail в настольном дистрибутиве, вам нужно интегрировать его в среду рабочего стола (например, GNOME, KDE, Xfce, Pantheon и т. Д.). Для этого выполните команду:

sudo firecfg
Выйдите и войдите снова.

Это настроит несколько символических ссылок, добавит вашего пользователя в базу данных доступа Firejail и исправит количество файлов рабочего стола. После того, как вы запустите команду firecfg, вам больше не придется запускать настольные приложения из командной строки, поскольку они будут автоматически запускаться с помощью команды firejail.

Возможные проблемы

Одна из проблем, с которой вы можете столкнуться, заключается в том, что приложения из песочницы не будут иметь доступа к вашей файловой системе. Например, допустим, вы запустили команду firejail firefox, а затем попытались загрузить файл на веб-сайт. Firejail может предотвратить это. Если это так, вы должны решить несколько задач, чтобы все заработало. Вот что вам нужно сделать (мы будем придерживаться нашего примера Firefox).

  1. Откройте окно терминала.
  2. Введите команду mkdir -p ~/.config/firejail.
  3. Перейдите во вновь созданный каталог с помощью команды cd ~/.config/firejail.
  4. Скопируйте профиль Firejail по умолчанию во вновь созданный каталог с помощью команды cp /etc/firejail/firefox.profile ~/.config/firejail/.
  5. Отредактируйте вновь созданный профиль в соответствии с вашими потребностями.

Допустим, вам нужно загрузить файлы из каталога ~/Documents. Для этого вам нужно добавить запись в белый список для этого каталога. Откройте вновь созданный файл с помощью команды:

nano ~/.config/firejail/firefox.profile

Под строками noblacklist добавьте следующую строку:

whitelist ${HOME}/Documents

Сохраните и закройте файл.

Вот еще один трюк. Допустим, вы хотите дать приложению разрешение только на чтение в ~ / Documents. Для этого вы можете добавить строку:

read-only ${HOME}/Documents

Сохраните и закройте файл.

Как вы, вероятно, можете догадаться, в рукаве Firejail есть много действительно изящных трюков. Чтобы узнать больше о том, что вы можете делать с профилями, введите команду man firejail-profile, чтобы узнать, что предлагает эта функция.