火獄 是一個框架,用於開髮用於圖形應用程序的隔離執行的系統, 控制台和服務器。 使用Firejail 最小化損害系統的風險 運行不可靠或潛在漏洞的程序時為main。 該程序用C編寫,在GPLv2許可下分發,並且可以在任何Linux分發版上工作。
火獄 使用名稱空間,AppArmor和系統調用篩選 (seccomp-bpf)在Linux上進行隔離。 一旦啟動,該程序及其所有子進程將使用內核資源的單獨表示形式,例如網絡堆棧,進程表和安裝點。
依賴的應用程序可以合併在一個通用的沙箱中。 如果需要,Firejail也可以用於啟動Docker,LXC和OpenVZ容器。
關於Firejail
與容器保溫工具不同, Firejail的配置非常簡單,不需要準備系統映像: 容器的組成是基於當前文件系統的內容形成的,在應用程序結束後將其刪除。
Se 提供用於設置文件系統訪問規則的靈活工具, 您可以確定拒絕訪問或拒絕訪問的文件和目錄,連接臨時文件系統(tmpfs)獲取數據,限制對文件或目錄的只讀訪問,使用bind-mount和overlayfs組合目錄。
對於包括Firefox,Chromium,VLC等在內的眾多流行應用程序,系統已經準備好了系統調用隔離配置文件。
為了獲得設置沙箱所需的特權,firejail可執行文件將安裝有SUID根標誌(初始化後,將重置特權)。
Firejail 0.9.62的新功能是什麼?
在此新版本中,突出顯示了 附帶了更多用於啟動應用的配置文件 隔離,配置文件總數達到884。
除了它 文件複製限制設置已添加到配置文件/etc/firejail/firejail.config中, 這使您可以使用“ –private- *”選項來限制將復製到內存中的文件的大小(默認情況下,該限制設置為500MB)。
chroot調用現在不基於路徑進行,而是基於文件描述符使用掛載點。
其他變化:
- 在配置文件中,允許使用調試器。
- 使用seccomp機制改進了對系統調用的過濾。
- 提供了對編譯器標誌的自動檢測。
- / usr / share目錄被列入各種配置文件的白名單。
- 新的幫助程序腳本gdb-firejail.sh和sort.py已添加到conrib部分。
- 特權代碼執行階段(SUID)中的增強保護。
- 對於概要文件,實現了新的條件標誌HAS_X11和HAS_NET,以驗證X服務器的存在和對網絡的訪問。
如何在Linux上安裝Firejail?
對於那些對能夠在其Linux發行版上安裝Firejail感興趣的人, 他們可以按照說明進行操作 我們在下面分享。
在Debian,Ubuntu及其衍生版本上 安裝非常簡單,因為 他們可以從存儲庫中安裝Firejail 其分佈 或者他們可以下載準備好的Deb軟件包 從 Sourceforge。
如果選擇從存儲庫安裝,只需打開一個終端並執行以下命令:
sudo apt-get install firejail
或者,如果他們決定下載deb軟件包,則可以使用其首選軟件包管理器進行安裝,或者使用以下命令從終端安裝:
sudo dpkg -i firejail_0.9.62_1*.deb
而對於Arch Linux及其衍生產品 從此,只需運行:
sudo pacman -S firejail
對於Fedora,RHEL,CentOS,OpenSUSE 或任何其他支持rpm軟件包的發行版都可以從 以下鏈接。
並通過以下方式完成安裝:
sudo rpm -i firejail-0.9.62-1.x86_64.rpm
組態
安裝完成後,現在我們將必須配置沙箱,並且還必須啟用AppArmor。
在終端上,我們將輸入:
sudo firecfg sudo apparmor_parser -r /etc/apparmor.d/firejail-default
要了解其用法和集成方式,請查閱其指南 在下面的鏈接中。