Linux має репутацію досить захищеної, і з трьох великих операційних систем вона стикається з набагато меншими проблемами, коли справа доходить до конфіденційності. Проте, наскільки безпечним може бути Linux, завжди є можливість вдосконалити. Представляємо Firejail. Це програма, яка дозволяє користувачам використовувати будь-яку запущену програму та «заключити її» або «пісочницю». Firejail дає змогу ізолювати програму та заборонити їй доступ до будь-чого іншого в системі. Додаток є найпопулярнішим інструментом пісочниці програм у Linux. Саме через це багато дистрибутивів Linux вирішили постачати це програмне забезпечення. Ось як отримати Firejail на Linux.
ПОВІДОМЛЕННЯ СПОЙЛЕРА: прокрутіть униз і перегляньте відеоурок у кінці цієї статті.
Установка
Ubuntu
sudo apt install firejail
Debian
sudo apt-get install firejail
Arch Linux
sudo pacman -S firejail
Не задоволені репо-версією Firejail на Arch? Розглянемо будівництво версія Git натомість з AUR.
Fedora
На жаль, немає пакету Firejail для Fedora. У основних сховищ його немає, і немає підстав вважати, що це зміниться. Користувачі Fedora все ще можуть інсталювати програмне забезпечення за допомогою Copr.
Copr дуже схожий на PPA в Ubuntu або Arch Linux AUR. Будь-який користувач може створити репозиторію Copr і встановити на неї програмне забезпечення. Існує багато репозиторій FireJail Copr, тож якщо той, який ми наведемо в цій статті, перестане оновлюватися, не соромтеся перейдіть на веб-сайт і знайти заміну.
Щоб отримати Firejail на Fedora, виконайте:
sudo dnf copr enable ssabchew/firejail sudo dnf install firejail
OpenSUSE
Як і більшість сторонніх програм для Suse, користувачі знайдуть Firejail в OBS. Версії Firejail можна швидко встановити для останніх версій Leap і Tumbleweed. Отримати їх тут.
Не забудьте натиснути кнопку в один клік, щоб встановити через YaST.
Інший
Вихідний код для Firejail легко доступний і легко компілювати, якщо ви використовуєте непідтримуваний дистрибутив Linux.
Для початку встановіть пакет Git у свою версію Linux. Зробіть це, відкривши менеджер пакунків, знайшовши «git» і встановивши його в систему. Не забудьте також встановити будь-які інструменти для збірки, спеціальні для вашого дистрибутива Linux, якщо ви ще цього не зробили (це має бути легко знайти, просто перевірте вікі свого дистрибутива). Наприклад, компіляція на Debian/Ubuntu вимагає build-essential.
Після того, як пакет git буде встановлено в системі, використовуйте його, щоб отримати останню версію програмного забезпечення Firejail.
git clone https://github.com/netblue30/firejail.git
Код є в системі. Введіть завантажену папку, щоб почати процес складання за допомогою команди cd.
cd firejail
Перш ніж компілювати це програмне забезпечення, вам потрібно буде запустити конфігурацію. Це просканує ваш комп’ютер і повідомить програмному забезпеченню, що на вашому комп’ютері, які технічні характеристики тощо. Це важливо, і без цього програмне забезпечення не буде створено.
configure
Програма налаштована на компіляцію. Тепер давайте згенеруємо make-файл. Makefile містить інструкції для створення частини програмного забезпечення. Зробіть це за допомогою команди make.
make
Нарешті, встановіть програмне забезпечення firejail у вашу систему:
sudo make install-strip
Використання Firejail
Завантажити щось із Firejail легко. Для базової програмної пісочниці все, що потрібно, це використовувати префікс «firejail» перед введенням команди. Наприклад: для Sandbox текстового редактора Gedit і Silo, якщо вимкнено іншу частину вашої інсталяції Linux, ви робите: firejail gedit у терміналі. Це майже так і працює. Для простої пісочниці цього достатньо. Однак через те, що це програмне забезпечення є вибагливим, потрібна деяка конфігурація.
Наприклад: якщо ви запустите firejail firefox, браузер Firefox працюватиме в заблокованій пісочниці, і ніщо інше в системі не зможе торкнутися його. Це чудово для безпеки. Однак, якщо ви хочете завантажити зображення до каталогу, ви не зможете це зробити, оскільки Firejail може не мати доступу до всіх каталогів у вашій системі тощо. В результаті вам потрібно буде переглянути та конкретно перерахувати де пісочниця МОЖНА і НЕ МОЖНА зайти в систему. Ось як це зробити:
Білий та чорний список профілів
Додавання в чорний та білий список – це річ для кожної програми. Немає жодного способу встановити глобальні параметри за замовчуванням для доступу ув’язнених програм. У Firejail вже налаштовано багато конфігураційних файлів. З цими файлами конфігурації вони генерують розумні параметри за замовчуванням, і, як наслідок, базовим користувачам не потрібно буде робити жодного редагування. Тим не менш, якщо ви досвідчений користувач, редагування таких типів файлів може бути корисним.
Відкрийте термінал і перейдіть до /etc/firejail.
cd /etc/firejail
Використовуйте команду LS, щоб переглянути весь вміст каталогу, і використовуйте канал, щоб зробити кожну сторінку доступною для перегляду. Натисніть клавішу enter, щоб перемістити сторінку вниз.
Знайдіть файл конфігурації для своєї програми та запишіть його. Тут ми продовжимо на прикладі Firefox.
ls | more
Відкрийте профіль Firefox firejail у текстовому редакторі nano.
sudo nano /etc/firejail/firefox.profile
Як зазначалося раніше, програма Firejail має розумні налаштування за замовчуванням. Це означає, що розробники пройшли і налаштували параметри за замовчуванням, які повинні працювати для більшості користувачів. Наприклад: хоча програма закрита, каталог ~/Downloads і каталоги плагінів у системі доступні. Щоб додати більше елементів до цього білого списку, перейдіть до розділу файлу конфігурації, де все внесено до білого списку, і напишіть власні правила.
Наприклад, щоб полегшити завантаження фотографій до мого профілю Facebook у Firejail версії Firefox, мені потрібно додати:
whitelist ~/Pictures
Цю ж передумову можна використовувати для внесення в чорний список. Щоб запобігти тому, щоб версія Firefox із ізольованою програмою бачив певні каталоги (незалежно від чого), сміливо робіть щось на кшталт:
blacklist ~/secret/file/area
Збережіть зміни за допомогою Ctrl + O
Примітка: «~/» означає /home/current user
Висновок
Sanboxing — це чудовий спосіб захистити себе від неякісних програм або зловмисників, які хочуть вкрасти ваші дані. Якщо у вас є параноїк у Linux, напевно, варто серйозно спробувати цей інструмент.