selinux, file que no coincide con file_contexts.local

semanage fcontext -a -t puppet_etc_t "/etc/puppet/environments(/.*)?" cat /etc/selinux/targeted/contexts/files/file_contexts.local # This file is auto-generated by libsemanage # Do not edit directly. /etc/puppet/environments(/.*)? system_u:object_r:puppet_etc_t:s0 touch /etc/puppet/environments/hello1 ls -Z /etc/puppet/environments/hello1 -rw-r--r--. root root unconfined_u:object_r:puppet_etc_t:s0 /etc/puppet/environments/hello1 

¿por qué se crea este file como "unconfined_u" no como "system_u"? ¿Cómo puedo cambiarlo? Gracias.

Porque ha creado el file mientras está conectado como un usuario no confinado.

Puesto que en la política apuntada el usuario es casi siempre ignorado , esto realmente no es un problema.

Si realmente quieres cambiarlo, puedes usar chcon para hacer eso. Por ejemplo:

 # ls -Z /etc/nsswitch.conf.ipabkp -rw-r--r--. root root unconfined_u:object_r:etc_t:s0 /etc/nsswitch.conf.ipabkp # chcon -u system_u /etc/nsswitch.conf.ipabkp # ls -Z /etc/nsswitch.conf.ipabkp -rw-r--r--. root root system_u:object_r:etc_t:s0 /etc/nsswitch.conf.ipabkp