Firejail is an open-source, free command-line sandboxingsandboxingRunning code inside a restricted environment that limits what it can access or change. The isolation reduces the impact of mistakes or untrusted code, depending on the sandbox's controls. tool for Linux that confines a process and its descendants inside their own view of kernel resources — network stack, process table, mount table — using namespaces, seccomp-bpf and Linux capabilities rather than a container runtime. It runs as a lightweight SUID binary invoked before launching a program, works alongside SELinuxSELinuxA mandatory access control system built into the Linux kernel, maintained by the NSA and Red Hat, that enforces fine-grained policies restricting what processes can access, even if they run as root., AppArmorAppArmorA Linux kernel security module, maintained as part of the kernel, that confines programs to a declared set of files, capabilities, and network access — letting cyber tools sandbox processes without writing custom kernel code. or cgroups, and ships profiles for common desktop and server applications so individual users and Linux system administrators can confine untrusted software without hand-writing policy. It sits in the same space as container and namespace-isolation tooling on Linux, doing at the process level what heavier container runtimes do for whole environments. Started in 2015, it remains active with 473 contributors and 472 commits in the past year, most recently tightening profile-path handling and hiding PID 1 by default for stronger isolation.
Firejail is an SUID sandbox program that reduces the risk of security breaches by using Linux namespaces, seccomp-bpf, and Linux capabilities.
Which untrusted application on this machine can reach my files, network or other processes if it turns out to be malicious?
confines the program and everything it spawns to a private view of the filesystem, network stack and process table, so a compromised process cannot see or touch what its own namespace does not expose to it
What could a compromised process on this host actually see if I let it run unconfined?
shows only its own restricted mount table, process list and network stack when sandboxed, so a browser or downloaded binary cannot enumerate other users' files or processes even if exploited
Which system calls does a given program really need, and which ones are pure risk?
applies seccomp-bpf filtering by syscall group so a process is stopped by the kernel the moment it tries something outside its profile, with each group inspectable before it is written into a policy
Is this desktop application still hiding its process identity and hostname from other software sharing the machine?
keeps PID 1 hidden from the sandboxed process by default and assigns it a random hostname, so software inside cannot fingerprint or address the real host unless a profile explicitly opts out
Can a graphical program I don't trust see or interfere with my other X11 windows and sessions?
runs its X11 session through an isolated Xephyr display by default, keeping its window server access separate from the rest of the desktop
Which of my installed applications already have a ready-made confinement policy versus needing one written by hand?
ships profiles for common desktop and server programs, so running one of those names applies its restrictions immediately without the administrator drafting namespace or seccomp rules first
French
Release notes: French
French added in 0.9.78 (Jan 21, 2026)
Features
17 capabilities
across 2 capability groups
· 1 backed by code, an API document or a real run
Built from Firejail's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
Firejail covers 2 of the 11 endpoint investigation and controls capabilities we track.
What Firejail offers you
Command-line interface11
Show
No capabilities match.
+Security baseline enforcement3 featuresEndpoint investigation and controlssince 2015▸
+Seccomp System Call FilteringshippedEnables advanced control over allowed or denied system calls via blacklist/whitelist mechanisms, custom seccomp rules, and default block lists.14 releases · 1 other source · first seen Feb 2015▸
Shared capability: Security baseline enforcement
Also counts toward: Command-line interface
release
14 total
Add a new @program-keep syscall group for seccomp allowlists.
0.9.82 · Nov 2026
· source
· release history
Adds faccessat2 syscall support in the default seccomp filter
0.9.66 · Jun 2021
· source
· release history
The blocking action of seccomp filters now returns EPERM instead of killing the process; use --seccomp-error-action=kill or /etc/firejail/firejail.config to restore previous behavior
0.9.64 · Oct 2020
· source
· release history
--seccomp-error-action=kill or syscall:kill syntax allows overriding the new default EPERM blocking action for seccomp filters to restore previous kill behavior
0.9.64 · Oct 2020
· source
· release history
memory-deny-write-execute now also blocks memfd_create
0.9.60 · May 2019
· source
· release history
Restore the previous seccomp filter behavior where blocked syscalls kill the process instead of returning EPERM.$ firejail --seccomp-error-action=kill firefox
0.9.64 · Oct 2020
· source
+AppArmor ConfinementshippedAllows the application of AppArmor security profiles to enforce mandatory access controls on sandboxed processes.6 releases · 1 other source · first seen Sep 2016▸
Shared capability: Security baseline enforcement
release
Adds signal mediation support within AppArmor profiles.
0.9.62 · Dec 2019
· source
· release history
Adds firejail --apparmor.print option to output the AppArmor policy for a sandbox
0.9.54 · May 2018
· source
· release history
Adds firemon --apparmor option and adds apparmor yes/no flag to /etc/firejail/firejail.config to control AppArmor enforcement
0.9.54 · May 2018
· source
· release history
Enables /etc and /usr/share whitelisting in apparmor profiles
0.9.52 · Dec 2017
· source
· release history
Prints a warning if the AppArmor sandbox fails to load the profile instead of failing silently
0.9.48 · Jun 2017
· source
· release history
Adds --apparmor flag to enable AppArmor confinement for sandboxes.
0.9.42 · Sep 2016
· source
· release history
example
Enable AppArmor enforcement globally via configuration file.$ apparmor yes
0.9.54 · May 2018
· source
+Linux Capability Blacklisting/WhitelistingshippedAllows precise control over specific Linux capabilities granted to the sandboxed process via configuration-based filters.3 releases · first seen Mar 2015▸
Shared capability: Security baseline enforcement
release
Adds config support to disable join functionality via the join setting
0.9.46 · May 2017
· source
· release history
Disables x32 ABI support to reduce attack surface
0.9.38.2 · Aug 2016
· source
· release history
Custom Linux capabilities can be controlled via new blacklist/whitelist filters using configuration keys
0.9.22 · Mar 2015
· source
· release history
+Host network isolation2 featuresEndpoint investigation and controlssince 2014▸
+Network Namespace ConfigurationshippedAllows configuration of network interfaces, IP addresses, gateways, and monitoring of network state within the sandbox.17 releases · first seen Apr 2014▸
Adds --net.print command to display network interface information within the sandbox.
0.9.58 · Jan 2019
· source
· release history
--veth-name flag assigns a name to the interface connected to the bridge.
0.9.44 · Oct 2016
· source
· release history
Network profile commands: net, ip, defaultgw, ip6, mac, mtu, and iprange added
0.9.40 · May 2016
· source
· release history
Adds --join-network and --join-filesystem subcommands to --join for granular namespace sharing
0.9.38 · Feb 2016
· source
· release history
Adds --ip6 and --netfilter6 flags for IPv6 networking support
0.9.38 · Feb 2016
· source
· release history
+Network Access Control and Traffic ShapingshippedProvides comprehensive network isolation options including disabling access, bandwidth limiting, scanning capabilities, interface binding, protocol restrictions, and MAC address spoofing.13 releases · 1 other source · first seen Mar 2015▸
Shared capability: Host network isolation
Also counts toward: Command-line interface
release
13 total
--bandwidth= is removed; any profile or script using it will error.
0.9.82 · Nov 2026
· source
· release history
Enables accumulation of multiple --protocol flags instead of overwriting previous settings
0.9.66 · Jun 2021
· source
· release history
Adds IPv6 network filter nolocal6.net
0.9.64.2 · Jan 2021
· source
· release history
Adds --protocol=bluetooth to enable AF_BLUATOOTH access
0.9.64.2 · Jan 2021
· source
· release history
Adds explicit nonewprivs support to the join option, allowing sandboxed processes to drop privileges when joining an existing namespace.
0.9.58 · Jan 2019
· source
· release history
Enables use of --net=none even when networking is disabled at compile time or run time
0.9.56 · Sep 2018
· source
· release history
example
Run an application with Bluetooth access enabled.$ firejail --protocol=bluetooth myapp
0.9.64.2 · Jan 2021
· source
+Other / not yet classified12 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+Profile Management and Application SandboxingshippedProvides built-in profiles for specific applications and profile configuration directives to define private environments and shells.81 releases · 2 other sources · first seen May 2014▸
release
81 total
./configure --enable-busybox-workaround and ./configure --disable-sandbox-check options are removed.
0.9.82 · Nov 2026
· source
· release history
Add sandbox profiles for gemini, opencode, pi, ephoto, tldr, claude, tasks-org, ChiPass, and maki.
0.9.82 · Nov 2026
· source
· release history
firecfg --guide is removed; the guidance is now in man firejail.
0.9.82 · Nov 2026
· source
· release history
Add ${PROJECTS}, ${PUBLICSHARE}, and ${TEMPLATES} macros to profile files for referencing XDG user directories.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
0.9.82 · Nov 2026
· source
· release history
Allow subpaths in XDG macros in profile files, so paths like ${DOCUMENTS}/reports are now valid.
0.9.82 · Nov 2026
· source
· release history
Add llm-agent-common.profile as a shared base profile for LLM agent applications.
0.9.82 · Nov 2026
· source
· release history
example
Pass an include file directly from the command line to customize the sandbox without editing profile files.$ firejail --include=/path/to/custom.inc firefox
0.9.64 · Oct 2020
· source
Use the new firecfg utility to automatically integrate applications into the sandbox environment.$ firecfg
0.9.40 · May 2016
· source
+PulseAudio and D-Bus integration controlsverifiedAllows users to disable automatic PulseAudio initialisation and D-Bus access for customised or restricted runtime environments.43 releases · 6 other sources · first seen Apr 2014▸
Also counts toward: Command-line interface
release
43 total
Adds env-max-count and env-max-len settings to firejail.config to cap the number and length of environment variables in the sandbox.
0.9.78 · Jan 2026
· source
· release history
rlimit values now accept uppercase suffixes (e.g., K, M, G) for human-readable resource limit configuration.
0.9.78 · Jan 2026
· source
· release history
Adds arg-max-count and arg-max-len settings to firejail.config to cap the number and length of arguments passed to sandboxed programs.
0.9.78 · Jan 2026
· source
· release history
Supports globbing in hardcoded numbered /dev paths, allowing flexible device matching in profiles.
0.9.76 · Jul 2025
· source
· release history
Adds support for comm, coredump, and prctl process events in firemon.
0.9.74 · Mar 2025
· source
· release history
Adds aarch64 syscall definitions for seccomp filtering on ARM64.
0.9.74 · Mar 2025
· source
· release history
command line
--noautopulse — Disable automatic ~/.config/pulse init, for complex setups such
0.9.54-rc1 · May 2018
· command-line history
--nodbus — Disable D-Bus access. Only the regular UNIX socket is handled by
0.9.54-rc1 · May 2018
· command-line history
example
Override the auto-assigned random sandbox hostname to a predictable name for scripted environments.$ firejail --hostname=mysandbox --private curl https://example.com
0.9.74 · Mar 2025
· source
Enable tab completion for commands inside a firejail shell session$ firejail --bash --tab
0.9.70 · Jun 2022
· source
Run the interactive guide to automatically configure file associations for your desktop environment$ firecfg --guide
0.9.70 · Jun 2022
· source
Enable fine-grained D-Bus sandboxing by excluding user and system bus access, which requires xdg-dbus-proxy installed.$ firejail --dbus-user=none --dbus-system=none firefox
0.9.64 · Oct 2020
· source
+Filesystem Isolation DirectivesshippedEnables mounting tmpfs overlays, binding host paths, restricting read-write access, and using blacklists to isolate sandboxed filesystem views.46 releases · 1 other source · first seen Apr 2014▸
Also counts toward: Command-line interface
release
46 total
--chroot= is disabled in the default build; re-enabling requires ./configure --enable-chroot.
0.9.82 · Nov 2026
· source
· release history
--private-home is removed; profiles or scripts using it will error.
0.9.82 · Nov 2026
· source
· release history
private-lib profile feature is removed; profiles using it will error.
0.9.82 · Nov 2026
· source
· release history
Adds private-bin, private-etc, private-opt, private-srv, whitelist-disable-topdir, and seccomp-filter-add settings to firejail.config for finer sandbox file isolation
0.9.66 · Jun 2021
· source
· release history
Allows --tmpfs inside $HOME for unprivileged users
0.9.64.2 · Jan 2021
· source
· release history
Adds file-copy-limit configuration key to /etc/firejail/firejail.config to restrict how much data a sandboxed process can write to disk.
0.9.62 · Dec 2019
· source
· release history
example
Create a sandbox with a private file system entry using the new CLI flag$ firejail --mkfile=«home»/data.txt /bin/bash
0.9.66 · Jun 2021
· source
+Sandbox Monitoring and Lifecycle ManagementshippedsuggestedProvides mechanisms to list, join, terminate, and monitor process hierarchies and system resources for active sandbox sessions.14 releases · 1 other source · first seen Jul 2014▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
Also counts toward: Command-line interface
release
14 total
Add the profstats tool's --include command-line option to filter profile statistics.
0.9.82 · Nov 2026
· source
· release history
--join-or-start flag enables starting or joining a sandbox in a single command.
0.9.44 · Oct 2016
· source
· release history
--cpu.print option added for CPU profiling output
0.9.40 · May 2016
· source
· release history
--netstats monitor network statistics in real-time during sandbox execution
0.9.22 · Mar 2015
· source
· release history
--cpu flag allows setting CPU affinity for sandboxes
0.9.20 · Feb 2015
· source
· release history
--cgroup option enables Linux control groups support in sandboxes
0.9.20 · Feb 2015
· source
· release history
example
Test the state of a running sandbox using the new utility$ jailtest <sandbox_pid>
0.9.66 · Jun 2021
· source
+X11 Forwarding and Security ControlsshippedAllows users to configure X11 display forwarding, security extensions, and access blocking within sandboxed environments.9 releases · first seen May 2016▸
Also counts toward: Command-line interface
release
9 total
--x11=xephyr is removed as a direct option; Xephyr is now used automatically by --x11.
0.9.82 · Nov 2026
· source
· release history
--x11=xorg and --x11=xvfb are disabled in the default build; re-enabling requires ./configure --enable-x11-legacy.
0.9.82 · Nov 2026
· source
· release history
--x11=xpra support is removed; profiles or scripts using it will error.
0.9.82 · Nov 2026
· source
· release history
Adds --x11=xvfb support for Xvfb X11 server sandboxing
0.9.46 · May 2017
· source
· release history
Enables automatic X server sandboxing for --x11=xpra and --x11=xephyr
0.9.46 · May 2017
· source
· release history
--no3d flag disables 3D hardware acceleration.
0.9.44 · Oct 2016
· source
· release history
+Sandbox AuditingshippedsuggestedProvides mechanisms to audit sandbox activities and system calls for security monitoring.5 releases · first seen Sep 2016▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
release
Implement syscall:log in seccomp lists to log rather than block a syscall, enabling audit-style profiling.
0.9.82 · Nov 2026
· source
· release history
--tracelog and --blacklist-nolog are removed; profiles or scripts using them will error.
0.9.82 · Nov 2026
· source
· release history
New --wrap option replaces the deprecated --nowrap option in firemon
0.9.64 · Oct 2020
· source
· release history
Adds --seccomp.print option to use the new seccomp disassembler for inspecting system call filters
0.9.54 · May 2018
· source
· release history
Adds --audit flag to enable sandbox auditing capabilities.
0.9.42 · Sep 2016
· source
· release history
+Linux Control Groups (Cgroups) SupportshippedAllows the configuration and management of Linux control groups to restrict resource usage within sandboxed environments.3 releases · first seen Feb 2015▸
Also counts toward: Command-line interface
release
Adds cgroup flag in /etc/firejail/firejail.config file to control cgroup handling
0.9.58.2 · Feb 2019
· source
· release history
--nice option added for setting process priority
0.9.40 · May 2016
· source
· release history
--cgroup option enables Linux control groups support in sandboxes
0.9.20 · Feb 2015
· source
· release history
+Network Filtering ProfilesshippedEnables the use of predefined or custom network filter rules (netfilter) via dedicated configuration files to manage sandboxed network traffic.3 releases · first seen Apr 2015▸
Also counts toward: Command-line interface
release
Adds --netfilter.print and --netfilter6.print flags for netfilter template support output
0.9.52 · Dec 2017
· source
· release history
Adds /etc/firejail/nolocal.net and /etc/firejail/webserver.net network filter files
0.9.36 · Dec 2015
· source
· release history
Adds support for netfilter directives in profile files to configure network filtering rules
0.9.24 · Apr 2015
· source
· release history
+DHCP Client SandboxingshippedsuggestedAllows the sandboxing of DHCP client processes to prevent network configuration leakage or conflict.2 releases · first seen Oct 2020▸
Suggested capability: Host network isolation. This is our guess, not confirmed.
release
--ip=dhcp is temporarily disabled; sandboxes relying on DHCP assignment will not start.
0.9.82 · Nov 2026
· source
· release history
Added DHCP client support to allow sandboxing of DHCP clients
0.9.64 · Oct 2020
· source
· release history
+Process Debugging SupportshippedEnables the use of debugging tools like gdb and strace on processes running inside the sandbox.2 releases · first seen Sep 2016▸
Also counts toward: Command-line interface
release
Adds support for allow-debuggers in user profiles to permit debugging tools inside the sandbox.
0.9.62 · Dec 2019
· source
· release history
Adds --allow-debuggers flag to allow debugging inside the sandbox with gdb and strace.
0.9.42 · Sep 2016
· source
· release history
+Hostname SpoofingshippedAllows the sandboxed process to present a different hostname than the host system.1 release · first seen Oct 2015▸
release
Adds --hostname CLI argument to spoof the hostname inside the sandbox
0.9.32 · Oct 2015
· source
· release history
+Environment Variable ManagementshippedAllows setting or inheriting environment variables for processes running inside the sandbox.1 release · first seen Sep 2015▸
Also counts toward: Command-line interface
release
--env option added for setting environment variables in the sandbox
0.9.30 · Sep 2015
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for Firejail, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail Firejail puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
What Firejail connects to, runs on and detects, read from its release notes and docs. So far: 2 new supported platforms.
Show
2 changes, tracked since Nov 2, 2026.
Nov 22026
newNew application sandbox profiles
Covers 9: gemini, opencode, pi, ephoto, tldr, claude and 3 more
* new profile: gemini (#6936)
* new profile: opencode (#7135)
* new profile: pi (#7136)
* new profile: ephoto (#7153)
* new profile: tldr (#7166)
* new profile: claude (#7169)
* new profile: tasks-org (#7273)
* new profile: ChiPass (#7271)
* new profile: maki (#7285)
Nothing first seen in this window. That doesn't mean Firejail shipped nothing, only that we found no record of it.
Changes per month New Updated Retired
2026-11
2
How we count
Read from 1 of 45 release notes and docs updates we hold for Firejail. "First seen" is the earliest note that names something; "last" is the latest. Our history may start partway through Firejail's life, so an old integration can show a recent first-seen date.
Each change counts once: "added 40 checks" is one line, so the numbers measure how often coverage moves, not how big the catalogue is or how well it detects.
Releases
Show
Coverage in all entries
45 entries
No entries match these filters.
November 20261
March 20261
January 20261
July 20251
March 20251
January 20231
June 20221
February 20221
June 20211
January 20211
October 20201
December 20191
May 20191
February 20191
January 20191
September 20181
May 20181
December 20171
November 20171
September 20171
June 20171
May 20171
January 20171
October 20161
September 20161
August 20161
May 20161
February 20161
December 20151
November 20151
October 20151
September 20151
August 20151
April 20152
March 20151
February 20151
December 20141
November 20141
October 20141
August 20141
July 20141
June 20141
May 20141
April 20141
Project health
Issue, contributor and maintainer activity in netblue30/firejail, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors37−2 vs prior 12 months
Maintainers2+0 joined · −0 left, last 12 months
Bus factor1committers behind half the commits
Community-filed73%of issues opened, last 12 months
Median time to close< 1 dayfirst maintainer reply 4 hours
Open backlog502of 3,522 issues ever filed
Issues opened / month0 · 0communitymaintainers
Open backlog502
Contributors / month3
Commits / month30
Stars7,650
Issue themes, last 12 months
bugs 15%
features 13%
other 72%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can
follow every release here.