5.2. Análisis de los mensajes de denegación de SELinux
Después de identificar que SELinux está bloqueando su escenario, es posible que tenga que analizar la causa raíz antes de elegir una solución.
Requisitos previos
-
Los paquetes
policycoreutils-python-utils
ysetroubleshoot-server
están instalados en su sistema.
Procedimiento
Listar más detalles sobre una denegación registrada usando el comando
sealert
, por ejemplo:$ sealert -l "*" SELinux is preventing /usr/bin/passwd from write access on the file /root/test. ***** Plugin leaks (86.2 confidence) suggests ***************************** If you want to ignore passwd trying to write access the test file, because you believe it should not need this access. Then you should report this as a bug. You can generate a local policy module to dontaudit this access. Do # ausearch -x /usr/bin/passwd --raw | audit2allow -D -M my-passwd # semodule -X 300 -i my-passwd.pp ***** Plugin catchall (14.7 confidence) suggests ************************** ... Raw Audit Messages type=AVC msg=audit(1553609555.619:127): avc: denied { write } for pid=4097 comm="passwd" path="/root/test" dev="dm-0" ino=17142697 scontext=unconfined_u:unconfined_r:passwd_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:admin_home_t:s0 tclass=file permissive=0 ... Hash: passwd,passwd_t,admin_home_t,file,write
Si el resultado obtenido en el paso anterior no contiene sugerencias claras:
Habilite la auditoría de ruta completa para ver las rutas completas de los objetos a los que se ha accedido y para hacer visibles los campos adicionales de eventos de Auditoría de Linux:
# auditctl -w /etc/shadow -p w -k shadow-write
Borrar la caché de
setroubleshoot
:# rm -f /var/lib/setroubleshoot/setroubleshoot.xml
- Reproducir el problema.
Repite el paso 1.
Después de terminar el proceso, desactive la auditoría de ruta completa:
# auditctl -W /etc/shadow -p w -k shadow-write
-
Si
sealert
devuelve sólo sugerencias decatchall
o sugiere añadir una nueva regla usando la herramientaaudit2allow
, compare su problema con los ejemplos listados y explicados en las denegaciones de SELinux en el registro de Auditoría.
Recursos adicionales
-
La página de manual
sealert(8)
.