Vyhledávání na webu

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.