SELinux, que significa Security Enhanced Linux, es una capa adicional de control de seguridad creada para sistemas Linux. La versión original de SELinux fue desarrollada por la NSA. Otros contribuyentes clave incluyen Red Hat, que lo ha habilitado de forma predeterminada en su propio RHEL y sus distribuciones de Linux derivadas, incluido CentOS 7.
Aunque SELinux puede proteger nuestro sistema a través del control de acceso para programas y servicios del sistema, no siempre es necesario tenerlo activado. Algunos usuarios incluso pueden encontrar que interfiere con ciertos programas que intentan instalar. En este tutorial, repasaremos las instrucciones paso a paso para deshabilitar SELinux en CentOS 7 Linux.
En este tutorial aprenderás:
- Cómo comprobar el estado de SELinux
- Cómo poner SELinux en modo permisivo
- Cómo deshabilitar SELinux en CentOS 7
Requisitos de software y convenciones de la línea de comandos de Linux Categoría | Requisitos, convenciones o versión de software utilizada |
Sistema | CentOS 7 |
Software | SELinux |
Otro | Acceso privilegiado a su sistema Linux como root o a través de sudo comando. |
Convenciones | # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios |
Cómo comprobar el estado de SELinux
Puede verificar el estado actual de SELinux en cualquier momento ejecutando el siguiente comando.
$ sestatus
En nuestro sistema CentOS 7, la captura de pantalla anterior indica que se está aplicando el "modo actual" de SELinux.
Una forma aún más fácil de verificar rápidamente el estado es con getenforce
comando, que solo generará el modo actual de SELinux y nada más.
$ getenforce
Enforcing
SELinux tiene tres modos posibles que puede ver al ejecutar el comando. Ellos son:
- Cumplimiento:SELinux está activo y aplica sus reglas de política.
- Permisivo:SELinux lo permite todo, pero registra los eventos que normalmente negaría en el modo de cumplimiento.
- Deshabilitado:SELinux no aplica reglas ni registra nada.
Cómo deshabilitar SELinux en CentOS 7 instrucciones paso a paso
Dependiendo de sus necesidades, deshabilitar SELinux podría implicar cambiarlo al modo permisivo o deshabilitarlo por completo.
Configurar SELinux en modo permisivo deshabilitará todos los aspectos de SELinux excepto los mensajes de registro. No necesitamos reiniciar nuestro sistema para que este cambio surta efecto, y podemos realizar el cambio ejecutando el siguiente comando.
$ sudo setenforce 0
OR
# setenforce 0
Puede verificar el cambio verificando el modo actual de SELinux nuevamente, ya sea con el sestatus
o getenforce
comando.
Cuando reinicie el sistema, SELinux volverá a cambiar al modo obligatorio. Si desea que el cambio sea permanente, puede usar las siguientes instrucciones paso a paso para deshabilitar SELinux por completo o mantenerlo en modo permisivo.
- Utilice nano o su editor de texto favorito para abrir el archivo de configuración de SELinux ubicado en
/etc/selinux/config
. Deberá hacer esto con la cuenta raíz o el comando sudo.
$ sudo nano /etc/selinux/config
- Cambie la línea SELINUX=enforcing a "permisivo" o "deshabilitado", según la configuración que prefiera. Luego, salga de este archivo después de guardar sus cambios.
SELINUX=disabled
- Una vez que reinicie el sistema, SELinux se desactivará por completo. Para evitar reiniciar ahora, ejecute
setenforce 0
comando como se explicó anteriormente para obtener resultados instantáneos mientras espera hasta el próximo reinicio.
$ reboot
Pensamientos finales
En este tutorial, vimos cómo deshabilitar SELinux en un sistema CentOS 7 Linux, configurando el modo actual en permisivo y deshabilitando SELinux por completo. SELinux es una característica útil que solo debe desactivarse con consideración previa o en entornos de prueba.