Tengo un cuadro de vainilla CentOS 7 con SELinux que cumple con la política específica:
$ ls -lZ /etc/resolv.conf
-rw-r--r--. root root system_u:object_r:net_conf_t:s0 /etc/resolv.conf
$ sudo id -Z
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
$ sudo semanage login -l
Login Name SELinux User MLS/MCS Range Service
__default__ unconfined_u s0-s0:c0.c1023 *
root unconfined_u s0-s0:c0.c1023 *
system_u system_u s0-s0:c0.c1023 *
$ sudo semanage user -l
SELinux User Prefix MCS Level MCS Range SELinux Roles
root user s0 s0-s0:c0.c1023 staff_r sysadm_r system_r unconfined_r
system_u user s0 s0-s0:c0.c1023 system_r unconfined_r
unconfined_u user s0 s0-s0:c0.c1023 system_r unconfined_r
user_u user s0 s0 user_r
xguest_u user s0 s0 xguest_r
user_u user s0 s0 user_r
sysadm_u user s0 s0-s0:c0.c1023 sysadm_r
staff_u user s0 s0-s0:c0.c1023 staff_r sysadm_r system_r unconfined_r
guest_u user s0 s0 guest_r
Dado lo anterior, la raíz es un usuario unconfined_u SELinux que tiene roles SELinux system_r y unconfined_r . Además, el archivo /etc/resolv.conf tiene un contexto de usuario system_u y un rol object_r , que no es uno de los roles de unconfined_u . ¿Por qué SELinux no evita que la raíz lea / escriba este archivo?