feat(fsp): add sd-mount.
This commit is contained in:
parent
9125686973
commit
a194f28c21
1 changed files with 71 additions and 0 deletions
71
apparmor.d/groups/_full/sd-mount
Normal file
71
apparmor.d/groups/_full/sd-mount
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
# apparmor.d - Full set of apparmor profiles
|
||||
# Copyright (C) 2025 Alexandre Pujol <alexandre@pujol.io>
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
# Part of the systemd (as PID 1) profile.
|
||||
|
||||
# sd-mount is a subprofile of sd responsible to handle mounting operation.
|
||||
|
||||
# Only use this profile with a fully configured system. Otherwise it **WILL**
|
||||
# break your computer. See https://apparmor.pujol.io/full-system-policy/.
|
||||
|
||||
# Distributions and other programs can add rules in the usr/sd-mount.d directory
|
||||
|
||||
abi <abi/4.0>,
|
||||
|
||||
include <tunables/global>
|
||||
|
||||
@{exec_path} = @{bin}/mount
|
||||
profile sd-mount flags=(complain) {
|
||||
include <abstractions/base>
|
||||
include <abstractions/disks-write>
|
||||
|
||||
capability dac_read_search,
|
||||
capability sys_admin,
|
||||
|
||||
mount -> @{efi}/,
|
||||
mount -> @{HOME}/{,**},
|
||||
mount -> @{HOMEDIRS}/,
|
||||
mount -> @{MOUNTDIRS}/,
|
||||
mount -> @{MOUNTS}/{,**},
|
||||
mount fstype=binfmt_misc options=(rw nodev noexec nosuid) binfmt_misc -> @{PROC}/sys/fs/binfmt_misc/,
|
||||
mount fstype=configfs options=(rw nodev noexec nosuid) configfs -> @{sys}/kernel/config/,
|
||||
mount fstype=debugfs options=(rw nodev noexec nosuid) debugfs -> @{sys}/kernel/debug/,
|
||||
mount fstype=fusectl options=(rw nodev noexec nosuid) fusectl -> @{sys}/fs/fuse/connections/,
|
||||
mount fstype=hugetlbfs options=(rw nosuid nodev) hugetlbfs -> /dev/hugepages/,
|
||||
mount fstype=mqueue options=(rw nodev noexec nosuid) -> /dev/mqueue/,
|
||||
mount fstype=squashfs options=(ro nodev) /dev/loop@{int} -> /snap/*/@{int}/,
|
||||
mount fstype=tmpfs options=(rw nodev noexec nosuid) tmpfs -> @{run}/lock/,
|
||||
mount fstype=tmpfs options=(rw nodev nosuid strictatime) tmpfs -> /tmp/,
|
||||
mount fstype=tracefs options=(rw nodev noexec nosuid) tracefs -> @{sys}/kernel/tracing/,
|
||||
|
||||
mount options=(rw move) -> @{efi},
|
||||
mount options=(rw move) -> @{HOME}/{,**},
|
||||
mount options=(rw move) -> @{HOMEDIRS}/,
|
||||
mount options=(rw move) -> @{MOUNTDIRS}/,
|
||||
mount options=(rw move) -> @{MOUNTS}/{,**},
|
||||
mount options=(rw move) -> @{sys}/fs/fuse/connections/,
|
||||
mount options=(rw move) -> @{sys}/kernel/config/,
|
||||
mount options=(rw move) -> @{sys}/kernel/debug/,
|
||||
mount options=(rw move) -> @{sys}/kernel/tracing/,
|
||||
mount options=(rw move) -> /dev/hugepages/,
|
||||
mount options=(rw move) -> /dev/mqueue/,
|
||||
mount options=(rw move) -> /tmp/,
|
||||
|
||||
@{exec_path} mr,
|
||||
|
||||
/var/lib/snapd/snaps/*.snap r,
|
||||
|
||||
@{run}/ r,
|
||||
owner @{run}/mount/ rw,
|
||||
owner @{run}/mount/utab{,.*} rwk,
|
||||
|
||||
@{PROC}/@{pid}/mountinfo r,
|
||||
|
||||
/dev/loop-control rw,
|
||||
|
||||
include if exists <usr/sd-mount.d>
|
||||
include if exists <local/sd-mount>
|
||||
}
|
||||
|
||||
# vim:syntax=apparmor
|
||||
Loading…
Add table
Add a link
Reference in a new issue