Content-type: text/html
Security-Enhanced Linux secures the puppet processes via flexible mandatory access control.
If you want to allow Puppet client to manage all file types, you must turn on the puppet_manage_all_files boolean.
setsebool -P puppet_manage_all_files 1
If you want to allow Puppet master to use connect to MySQL and PostgreSQL database, you must turn on the puppetmaster_use_db boolean.
setsebool -P puppetmaster_use_db 1
If you want to allow users to resolve user passwd entries directly from ldap rather then using a sssd serve for the puppetmaster_t, puppet_t, you must turn on the authlogin_nsswitch_use_ldap boolean.
setsebool -P authlogin_nsswitch_use_ldap 1
If you want to allow confined applications to run with kerberos for the puppetmaster_t, puppet_t, you must turn on the kerberos_enabled boolean.
setsebool -P kerberos_enabled 1
You can see the context of a file using the -Z option to lsP Policy governs the access confined processes have to these files. SELinux puppet policy is very flexible allowing users to setup their puppet processes in as secure a method as possible.
The following file types are defined for puppet:
puppet_etc_t
- Set files with the puppet_etc_t type, if you want to store puppet files in the /etc directories.
puppet_exec_t
- Set files with the puppet_exec_t type, if you want to transition an executable to the puppet_t domain.
puppet_initrc_exec_t
- Set files with the puppet_initrc_exec_t type, if you want to transition an executable to the puppet_initrc_t domain.
puppet_log_t
- Set files with the puppet_log_t type, if you want to treat the data as puppet log data, usually stored under the /var/log directory.
puppet_tmp_t
- Set files with the puppet_tmp_t type, if you want to store puppet temporary files in the /tmp directories.
puppet_var_lib_t
- Set files with the puppet_var_lib_t type, if you want to store the puppet files under the /var/lib directory.
puppet_var_run_t
- Set files with the puppet_var_run_t type, if you want to store the puppet files under the /run directory.
puppetca_exec_t
- Set files with the puppetca_exec_t type, if you want to transition an executable to the puppetca_t domain.
puppetmaster_exec_t
- Set files with the puppetmaster_exec_t type, if you want to transition an executable to the puppetmaster_t domain.
puppetmaster_initrc_exec_t
- Set files with the puppetmaster_initrc_exec_t type, if you want to transition an executable to the puppetmaster_initrc_t domain.
puppetmaster_tmp_t
- Set files with the puppetmaster_tmp_t type, if you want to store puppetmaster temporary files in the /tmp directories.
Note: File context can be temporarily modified with the chcon command. If you want to permanently change the file context you need to use the semanage fcontext command. This will modify the SELinux labeling database. You will need to use restorecon to apply the labels.
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 puppet policy is very flexible allowing users to setup their puppet processes in as secure a method as possibl