Comandos Clave - 333.2 Control de Acceso Obligatorio

SELinux - Estado y Modos

ComandoDescripcion
getenforceVer modo actual (Enforcing/Permissive/Disabled)
sestatusEstado detallado de SELinux
setenforce 0Cambiar a modo Permissive (temporal)
setenforce 1Cambiar a modo Enforcing (temporal)
/etc/selinux/configConfiguracion permanente del modo

SELinux - Contextos

ComandoDescripcion
ls -ZVer contexto de archivos
ps auxZVer contexto de procesos
id -ZVer contexto del usuario actual
chcon -t tipo_t archivoCambiar contexto temporalmente
restorecon -v archivoRestaurar contexto por defecto
restorecon -Rv directorio/Restaurar recursivamente
semanage fcontext -a -t tipo_t "/ruta(/.*)?"Regla de contexto permanente
semanage fcontext -lListar reglas de contexto
semanage fcontext -d "/ruta(/.*)?"Eliminar regla personalizada

SELinux - Booleanos

ComandoDescripcion
getsebool -aListar todos los booleanos
getsebool nombre_booleanoVer valor de un booleano
setsebool nombre_booleano onActivar booleano (temporal)
setsebool -P nombre_booleano onActivar booleano (permanente)
semanage boolean -lListar booleanos con descripcion

SELinux - Puertos

ComandoDescripcion
semanage port -lListar asignaciones de puertos
semanage port -a -t tipo_t -p tcp PUERTOAñadir puerto
semanage port -m -t tipo_t -p tcp PUERTOModificar puerto
semanage port -d -t tipo_t -p tcp PUERTOEliminar puerto

SELinux - Diagnostico

ComandoDescripcion
ausearch -m AVC -ts recentBuscar denegaciones recientes
sealert -a /var/log/audit/audit.logAnalisis de alertas SELinux
audit2allow -aMostrar reglas necesarias
audit2allow -a -M moduloGenerar modulo de politica
semodule -i modulo.ppInstalar modulo de politica
semodule -lListar modulos instalados

AppArmor - Estado y Modos

ComandoDescripcion
aa-status / apparmor_statusVer estado de AppArmor
aa-enforce perfilPoner perfil en modo enforce
aa-complain perfilPoner perfil en modo complain
aa-disable perfilDeshabilitar perfil
apparmor_parser -r perfilRecargar perfil
apparmor_parser perfilCargar perfil nuevo
apparmor_parser -R perfilEliminar perfil cargado

AppArmor - Creacion de Perfiles

ComandoDescripcion
aa-genprof /ruta/ejecutableGenerar perfil interactivamente
aa-logprofActualizar perfil desde logs
aa-autodep /ruta/ejecutableGenerar perfil basico automatico

AppArmor - Archivos Importantes

RutaDescripcion
/etc/apparmor.d/Directorio de perfiles
/etc/apparmor.d/abstractions/Conjuntos de permisos reutilizables
/etc/apparmor.d/tunables/Variables globales
/var/log/syslog o journalctlLogs de AppArmor

Permisos en Perfiles AppArmor

PermisoSignificado
rLectura
wEscritura
aAppend (solo añadir)
kLock de archivos
lLink
mmmap ejecutable
ixEjecutar heredando perfil
px / PxEjecutar con perfil propio
ux / UxEjecutar sin confinamiento