rhev_agentd_selinux(8)
π rhev_agentd_selinux(8) β the manual page, but make it make sense β¨
okay so bestie, this is the rhev_agentd_selinux(8) situation β it's the SELinux Policy page for the rhev_agentd processes and honestly it's giving security realness. no cap. π«Ά
πΈ NAME πΈ
rhev_agentd_selinux β the Security Enhanced Linux Policy for the rhev_agentd processes. periodt. π
π¦ DESCRIPTION π¦
Security-Enhanced Linux secures the rhev_agentd processes via flexible mandatory access control. it's literally doing the most to keep things locked down. πβ¨
so the rhev_agentd processes execute with the rhev_agentd_t SELinux type. you can vibe check if you've got these processes running by executing the ps command with the -Z qualifier. like so:
ps -eZ | grep rhev_agentd_t
see? easy. iconic behavior. π
π ENTRYPOINTS π
the rhev_agentd_t SELinux type can be entered via the rhev_agentd_exec_t file type. that's the main character entrance fr fr. πͺβ¨
the default entrypoint paths for the rhev_agentd_t domain are literally:
/usr/share/ovirt-guest-agent, /usr/share/rhev-agent/rhev-agentd.py,
/usr/share/rhev-agent/LockActiveSession.py, /usr/share/ovirt-guest-
agent/LockActiveSession.py, /usr/share/ovirt-guest-agent/ovirt-guest-
agent.py
π PROCESS TYPES π
SELinux defines process types (domains) for each process running on the system. it's a whole thing. β¨
you can see the context of a process using the -Z option to ps. vibe check that context bestie.
policy governs the access confined processes have to files. SELinux rhev_agentd policy is very flexible, allowing users to setup their rhev_agentd processes in as secure a method as possible. so like, you have options. π
the following process types are defined for rhev_agentd:
rhev_agentd_trhev_agentd_consolehelper_t
Note:semanage permissive -a rhev_agentd_tcan be used to make the process typerhev_agentd_tpermissive. SELinux does not deny access to permissive process types, but the AVC (SELinux denials) messages are still generated. so like, it's still watching you even when it's chill. ππ
π₯ BOOLEANS π₯
SELinux policy is customizable based on least access required. rhev_agentd policy is extremely flexible and has several booleans that allow you to manipulate the policy and run rhev_agentd with the tightest access possible. slay. π
- if you want to dontaudit all daemons scheduling requests (
setsched,sys_nice), you must turn on thedaemons_dontaudit_schedulingboolean. 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 thefips_modeboolean. Enabled by default.
setsebool -P fips_mode 1
- if you want to allow system to run with NIS, you must turn on the
nis_enabledboolean. Disabled by default.
setsebool -P nis_enabled 1
π§ MANAGED FILES π§
the SELinux process type rhev_agentd_t can manage files labeled with the following file types. the paths listed are the default paths for these file types. note the processes UID still need to have DAC permissions. okay so let's break it down. π
cluster_conf_t
/etc/cluster(/.*)?
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
/var/run/crm(/.*)?
/var/run/cman_.*
/var/run/rsctmp(/.*)?
/var/run/aisexec.*
/var/run/heartbeat(/.*)?
/var/run/pcsd-ruby.socket
/var/run/corosync-qnetd(/.*)?
/var/run/corosync-qdevice(/.*)?
/var/run/pcsd.socket
/var/run/corosync.pid
/var/run/cpglockd.pid
/var/run/rgmanager.pid
/var/run/cluster/rgmanager.sk
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
rhev_agentd_log_t
/var/log/rhev-agent(/.*)?
/var/log/ovirt-guest-agent(/.*)?
rhev_agentd_tmp_trhev_agentd_var_run_t
/var/run/rhev-agentd.pid
/var/run/ovirt-guest-agent.pid
root_t
/sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
/
/initrd
π FILE CONTEXTS π
SELinux requires files to have an extended attribute to define the file type. it's giving β¨labeledβ¨. π
you can see the context of a file using the -Z option to ls. vibe check that file, bestie. π
policy governs the access confined processes have to these files. SELinux rhev_agentd policy is very flexible, allowing users to setup their rhev_agentd processes in as secure a method as possible. we love options. π
β STANDARD FILE CONTEXT β
SELinux defines the file context types for the rhev_agentd. if you wanted to store files with these types in different paths, you need to execute the semanage command to specify alternate labeling and then use restorecon to put the labels on disk. like so:
semanage fcontext -a -t rhev_agentd_log_t
'/srv/myrhev_agentd_content(/.*)?'
restorecon -R -v /srv/myrhev_agentd_content
Note: SELinux often uses regular expressions to specify labels that match multiple files. regex girlies rise. β¨
the following file types are defined for rhev_agentd:
rhev_agentd_exec_t
set files with the rhev_agentd_exec_t type, if you want to transition an executable to the rhev_agentd_t domain.
Paths:
/usr/share/ovirt-guest-agent, /usr/share/rhev-agent/rhev-agentd.py,
/usr/share/rhev-agent/LockActiveSession.py, /usr/share/ovirt-guest-
agent/LockActiveSession.py, /usr/share/ovirt-guest-agent/ovirt-
guest-agent.py
rhev_agentd_log_t
set files with the rhev_agentd_log_t type, if you want to treat the data as rhev agentd log data, usually stored under the /var/log directory.
Paths:
/var/log/rhev-agent(/.*)?, /var/log/ovirt-guest-agent(/.*)?
rhev_agentd_tmp_t
set files with the rhev_agentd_tmp_t type, if you want to store rhev agentd temporary files in the /tmp directories.
rhev_agentd_unit_file_t
set files with the rhev_agentd_unit_file_t type, if you want to treat the files as rhev agentd unit content.
rhev_agentd_var_run_t
set files with the rhev_agentd_var_run_t type, if you want to store the rhev agentd files under the /run or /var/run directory.
Paths:
/var/run/rhev-agentd.pid, /var/run/ovirt-guest-agent.pid
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. so like,chconis a quick vibe,semanage fcontextis forever. ππ
π COMMANDS π
semanage fcontext can also be used to manipulate default file context mappings. it's giving multipurpose. β¨
semanage permissive can also be used to manipulate whether or not a process type is permissive. slay. π
semanage module can also be used to enable/disable/install/remove policy modules. lowkey essential fr fr. π
semanage boolean can also be used to manipulate the booleans. iconic. π
system-config-selinux is a GUI tool available to customize SELinux policy settings. a whole GUI, bestie. obsessed. π»β¨
π¦ AUTHOR π¦
this manual page was auto-generated using sepolicy manpage. the robots did this one. not me. π€π
β SEE ALSO β
selinux(8), rhev_agentd(8), semanage(8), restorecon(8), chcon(1), sepolicy(8), setsebool(8), rhev_agentd_consolehelper_selinux(8). go read those too, iykyk. π
and that's the whole thing bestie! this page is from the rhev_agentd manual, dated 26-10-23, and it's literally rhev_agentd_selinux(8) energy all the way through. hope you understood it, ily, go secure those processes π
β¨π«Ά
π¦ where this page comes from
- centos-stream 9: selinux-policy-doc 38.1.87-1.el9 Β· GPLv2+
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms