Cómo comprobar si SELinux está habilitado en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderá cómo verificar el estado y la configuración de SELinux en un sistema Linux. SELinux es un mecanismo de seguridad crucial que proporciona control de acceso obligatorio.

Utilizará el comando sestatus para obtener un resumen del estado actual de SELinux, inspeccionará el archivo de configuración de SELinux /etc/selinux/config para entender sus configuraciones predeterminadas y utilizará el comando getenforce para verificar rápidamente el modo de funcionamiento actual. Al completar estos pasos, adquirirá una comprensión fundamental de cómo determinar si SELinux está habilitado y cómo está configurado en su sistema.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") subgraph Lab Skills linux/echo -.-> lab-558802{{"Cómo comprobar si SELinux está habilitado en Linux"}} linux/cat -.-> lab-558802{{"Cómo comprobar si SELinux está habilitado en Linux"}} end

Verificar el estado de SELinux con sestatus

En este paso, aprenderá cómo verificar el estado de SELinux en su sistema. SELinux (Security-Enhanced Linux) es un mecanismo de seguridad que proporciona control de acceso obligatorio (MAC, por sus siglas en inglés) para procesos y recursos. Añade una capa adicional de seguridad sobre el control de acceso discrecional (DAC, por sus siglas en inglés) tradicional.

Para verificar el estado actual de SELinux, utilizamos el comando sestatus. Este comando proporciona un resumen de la configuración de SELinux y su estado actual.

Abra su terminal si no está abierta. Puede hacerlo haciendo clic en el icono de Xfce Terminal en el lado izquierdo de su escritorio.

Ahora, escriba el siguiente comando en la terminal y presione Enter:

sestatus

Debería ver una salida similar a esta:

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 ...
Policy load time:               ...

Analicemos las partes importantes de la salida:

  • SELinux status: Indica si SELinux está habilitado o deshabilitado en el sistema.
  • Current mode: Muestra el modo de funcionamiento actual de SELinux. Los modos comunes son enforcing, permissive y disabled.
  • Mode from config file: Muestra el modo que está configurado en el archivo de configuración de SELinux (/etc/selinux/config).

En esta salida, SELinux status: enabled significa que SELinux está activo, y Current mode: enforcing significa que SELinux está aplicando activamente sus políticas de seguridad.

Comprender el estado de SELinux es el primer paso para gestionar su comportamiento.

Haga clic en Continue para pasar al siguiente paso.

Verificar la configuración de SELinux con cat /etc/selinux/config

En el paso anterior, verificó el estado actual de SELinux utilizando sestatus. Ahora, echemos un vistazo al archivo de configuración que determina el comportamiento predeterminado de SELinux.

El archivo de configuración principal de SELinux se encuentra en /etc/selinux/config. Podemos ver el contenido de este archivo utilizando el comando cat. El comando cat se utiliza para mostrar el contenido de archivos.

Escriba el siguiente comando en su terminal y presione Enter:

cat /etc/selinux/config

Debería ver una salida similar a esta:

## This file controls the state of SELinux on the system.
## SELINUX= can take one of these three values:
##     enforcing - SELinux security policy is enforced.
##     permissive - SELinux prints warnings instead of enforcing.
##     disabled - No SELinux policy is loaded.
SELINUX=enforcing
## SELINUXTYPE= can take one of these three values:
##     targeted - Targeted processes are protected,
##               for more information see selinux-policy-targeted(8)
##     strict - Full SELinux protection, see selinux-policy(8)
##     mls - Multi-Level Security protection.
SELINUXTYPE=targeted

Este es el archivo donde se configura el modo predeterminado de SELinux (SELINUX=) y el tipo de política (SELINUXTYPE=).

  • SELINUX=enforcing: Esta línea indica que el sistema está configurado para iniciar en modo enforcing por defecto.
  • SELINUXTYPE=targeted: Esta línea especifica que se utiliza la política targeted. La política targeted es la más común y protege procesos específicos del sistema.

Las configuraciones de este archivo generalmente se aplican cuando el sistema se inicia. Si bien se puede cambiar el modo actual temporalmente (lo veremos en el siguiente paso), los cambios realizados en /etc/selinux/config requieren un reinicio del sistema para tener pleno efecto.

Comprender el archivo de configuración le ayuda a ver el estado previsto de SELinux para el sistema.

Haga clic en Continue para continuar.

Inspeccionar el modo de SELinux con getenforce

En los pasos anteriores, utilizó sestatus para obtener una descripción detallada de SELinux y cat /etc/selinux/config para ver la configuración predeterminada. Ahora, usemos un comando más sencillo, getenforce, para verificar rápidamente el modo actual de SELinux.

El comando getenforce está diseñado específicamente para mostrar solo el modo de funcionamiento actual de SELinux. Esto es útil para una comprobación rápida sin necesidad de la salida completa de sestatus.

Escriba el siguiente comando en su terminal y presione Enter:

getenforce

Debería ver una salida similar a esta:

Enforcing

La salida será una de las siguientes:

  • Enforcing: SELinux está activo y aplicando sus políticas. Cualquier acción que viole una política será bloqueada.
  • Permissive: SELinux está activo pero no está aplicando políticas. Registrará advertencias sobre las acciones que habrían sido bloqueadas en el modo enforcing, pero permite que se realicen. Este modo es útil para pruebas y solución de problemas.
  • Disabled: SELinux no está activo y no se cargan políticas.

En este caso, la salida Enforcing confirma que SELinux está actualmente en modo enforcing, lo que coincide con lo que vimos con el comando sestatus.

El comando getenforce es una herramienta útil para una comprobación rápida del estado de SELinux.

Haga clic en Continue para completar este laboratorio.

Resumen

En este laboratorio, aprendiste cómo verificar el estado de SELinux en un sistema Linux. Utilizaste el comando sestatus para obtener un resumen de la configuración de SELinux, incluyendo si está habilitado, su modo de funcionamiento actual (enforcing, permissive o disabled) y el modo establecido en el archivo de configuración.

También aprendiste cómo verificar la configuración de SELinux inspeccionando el archivo /etc/selinux/config utilizando el comando cat, que muestra el modo predeterminado de SELinux que se aplicará al iniciar el sistema. Finalmente, utilizaste el comando getenforce para verificar rápidamente el modo actual de SELinux. Estos pasos proporcionan métodos esenciales para entender el estado y la configuración actual de SELinux.