Firejail – Bezpečně spouštějte nedůvěryhodné aplikace v Linuxu
Někdy možná budete chtít používat aplikace, které nebyly dobře otestovány v různých prostředích, přesto je musíte používat. V takových případech je normální mít obavy o bezpečnost svého systému. Jedna věc, kterou lze v Linuxu udělat, je používat aplikace v sandboxu.
„Sandboxing“ je schopnost spouštět aplikace v omezeném prostředí. Tímto způsobem je aplikaci poskytnuto omezené množství zdrojů potřebných ke spuštění. Díky aplikaci s názvem Firejail můžete v Linuxu bezpečně spouštět nedůvěryhodné aplikace.
Firejail je aplikace SUID (Set Owner User ID), která snižuje riziko narušení bezpečnosti tím, že omezuje spuštěné prostředí nedůvěryhodných programů pomocí jmenných prostorů Linux a seccomp-bpf .
Umožňuje procesu a všem jeho potomkům mít svůj vlastní tajný pohled na globálně sdílené prostředky jádra, jako je síťový zásobník, tabulka procesů, tabulka připojení.
Některé z funkcí, které Firejail používá:
- jmenné prostory Linuxu
- Kontejner souborového systému
- Bezpečnostní filtry
- Podpora sítí
- Přidělení zdrojů
Podrobné informace o funkcích Firejail naleznete na oficiální stránce.
Jak nainstalovat Firejail v Linuxu
Instalaci lze dokončit stažením nejnovějšího balíčku ze stránky github projektu pomocí příkazu git, jak je znázorněno.
git clone https://github.com/netblue30/firejail.git
cd firejail
./configure && make && sudo make install-strip
V případě, že v systému nemáte nainstalovaný git, můžete jej nainstalovat pomocí:
sudo apt install git [On Debian/Ubuntu]
yum install git [On CentOS/RHEL]
dnf install git [On Fedora 22+]
Alternativním způsobem instalace firejail je stažení balíčku spojeného s vaší distribucí Linuxu a jeho instalace pomocí správce balíčků. Soubory lze stáhnout ze stránky projektu SourceForge. Jakmile budete mít soubor stažený, můžete jej nainstalovat pomocí:
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]
Jak spouštět aplikace pomocí Firejail v Linuxu
Nyní jste připraveni spouštět své aplikace pomocí Firejail. Toho se dosáhne spuštěním terminálu a přidáním firejail před příkaz, který chcete spustit.
Zde je příklad:
firejail firefox #start Firefox web browser
firejail vlc # start VLC player
Vytvořte bezpečnostní profil
Firejail obsahuje mnoho bezpečnostních profilů pro různé aplikace a jsou uloženy v:
/etc/firejail
Pokud jste projekt sestavili ze zdroje, můžete najít profily v:
path-to-firejail/etc/
Pokud jste použili balíček rpm/deb, bezpečnostní profily najdete v:
/etc/firejail/
Uživatelé by měli umístit své profily do následujícího adresáře:
~/.config/firejail
Pokud chcete rozšířit stávající profil zabezpečení, můžete použít include with path k profilu a přidat své řádky později. Mělo by to vypadat nějak takto:
cat ~/.config/firejail/vlc.profile
include /etc/firejail/vlc.profile
net none
Pokud si přejete omezit přístup aplikace do určitého adresáře, můžete přesně toho dosáhnout pomocí pravidla blacklist. Do svého bezpečnostního profilu můžete přidat například následující:
blacklist ${HOME}/Documents
Dalším způsobem, jak dosáhnout stejného výsledku, je skutečně popsat úplnou cestu ke složce, kterou chcete omezit:
blacklist /home/user/Documents
Existuje mnoho různých způsobů, jak můžete nakonfigurovat své bezpečnostní profily, jako je zakázání přístupu, povolení přístupu pouze pro čtení atd. Pokud máte zájem o vytváření vlastních profilů, můžete se podívat na následující pokyny pro firejail.
Firejail je skvělý nástroj pro uživatele, kteří mají zájem o bezpečnost a chtějí chránit svůj systém.