Jak nastavit Firejail na Linuxu

Linux má pověst poměrně bezpečného a ze tří velkých operačních systémů naráží na mnohem méně problémů, pokud jde o soukromí. Přesto, jakkoli bezpečný Linux může být, vždy je co zlepšovat. Představujeme Firejail. Je to aplikace, která uživatelům umožňuje vzít jakoukoli spuštěnou aplikaci a „uvěznit ji“ nebo „izolovat“. Firejail vám umožňuje izolovat aplikaci a zabránit jí v přístupu k čemukoli jinému v systému. Aplikace je nejoblíbenějším nástrojem pro sandboxing v systému Linux. Z tohoto důvodu se mnoho linuxových distribucí rozhodlo dodávat tento software. Zde je návod, jak získat Firejail na Linuxu.

SPOILER ALERT: Přejděte dolů a podívejte se na video tutoriál na konci tohoto článku.

Instalace

Ubuntu

sudo apt install firejail

Debian

sudo apt-get install firejail

Arch Linux

sudo pacman -S firejail

Nejste spokojeni s repo verzí Firejail na Archu? Zvažte stavbu verze Git místo toho z AUR.

Fedora

Bohužel není k vidění žádný balíček Firejail pro Fedoru. Hlavní repozitáře to nemají a není důvod se domnívat, že se to změní. Uživatelé Fedory mohou stále instalovat software s Copr.

Copr je velmi podobný PPA na Ubuntu nebo Arch Linux AUR. Každý uživatel může vytvořit Copr repo a umístit na něj software. Existuje mnoho repozitářů FireJail Copr, takže pokud se to, které uvádíme v tomto článku, přestane aktualizovat, neváhejte přejděte na webovou stránku a najít náhradu.

Chcete-li získat Firejail na Fedoře, postupujte takto:

sudo dnf copr enable ssabchew/firejail

sudo dnf install firejail

OpenSUSE

Stejně jako většinu softwaru třetích stran pro Suse najdou uživatelé Firejail v OBS. Verze Firejail lze rychle nainstalovat pro nejnovější verze Leap a Tumbleweed. Dostat je tady.

Ujistěte se, že kliknete na tlačítko 1-click pro instalaci přes YaST.

jiný

Zdrojový kód pro Firejail je snadno dostupný a snadno kompilovatelný, pokud používáte nepodporovanou distribuci Linuxu.

Chcete-li začít, nainstalujte si balíček Git do své verze Linuxu. Udělejte to tak, že otevřete správce balíčků, vyhledejte „git“ a nainstalujete jej do systému. Ujistěte se, že jste také nainstalovali jakékoli nástroje pro sestavení speciální pro vaši distribuci Linuxu, pokud jste tak ještě neučinili (mělo by být snadné je najít, stačí se podívat na wiki vaší distribuce). Například kompilace na Debian/Ubuntu vyžaduje build-essential.

Jakmile je balíček git nainstalován do systému, použijte jej k získání nejnovější verze softwaru Firejail.

git clone https://github.com/netblue30/firejail.git

Kód je v systému. Zadejte staženou složku a spusťte proces sestavení pomocí příkazu cd.

cd firejail

Než bude možné tento software zkompilovat, budete muset spustit konfiguraci. To prohledá váš počítač a sdělí softwaru, co váš počítač má, jaké jsou specifikace atd. To je důležité a bez toho se software nevybuduje.

configure

Program je nakonfigurován pro kompilaci. Nyní vygenerujeme makefile. Makefile obsahuje instrukce pro vytvoření části softwaru. Udělejte to pomocí příkazu make.

make

Nakonec nainstalujte software firejail do vašeho systému:

sudo make install-strip

Použití Firejail

Sandboxing něco s Firejail je snadné. U základního programového sandboxu stačí před zadáním příkazu použít předponu „firejail“. Například: do Sandboxu textového editoru Gedit a silo, pokud jste mimo zbytek vaší instalace Linuxu, uděláte: firejail gedit v terminálu. Funguje to zhruba takto. Pro jednoduché sandboxing to stačí. Vzhledem k tomu, jak je tento software rafinovaný, je však potřeba nějaká konfigurace.

Například: pokud spustíte firejail firefox, prohlížeč Firefox poběží v uzamčeném sandboxu a nic jiného v systému se ho nebude moci dotknout. To je skvělé pro zabezpečení. Pokud však chcete stáhnout obrázek do adresáře, možná to nebudete moci, protože Firejail nemusí mít přístup ke každému adresáři ve vašem systému atd. V důsledku toho budete muset projít a konkrétně vypsat kam v systému MŮŽE a NEMŮŽE jít sandbox. Jak na to:

Profil Whitelisting A Blacklisting

Blacklisting a whitelisting jsou záležitostí jednotlivých aplikací. Neexistuje žádný způsob, jak nastavit globální výchozí hodnoty pro přístup uvězněných aplikací. Firejail má již nastaveno mnoho konfiguračních souborů. S těmito konfiguračními soubory generují rozumné výchozí hodnoty a v důsledku toho základní uživatelé nebudou muset provádět žádné úpravy. Přesto, pokud jste pokročilý uživatel, může být úprava těchto typů souborů užitečná.

Otevřete terminál a přejděte do /etc/firejail.

cd /etc/firejail

Pomocí příkazu LS můžete zobrazit veškerý obsah adresáře a pomocí kanálu zpřístupnit každou stránku. Stisknutím klávesy Enter se posunete o stránku dolů.

Najděte konfigurační soubor pro svou aplikaci a poznamenejte si ho. V tomto budeme pokračovat příkladem Firefoxu.

ls | more

Otevřete profil Firefox firejail v textovém editoru nano.

sudo nano /etc/firejail/firefox.profile

Jak bylo uvedeno dříve, aplikace Firejail má rozumná výchozí nastavení. To znamená, že vývojáři prošli a nastavili výchozí hodnoty, které by měly fungovat pro většinu uživatelů. Například: ačkoli je aplikace uvězněna, adresář ~/Downloads a adresáře pluginů v systému jsou k dispozici. Chcete-li do tohoto seznamu povolených přidat další položky, přejděte do části konfiguračního souboru, kde se vše přidává, a napište si vlastní pravidla.

Abych například usnadnil nahrávání fotografií na můj profil na Facebooku ve Firefoxu ve verzi firejail, budu muset přidat:

whitelist ~/Pictures

Stejný předpoklad lze použít pro blacklist. Chcete-li zabránit verzi Firefoxu v sandboxu vidět konkrétní adresáře (bez ohledu na to, co), můžete udělat něco jako:

blacklist ~/secret/file/area

Uložte své úpravy pomocí Ctrl + O

Poznámka: „~/“ znamená /home/aktuálního uživatele

Závěr

Sanboxing je skvělý způsob, jak se chránit před děravými aplikacemi nebo zlými herci, kteří chtějí ukrást vaše data. Pokud jste na Linuxu paranoidní, pravděpodobně je dobré dát tomuto nástroji vážnější šanci.