aboutsummaryrefslogtreecommitdiffstats
path: root/src/man
diff options
context:
space:
mode:
authorLibravatar netblue30 <netblue30@protonmail.com>2022-08-29 08:44:41 -0400
committerLibravatar GitHub <noreply@github.com>2022-08-29 08:44:41 -0400
commit54cb3e741e972c754e595d56de0bca0792299f83 (patch)
tree60ec6ead9fa5931c350b6a8724bf3c08c443929f /src/man
parentmerges, fixed lbry-viewer as suggested (diff)
parenttinyLL has been removed as it's no longer needed (diff)
downloadfirejail-54cb3e741e972c754e595d56de0bca0792299f83.tar.gz
firejail-54cb3e741e972c754e595d56de0bca0792299f83.tar.zst
firejail-54cb3e741e972c754e595d56de0bca0792299f83.zip
Merge pull request #5315 from ChrysoliteAzalea/landlock
Add Landlock support to Firejail
Diffstat (limited to 'src/man')
-rw-r--r--src/man/firejail-profile.txt29
-rw-r--r--src/man/firejail.txt63
2 files changed, 92 insertions, 0 deletions
diff --git a/src/man/firejail-profile.txt b/src/man/firejail-profile.txt
index 138aae8af..1f543980e 100644
--- a/src/man/firejail-profile.txt
+++ b/src/man/firejail-profile.txt
@@ -497,6 +497,35 @@ Blacklist all Linux capabilities.
497.TP 497.TP
498\fBcaps.keep capability,capability,capability 498\fBcaps.keep capability,capability,capability
499Whitelist given Linux capabilities. 499Whitelist given Linux capabilities.
500#ifdef HAVE_LANDLOCK
501.TP
502\fBlandlock
503Create a Landlock ruleset (if it doesn't already exist) and add basic access rules to it.
504.br
505.TP
506\fBlandlock.proc no|ro|rw
507Add an access rule for /proc directory (read-only if set to \fBro\fR and read-write if set to \fBrw\fR). The access rule for /proc is added after this directory is set up in the sandbox. Access rules for /proc set up with other Landlock-related profile options have no effect.
508.br
509.TP
510\fBlandlock.read path
511Create a Landlock ruleset (if it doesn't already exist) and add a read access rule for path.
512.br
513
514.TP
515\fBlandlock.write path
516Create a Landlock ruleset (if it doesn't already exist) and add a write access rule for path.
517.br
518
519.TP
520\fBlandlock.special path
521Create a Landlock ruleset (if it doesn't already exist) and add an access rule for creation of FIFO pipes, Unix-domain sockets and block devices beneath given path.
522.br
523
524.TP
525\fBlandlock.execute path
526Create a Landlock ruleset (if it doesn't already exist) and add an execution permission rule for path.
527.br
528#endif
500.TP 529.TP
501\fBmemory-deny-write-execute 530\fBmemory-deny-write-execute
502Install a seccomp filter to block attempts to create memory mappings 531Install a seccomp filter to block attempts to create memory mappings
diff --git a/src/man/firejail.txt b/src/man/firejail.txt
index 1dd5508b3..0b78203d7 100644
--- a/src/man/firejail.txt
+++ b/src/man/firejail.txt
@@ -1151,6 +1151,41 @@ Example:
1151.br 1151.br
1152$ firejail --keep-var-tmp 1152$ firejail --keep-var-tmp
1153 1153
1154#ifdef HAVE_LANDLOCK
1155.TP
1156\fB\-\-landlock
1157Create a Landlock ruleset (if it doesn't already exist) and add basic access rules to it. See \fBLANDLOCK\fR section for more information.
1158.br
1159.TP
1160\fB\-\-landlock.proc=no|ro|rw
1161Add an access rule for /proc directory (read-only if set to \fBro\fR and read-write if set to \fBrw\fR). The access rule for /proc is added after this directory is set up in the sandbox. Access rules for /proc set up with other Landlock-related command-line options have no effect.
1162.br
1163.TP
1164\fB\-\-landlock.read=path
1165Create a Landlock ruleset (if it doesn't already exist) and add a read access rule for path.
1166.br
1167
1168.TP
1169\fB\-\-landlock.write=path
1170Create a Landlock ruleset (if it doesn't already exist) and add a write access rule for path.
1171.br
1172
1173.TP
1174\fB\-\-landlock.special=path
1175Create a Landlock ruleset (if it doesn't already exist) and add a permission rule to create FIFO pipes, Unix domain sockets and block devices beneath given path.
1176.br
1177
1178.TP
1179\fB\-\-landlock.execute=path
1180Create a Landlock ruleset (if it doesn't already exist) and add an execution permission rule for path.
1181.br
1182
1183.br
1184Example:
1185.br
1186$ firejail \-\-landlock.read=/ \-\-landlock.write=/home \-\-landlock.execute=/usr
1187#endif
1188
1154.TP 1189.TP
1155\fB\-\-list 1190\fB\-\-list
1156List all sandboxes, see \fBMONITORING\fR section for more details. 1191List all sandboxes, see \fBMONITORING\fR section for more details.
@@ -1268,6 +1303,7 @@ $ firejail --list
1268.br 1303.br
12691312:netblue:browser-1312:firejail --name=browser --private firefox --no-remote 13041312:netblue:browser-1312:firejail --name=browser --private firefox --no-remote
1270.br 1305.br
1306
1271#ifdef HAVE_NETWORK 1307#ifdef HAVE_NETWORK
1272.TP 1308.TP
1273\fB\-\-net=bridge_interface 1309\fB\-\-net=bridge_interface
@@ -3201,7 +3237,34 @@ To enable AppArmor confinement on top of your current Firejail security features
3201.br 3237.br
3202$ firejail --apparmor firefox 3238$ firejail --apparmor firefox
3203#endif 3239#endif
3240#ifdef HAVE_LANDLOCK
3241.SH LANDLOCK
3242.TP
3243Landlock is a Linux security module first introduced in the 5.13 version of Linux kernel. It allows unprivileged processes to restrict their access to the filesystem. Once imposed, these restrictions can never be removed, and all child processes created by a Landlock-restricted processes inherit these restrictions. Firejail supports Landlock as an additional sandboxing feature. It can be used to ensure that a sandboxed application can only access files and directories that it was explicitly allowed to access. Firejail supports populating the ruleset with both basic set of rules and with custom set of rules. Basic set of rules allows read-only access to /bin, /dev, /etc, /lib, /opt, /proc, /usr and /var, read-write access to the home directory, and allows execution of binaries located in /bin, /opt and /usr.
3244.br
3245
3246.TP
3247Important notes:
3248.br
3249
3250.br
3251- A process can install a Landlock ruleset only if it has either \fBCAP_SYS_ADMIN\fR in its effective capability set, or the "No New Privileges" restriction enabled. Because of this, enabling the Landlock feature will also cause Firejail to enable the "No New Privileges" restriction, regardless of the profile or the \fB\-\-no\-new\-privs\fR command line option.
3252.br
3204 3253
3254.br
3255- Access to the /proc directory is managed through the \fB\-\-landlock.proc\fR command line option.
3256
3257.br
3258- Access to the /etc directory is automatically allowed. To override this, use the \fB\-\-writable\-etc\fR command line option. You can also use the \fB\-\-private\-etc\fR option to restrict access to the /etc directory.
3259.br
3260
3261.TP
3262To enable Landlock self-restriction on top of your current Firejail security features, pass \fB\-\-landlock\fR flag to Firejail command line. You can also use \fB\-\-landlock.read\fR, \fB\-\-landlock.write\fR, \fB\-\-landlock.special\fR and \fB\-\-landlock.execute\fR options together with \fB\-\-landlock\fR or instead of it. Example:
3263.br
3264
3265.br
3266$ firejail --landlock --landlock.read=/media --landlock.proc=ro mc
3267#endif
3205.SH DESKTOP INTEGRATION 3268.SH DESKTOP INTEGRATION
3206A symbolic link to /usr/bin/firejail under the name of a program, will start the program in Firejail sandbox. 3269A symbolic link to /usr/bin/firejail under the name of a program, will start the program in Firejail sandbox.
3207The symbolic link should be placed in the first $PATH position. On most systems, a good place 3270The symbolic link should be placed in the first $PATH position. On most systems, a good place