Firejail - Linux'ta Güvenilmeyen Uygulamaları Güvenli Bir Şekilde Çalıştırın


Bazen farklı ortamlarda iyi bir şekilde test edilmemiş uygulamaları kullanmak isteyebilirsiniz ancak bunları kullanmanız gerekir. Bu gibi durumlarda sisteminizin güvenliği konusunda endişe duymanız normaldir. Linux'ta yapılabilecek şeylerden biri de uygulamaları korumalı alanda kullanmaktır.

"Korumalı alan", uygulamayı sınırlı bir ortamda çalıştırma yeteneğidir. Bu şekilde uygulamaya çalışması için gereken kaynak miktarı daha az sağlanır. Firejail adlı uygulama sayesinde güvenilmeyen uygulamaları Linux'ta güvenle çalıştırabilirsiniz.

Firejail, Linux ad alanlarını ve seccomp-bpf kullanarak güvenilmeyen programların çalışma ortamını sınırlayarak güvenlik ihlallerine maruz kalma olasılığını azaltan bir SUID (Sahip Kullanıcı Kimliğini Ayarla) uygulamasıdır .

Bir sürecin ve onun soyundan gelenlerin, ağ yığını, süreç tablosu, bağlama tablosu gibi küresel olarak paylaşılan çekirdek kaynaklarına ilişkin kendi gizli görünümlerine sahip olmalarını sağlar.

Firejail'in kullandığı özelliklerden bazıları:

  • Linux ad alanları
  • Dosya sistemi kapsayıcısı
  • Güvenlik filtreleri
  • Ağ desteği
  • Kaynak tahsisi

Firejail özellikleri hakkında detaylı bilgiyi resmi sayfada bulabilirsiniz.

Linux'ta Firejail Nasıl Kurulur

Kurulumu, gösterildiği gibi git komutunu kullanarak projenin github sayfasından en son paketi indirerek tamamlayabilirsiniz.

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

Sisteminizde git yüklü değilse, şunu kullanarak yükleyebilirsiniz:

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

Firejail'i kurmanın alternatif bir yolu da Linux dağıtımınızla ilişkili paketi indirmek ve onu paket yöneticisiyle kurmaktır. Dosyalar projenin SourceForge sayfasından indirilebilir. Dosyayı indirdikten sonra aşağıdakileri kullanarak yükleyebilirsiniz:

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'ta Firejail ile Uygulamalar Nasıl Çalıştırılır

Artık uygulamalarınızı firejail ile çalıştırmaya hazırsınız. Bu, bir terminal başlatıp çalıştırmak istediğiniz komutun önüne firejail ekleyerek gerçekleştirilir.

İşte bir örnek:

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

Güvenlik Profili Oluştur

Firejail, farklı uygulamalar için birçok güvenlik profili içerir ve bunlar şu konumlarda saklanır:

/etc/firejail

Projeyi kaynaktan oluşturduysanız profilleri şurada bulabilirsiniz:

path-to-firejail/etc/

RPM/deb paketini kullandıysanız güvenlik profillerini şurada bulabilirsiniz:

/etc/firejail/

Kullanıcılar, profillerini aşağıdaki dizine yerleştirmelidir:

~/.config/firejail

Mevcut bir güvenlik profilini genişletmek istiyorsanız, profile giden yolu içeren include komutunu kullanabilir ve daha sonra satırlarınızı ekleyebilirsiniz. Bu şuna benzemelidir:

cat ~/.config/firejail/vlc.profile

include /etc/firejail/vlc.profile
net none

Uygulamanın belirli bir dizine erişimini kısıtlamak istiyorsanız, tam olarak bunu başarmak için bir kara liste kuralı kullanabilirsiniz. Örneğin, güvenlik profilinize aşağıdakileri ekleyebilirsiniz:

blacklist ${HOME}/Documents

Aynı sonucu elde etmenin başka bir yolu da, kısıtlamak istediğiniz klasörün tam yolunu tanımlamaktır:

blacklist /home/user/Documents

Erişime izin vermemek, salt okunur erişime izin vermek vb. gibi güvenlik profillerinizi yapılandırmanın birçok farklı yolu vardır. Özel profiller oluşturmakla ilgileniyorsanız, aşağıdaki firejail talimatlarını kontrol edebilirsiniz.

Firejail, sistemlerini korumak isteyen güvenlik odaklı kullanıcılar için harika bir araçtır.