Firejail - sigurno pokrenite nepouzdane programe u Linuxu


Ponekad ćete možda htjeti koristiti programe koji nisu dobro testirani u različitim okruženjima, no ipak ih morate koristiti. U takvim je slučajevima normalno biti zabrinut za sigurnost svog sustava. Jedna stvar koja se može učiniti u Linuxu je korištenje aplikacija u pješčaniku.

„Sandboxing“ je mogućnost pokretanja aplikacije u ograničenom okruženju. Na taj se način aplikaciji osigurava ograničena količina resursa potrebnih za pokretanje. Zahvaljujući aplikaciji nazvanoj Firejail, možete sigurno pokretati nepouzdane aplikacije u Linuxu.

Firejail je SUID (Set Owner User ID) aplikacija koja smanjuje izloženost narušavanjima sigurnosti ograničavajući radno okruženje nepouzdanih programa koji koriste Linux prostore imena i seccomp-bpf.

Izrađuje proces i svi njegovi potomci kako bi imali vlastiti tajni pogled na globalno podijeljene resurse jezgre, kao što su mrežni stog, tablica procesa, tablica montiranja.

Neke značajke koje Firejail koristi:

  • Linux imenski prostori
  • Spremnik datotečnog sustava
  • Sigurnosni filtri
  • Podrška za umrežavanje
  • Dodjela resursa

Detaljne informacije o značajkama Firejaila mogu se pronaći na službenoj stranici.

Kako instalirati Firejail u Linux

Instalacija se može dovršiti preuzimanjem najnovijeg paketa sa github stranice projekta pomoću naredbe git, kao što je prikazano.

$ git clone https://github.com/netblue30/firejail.git
$ cd firejail
$ ./configure && make && sudo make install-strip

U slučaju da na svom sustavu nemate instaliran git, možete ga instalirati sa:

$ sudo apt install git  [On Debian/Ubuntu]
# yum install git       [On CentOS/RHEL]
# dnf install git       [On Fedora 22+]

Alternativni način instalacije firejaila je preuzimanje paketa povezanog s vašom Linux distribucijom i instaliranje s upraviteljem paketa. Datoteke se mogu preuzeti sa stranice SourceForge projekta. Nakon što preuzmete datoteku, možete je instalirati sa:

$ 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]

Kako pokrenuti aplikacije s Firejailom u Linuxu

Sada ste spremni za pokretanje aplikacija s firejail-om. To se postiže pokretanjem terminala i dodavanjem firejaila prije naredbe koju želite pokrenuti.

Evo primjera:

$ firejail firefox    #start Firefox web browser
$ firejail vlc        # start VLC player

Firejail uključuje mnogo sigurnosnih profila za različite programe i oni su pohranjeni u:

/etc/firejail

Ako projekt gradite iz izvora, profile možete pronaći u:

# path-to-firejail/etc/

Ako ste koristili paket rpm/deb, sigurnosne profile možete pronaći u:

/etc/firejail/

Korisnici bi trebali svoje profile smjestiti u sljedeći direktorij:

~/.config/firejail

Ako želite proširiti postojeći sigurnosni profil, možete koristiti include with path do profila i nakon toga dodati svoje linije. Ovo bi trebalo izgledati otprilike ovako:

$ cat ~/.config/firejail/vlc.profile

include /etc/firejail/vlc.profile
net none

Ako želite ograničiti pristup aplikacije određenom direktoriju, možete upotrijebiti pravilo crne liste da biste postigli upravo to. Na primjer, na svoj sigurnosni profil možete dodati sljedeće:

blacklist ${HOME}/Documents

Drugi način postizanja istog rezultata je opisivanje punog puta do mape koju želite ograničiti:

blacklist /home/user/Documents

Postoji mnogo različitih načina na koje možete konfigurirati svoje sigurnosne profile, poput zabrane pristupa, omogućavanja pristupa samo za čitanje itd. Ako ste zainteresirani za izradu prilagođenih profila, možete provjeriti sljedeće upute za vatrogasni zatvor.

Firejail je sjajan alat za sigurnosne korisnike koji žele zaštititi svoj sustav.