boothd_selinux(8)
β¨ boothd_selinux(8) β the SELinux policy glow-up for boothd β¨
okay bestie, so this is the boothd_selinux(8) page from the boothd manual, and it's literally your cheat sheet for how SELinux handles the boothd processes. grab a lil snack π, we're going in.
π NAME π
boothd_selinux β the Security Enhanced Linux Policy for the boothd processes. yes, that's the whole vibe. π
πΈ DESCRIPTION πΈ
Security-Enhanced Linux secures the boothd processes via flexible mandatory access control. that's the whole point, no cap.
The boothd processes execute with the boothd_t SELinux type. you can check if you have these processes running by executing the ps command with the -Z qualifier. easy peasy.
for example:
ps -eZ | grep boothd_t
slay, now you know what's running. π₯
π¦ ENTRYPOINTS π¦
The boothd_t SELinux type can be entered via the boothd_exec_t file type. that's the doorway, periodt.
The default entrypoint paths for the boothd_t domain are the following:
/usr/bin/boothd, /usr/bin/booth-keygen
π PROCESS TYPES π
SELinux defines process types (domains) for each process running on the system. yes, every single one gets its own lil label. π
You can see the context of a process using the -Z option to ps.
Policy governs the access confined processes have to files. SELinux boothd policy is very flexible, allowing users to setup their boothd processes in as secure a method as possible. obsessed with the flexibility honestly.
The following process types are defined for boothd:
boothd_t
Note:semanage permissive -a boothd_tcan be used to make the process typeboothd_tpermissive. SELinux does not deny access to permissive process types, but the AVC (SELinux denials) messages are still generated. so like, it's chill but it's still snitching to the logs. π
π BOOLEANS π
SELinux policy is customizable based on least access required. boothd policy is extremely flexible and has several booleans that allow you to manipulate the policy and run boothd with the tightest access possible. tightest access = main character energy fr fr.
If you want to dontaudit all daemons scheduling requests (setsched, sys_nice), you must turn on the daemons_dontaudit_scheduling boolean. Enabled by default.
setsebool -P daemons_dontaudit_scheduling 1
If you want to allow all domains to execute in fips_mode, you must turn on the fips_mode boolean. Enabled by default.
setsebool -P fips_mode 1
π PORT TYPES π
SELinux defines port types to represent TCP and UDP ports. both of them, iconic.
You can see the types associated with a port by using the following command:
semanage port -l
Policy governs the access confined processes have to these ports. SELinux boothd policy is very flexible, allowing users to setup their boothd processes in as secure a method as possible.
The following port types are defined for boothd:
boothd_port_t
Default Defined Ports:
tcp 9929
udp 9929
π MANAGED FILES π
The SELinux process type boothd_t can manage files labeled with the following file types. the paths listed are the default paths for these file types. quick reminder tho: the processes UID still need to have DAC permissions. SELinux isn't out here overriding DAC, bestie. π
boothd_var_run_t
/run/booth(/.*)?
cluster_conf_t
/etc/cluster(/.*)?
cluster_tmpfs_t
(no default paths listed for this one, it's mysterious like that β¨)
cluster_var_lib_t
/var/lib/pcsd(/.*)?
/var/lib/cluster(/.*)?
/var/lib/openais(/.*)?
/var/lib/pengine(/.*)?
/var/lib/corosync(/.*)?
/usr/lib/heartbeat(/.*)?
/var/lib/heartbeat(/.*)?
/var/lib/pacemaker(/.*)?
cluster_var_run_t
/run/crm(/.*)?
/run/cman_.*
/run/rsctmp(/.*)?
/run/aisexec.*
/run/heartbeat(/.*)?
/run/pcsd-ruby.socket
/run/corosync-qnetd(/.*)?
/run/corosync-qdevice(/.*)?
/run/pcsd.socket
/run/corosync.pid
/run/cpglockd.pid
/run/rgmanager.pid
/run/cluster/rgmanager.sk
root_t
/sysroot/.aleph-version.json
/sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
/
/initrd
/var/lib/ntp
π§ FILE CONTEXTS π§
SELinux requires files to have an extended attribute to define the file type. it's giving "everything needs a name tag". π·οΈ
You can see the context of a file using the -Z option to ls.
Policy governs the access confined processes have to these files. SELinux boothd policy is very flexible, allowing users to setup their boothd processes in as secure a method as possible.
β STANDARD FILE CONTEXT β
SELinux defines the file context types for the boothd. if you wanted to store files with these types in a different paths, you need to execute the semanage command to specify alternate labeling and then use restorecon to put the labels on disk. move the label, keep the vibe. π
semanage fcontext -a -t boothd_exec_t '/srv/boothd/content(/.*)?'
restorecon -R -v /srv/myboothd_content
Note: SELinux often uses regular expressions to specify labels that match multiple files. regex my beloved. π
The following file types are defined for boothd:
boothd_etc_tβ set files with theboothd_etc_ttype if you want to store boothd files in the/etcdirectories.boothd_exec_tβ set files with theboothd_exec_ttype if you want to transition an executable to theboothd_tdomain.
Paths:
/usr/bin/boothd, /usr/bin/booth-keygen
boothd_unit_file_tβ set files with theboothd_unit_file_ttype if you want to treat the files as boothd unit content.
Paths:
/usr/lib/systemd/system/booth@.service,
/usr/lib/systemd/system/booth-arbitrator.service
boothd_var_lib_tβ set files with theboothd_var_lib_ttype if you want to store the boothd files under the/var/libdirectory.boothd_var_run_tβ set files with theboothd_var_run_ttype if you want to store the boothd files under the/runor/var/rundirectory.
Note: file context can be temporarily modified with thechconcommand. if you want to permanently change the file context you need to use thesemanage fcontextcommand. this will modify the SELinux labeling database. you will need to userestoreconto apply the labels.chconis the lil temporary tattoo,semanage fcontextis the real one. π«Ά
π₯ COMMANDS π₯
semanage fcontextcan also be used to manipulate default file context mappings.semanage permissivecan also be used to manipulate whether or not a process type is permissive.semanage modulecan also be used to enable/disable/install/remove policy modules.semanage portcan also be used to manipulate the port definitions.semanage booleancan also be used to manipulate the booleans.system-config-selinuxis a GUI tool available to customize SELinux policy settings. yes, a GUI, for when you want to point and click instead of type. π±οΈβ¨
π AUTHOR π
This manual page was auto-generated using sepolicy manpage. the robot wrote it, we just made it cute. π€π
π SEE ALSO π
selinux(8), boothd(8), semanage(8), restorecon(8), chcon(1), sepolicy(8), setsebool(8)
and that's the whole page bestie, go forth and label responsibly π β¨
sign-off vibes: this was boothd, dated 26-10-06, living under boothd_selinux(8) β mwah, take care of her π
π¦ where this page comes from
- opensuse-leap 16.0: selinux-policy-doc 20250627+git412.dbf877ab7-160000.1.1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms