Firejail - Linux-da ynamsyz programmalary ygtybarly işlediň


Käwagt dürli gurşawda gowy synagdan geçirilmedik programmalary ulanmak isläp bilersiňiz, ýöne olary ulanmaly. Şeýle ýagdaýlarda ulgamyňyzyň howpsuzlygy barada alada etmek adaty zat. Linux-da edip boljak bir zat, sandyk gutusyndaky programmalary ulanmak.

\ Sandboxing programmany çäkli gurşawda işletmek ukybydyr. Şeýlelik bilen, programma işlemek üçin zerur bolan köp mukdarda çeşme bilen üpjün edilýär. Firejail atly programmanyň kömegi bilen Linux-da ygtybarly programmalary ygtybarly işledip bilersiňiz.

Firejail, Linux at giňişliklerini we seccomp-bpf ulanyp, ygtybarly programmalaryň işleýiş gurşawyny çäklendirip, howpsuzlyk bozulmalarynyň täsirini azaldýan SUID (Owner User ID) programmasydyr.

Bu prosesi we onuň ähli nesillerini torda ýerleşdirmek, iş stoly, gurnama stoly ýaly dünýäde paýlaşylýan ýadro çeşmelerine gizlin garaýyş döredýär.

Firejail-iň ulanýan käbir aýratynlyklary:

  • Linux at giňişlikleri
  • Faýl ulgamy konteýner
  • Howpsuzlyk süzgüçleri
  • Ulgam goldawy
  • Resurslary paýlamak

Firejail aýratynlyklary barada jikme-jik maglumaty resmi sahypada tapyp bilersiňiz.

Linux-da Firejail-i nädip gurmaly

Gurmak, görkezilişi ýaly git buýrugyny ulanyp, taslamanyň github sahypasyndan iň soňky bukjany göçürip alyp bolýar.

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

Ulgamyňyza git gurulmadyk bolsa, ony aşakdakylar bilen gurup bilersiňiz:

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

Firejail gurmagyň alternatiw usuly, Linux paýlanyşyňyz bilen baglanyşykly bukjany göçürip almak we paket dolandyryjysy bilen gurmakdyr. Faýllary taslamanyň SourceForge sahypasyndan göçürip alyp bilersiňiz. Faýly göçürip alanyňyzdan soň, ony gurup bilersiňiz:

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

Linux-da Firejail bilen programmalary nädip işletmeli

Indi arzalaryňyzy firejail bilen işletmäge taýyn. Bu, terminaly işe girizmek we işlemek isleýän buýrugyňyzdan öň firejail goşmak arkaly ýerine ýetirilýär.

Ine bir mysal:

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

“Firejail” dürli programmalar üçin köp sanly howpsuzlyk profilini öz içine alýar we olar şu ýerde saklanýar:

/etc/firejail

Taslamany çeşmeden guran bolsaňyz, profilleri şu ýerden tapyp bilersiňiz:

# path-to-firejail/etc/

Rpm/deb paketini ulanan bolsaňyz, howpsuzlyk profilini şu ýerden tapyp bilersiňiz:

/etc/firejail/

Ulanyjylar, öz profillerini aşakdaky katalogda ýerleşdirmeli:

~/.config/firejail

Bar bolan howpsuzlyk profilini giňeltmek isleseňiz, profiliň ýoluny goşup, soňundan setirleriňizi goşup bilersiňiz. Munuň ýaly bir zat görünmeli:

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

include /etc/firejail/vlc.profile
net none

Programmanyň belli bir kataloga girmegini çäklendirmek isleseňiz, takyk gazanmak üçin gara sanaw düzgünini ulanyp bilersiňiz. Mysal üçin, howpsuzlyk profiliňize aşakdakylary goşup bilersiňiz:

blacklist ${HOME}/Documents

Şol bir netijäni gazanmagyň başga bir usuly, çäklendirmek isleýän bukjanyňyzyň doly ýoluny suratlandyrmakdyr:

blacklist /home/user/Documents

Howpsuzlyk profilleriňizi sazlamagyň dürli usullary bar, meselem, girişi gadagan etmek, diňe okalýan girişe rugsat bermek we ş.m. customörite profilleri gurmak isleseňiz, aşakdaky firejail görkezmelerini barlap bilersiňiz.

Firejail, ulgamyny goramak isleýän howpsuzlyk pikirli ulanyjylar üçin ajaýyp guraldyr.