gpg_helper_selinux(8)
π gpg_helper_selinux(8) β the SELinux policy page for gpg_helper, bestie edition π
okay so this is the manual page for gpg_helper_selinux, straight out of the SELinux Policy gpg_helper collection, and it's literally all about keeping the gpg_helper processes on lock. grab a snack, we're getting into it π
β¨ NAME β¨
gpg_helper_selinux β the Security Enhanced Linux Policy for the gpg_helper processes. that's it, that's the whole vibe π«Ά
πΈ DESCRIPTION πΈ
Security-Enhanced Linux secures the gpg_helper processes via flexible mandatory access control. mandatory access control!! she does not ask permission, she is the permission π
The gpg_helper processes execute with the gpg_helper_t SELinux type. want to check if you've got these processes running? just run the ps command with the -Z qualifier, easy peasy:
ps -eZ | grep gpg_helper_t
that's the whole vibe check right there β¨
π¦ ENTRYPOINTS π¦
The gpg_helper_t SELinux type can be entered via the gpg_helper_exec_t file type. it's giving "front door energy" πͺ
The default entrypoint paths for the gpg_helper_t domain are the following:
/usr/lib/gnupg/gpgkeys.*
π PROCESS TYPES π
SELinux defines process types (domains) for each process running on the system. yes, every single one gets its own little domain, main character energy for everyone π
You can see the context of a process using the -Z option to ps. love that for you.
Policy governs the access confined processes have to files. SELinux gpg_helper policy is very flexible, allowing users to setup their gpg_helper processes in as secure a method as possible. flexible and secure, we stan π
The following process types are defined for gpg_helper:
gpg_helper_t
Note:semanage permissive -a gpg_helper_tcan be used to make the process typegpg_helper_tpermissive. SELinux does not deny access to permissive process types, but the AVC (SELinux denials) messages are still generated. so like, she stops blocking you but she still writes it all down in her notes π
π BOOLEANS π
SELinux policy is customizable based on least access required. gpg_helper policy is extremely flexible and has several booleans that allow you to manipulate the policy and run gpg_helper with the tightest access possible. tightest access possible!! we love a locked-down queen π₯
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
If you want to allow system to run with NIS, you must turn on the nis_enabled boolean. Disabled by default.
setsebool -P nis_enabled 1
π MANAGED FILES π
The SELinux process type gpg_helper_t can manage files labeled with the following file types. The paths listed are the default paths for these file types. note that the process's UID still needs to have DAC permissions β SELinux isn't out here doing DAC's homework, no cap π
krb5_host_rcache_t
/var/tmp/krb5_0.rcache2
/var/cache/krb5rcache(/.*)?
/var/tmp/nfs_0
/var/tmp/DNS_25
/var/tmp/host_0
/var/tmp/imap_0
/var/tmp/HTTP_23
/var/tmp/HTTP_48
/var/tmp/ldap_55
/var/tmp/ldap_487
/var/tmp/ldapmap1_0
look at that list, she's thorough π
π§ FILE CONTEXTS π§
SELinux requires files to have an extended attribute to define the file type. yes, an extended attribute, it's giving invisible label energy β¨
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 gpg_helper policy is very flexible, allowing users to setup their gpg_helper processes in as secure a method as possible.
β STANDARD FILE CONTEXT β
SELinux defines the file context types for the gpg_helper. if you wanted to store files with these types in a different path, you need to execute the semanage command to specify alternate labeling and then use restorecon to put the labels on disk. two steps, no skipping π
semanage fcontext -a -t gpg_helper_exec_t
'/srv/gpg_helper/content(/.*)?'
restorecon -R -v /srv/mygpg_helper_content
Note: SELinux often uses regular expressions to specify labels that match multiple files. regex girlies rise πΈ
The following file types are defined for gpg_helper:
gpg_helper_exec_tβ Set files with thegpg_helper_exec_ttype if you want to transition an executable to thegpg_helper_tdomain.
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. temporary vs permanent, know the difference bestie, it WILL come up π€
π 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 booleancan also be used to manipulate the booleans.system-config-selinuxis a GUI tool available to customize SELinux policy settings. a GUI!! for when you want to click instead of type π±οΈ
π AUTHOR π
This manual page was auto-generated using sepolicy manpage. yes she was generated, and yes she still ate π
π₯ SEE ALSO π₯
selinux(8), gpg_helper(8), semanage(8), restorecon(8), chcon(1), sepolicy(8), setsebool(8)
okay that's the whole page bestie, go forth and label responsibly π«Ά
sign-off tea β: this one's from the gpg_helper manual, dated 26-10-06, and it lives at section gpg_helper_selinux(8) β mwah, periodt π
π¦ 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