Written in C with virtually no dependencies, the software runs on any Linux computer with a 3.x kernel version or newer. The sandbox is lightweight, the overhead is low. There are no complicated configuration files to edit, no socket connections open, no daemons running in the background. All security features are implemented directly in Linux kernel and available on any Linux computer. The program is released under GPL v2 license.
Firejail can sandbox any type of processes: servers, graphical applications, and even user login sessions. The software includes security profiles for a large number of Linux programs: Mozilla Firefox, Chromium, VLC, Transmission etc. To start the sandbox, prefix your command with “firejail”:
$ firejail firefox # starting Mozilla Firefox $ firejail transmission-gtk # starting Transmission BitTorrent $ firejail vlc # starting VideoLAN Client $ sudo firejail /etc/init.d/nginx start # starting nginx web server
Available Software Packages
We offer two Firejail flavors (mainline and long term support) and a number of additional sandbox plug-ins.
- Mainline is our latest and greatest sandbox version. It includes new features and developments, updated profiles, and support for the latest desktop applications. The target audience is desktop home users. (development page)
- Long Term Support (LTS) – Every two or three years we cut a branch from mainline git, we remove rarely used features (chroot, overlay, rlimits, cgroups, etc.), incomplete features (private-bin, private-lib, etc.), and a lot of instrumentation (build profile feature, tracing, auditing, etc). Sandbox-specific security features such as seccomp, capabilities, filesystem whitelist/blacklist and networking are updated and hardened. LTS receives periodic security updates, but no new features are ever added. The end result is a more stable software base, and a much smaller attack surface. Please use this version for any kind of enterprise deployment. (development page)
- Firetools is the graphical user interface of Firejail. The application is built using Qt4/Qt5 libraries. It provides a sandbox launcher integrated with the system tray, sandbox editing, management and statistics. (project webpage, development page)
- fdns is a DNS over HTTPS (DoH) proxy server. It was build to provide encrypted DNS services for applications running in a Firejail sandbox, but you can also run it as a stand-alone DNS server. (project webpage, development page)
- Firetunnel allows the user to connect multiple Firejail sandboxes on a virtualized Ethernet network. Applications include virtual private networks (VPN), overlay networks, peer-to-peer applications. Currently the project is in beta-testing phase, you can find out more on our development page.
Firejail is a community project. We are not affiliated with any company, and we don’t have any commercial goals. Our focus is the Linux desktop. Home users and Linux beginners are our target market. The software is built by a large international team of volunteers on GitHub. Expert or just regular Linux user, you are welcome to join us!
December 2019 – We are proud to announce a new addition to the Firejail family of security tools: Firejail DNS over HTTPS proxy server.
Targeted at small networks and Linux desktops, the proxy adds strong encryption and authentication on top of the regular DNS protocol. You can run it as a regular DNS server for a network of computers, or as a plug-in for your Firejail sandboxes. The software is written in C, and is licensed under GPLv3.
- Webpage: https://firejaildns.wordpress.com
- Development: https://github.com/netblue30/fdns
- Download: https://firejaildns.wordpress.com/download
- FAQ: https://firejaildns.wordpress.com/support/#faq
May 2019 – released Firejail 0.9.60 (Download). This release brings in a several new features, lots of new application profiles, bugfixes and general SUID hardening (Release Notes). This version also fixes two security issues, details here.
October 2018 – released Firejail LTS 0.9.56 (Download). We are rebasing our Long Term Support branch of Firejail. The previous LTS version (0.9.38.x) is more than two years old. The new version updates the code base to 0.9.56. We target a reduction of approx. 40% of the code by removing rarely used features (chroot, overlay, rlimits, cgroups), incomplete features (private-bin, private-lib), and a lot of instrumentation (build profile feature, tracing, auditing, etc). Sandbox-specific security features such as seccomp, capabilities, filesystem whitelist/blacklist and networking are updated and hardened. Release Notes.
September 2018 – released Firejail 0.9.56 (Download). New features: wireless interface support for –net command, tunneling support (TAP device support in –net command), temporary filesystem support for /home/user/.cache directory (–private-cache), support for U2F devices, additional hardening of SUID executable, and much more. Release Notes.
May 2018 – released Firejail 0.9.54 (Download). This release includes a number of new features and new profiles. Firefox 60 problems seem to be fixed for now. Trying to mitigate the concerns about Firejail being an SUID application, we introduce Firejail Access Database. This is basically a list of users that are allowed to use the sandbox. The list is located in
/etc/firejail/firejail.users file. After updating to the new version you should execute
sudo firecfg which not only applies the newly introduced profiles but also adds the current user to the database. Release Notes.
March 2018 – released Firetools 0.9.52 (Download). In this release we switch to a more pleasant grayscale color scheme, we introduce a number of small enhancements, and regular bugfixes. Release Notes.
- Firewarden is a bash script used to open a program within a private Firejail sandbox.
- Firejail Profile Generator
- Ansible role to setup Firejail
- firejail-extras: Arch Linux AUR package containing extra security profiles for Firejail
- https://github.com/chiraag-nataraj/firejail-profiles – This is a collection of tighter security profiles maintained by a member of Firejail development team.
- Firejail package on SlackBuilds.org
- Firectl is a tool to integrate Firejail sandboxing in the Linux desktop. Enable Firejail for an application and enjoy a more secure desktop. PyPI repository entry
- ansible-firejail – Ansible playbook for Firejail.