GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo habilitar/deshabilitar los modos SELinux en RHEL/CentOS

Modos SELinux

SELinux brinda esa capa adicional de seguridad a los recursos del sistema. Proporciona el MAC (control de acceso obligatorio) a diferencia del DAC (control de acceso discrecional). Antes de sumergirnos en la configuración de los modos de SELinux, veamos cuáles son los diferentes modos de operación de SELinux y cómo funcionan. SELinux puede operar en cualquiera de los 3 modos:

1. Forzado :Las acciones contrarias a la política se bloquean y el evento correspondiente se registra en el registro de auditoría.
2. Permisivo :Las acciones contrarias a la política solo se registran en el registro de auditoría.
3. Deshabilitado :SELinux está deshabilitado por completo.

Alternar los modos SELinux temporalmente

Para cambiar entre los modos de SELinux temporalmente, podemos usar el comando setenforce como se muestra a continuación:

# setenforce [ Enforcing | Permissive | 1 | 0 ]

0 –> Permisivo
1 –> Cumplimiento

O simplemente puede repetir los valores en el pseudo archivo:/sys/fs/selinux/enforce o /selinux/enforce .

# echo [0|1] > /sys/fs/selinux/enforce

Para comprobar el modo actual de SELinux:

# getenforce
Enforcing

o también podemos usar el comando sestatus para obtener un estado detallado:

# sestatus
SELinux status:                 enabled         
SELinuxfs mount:                /selinux        --> virtual FS similar to /proc
Current mode:                   enforcing       --> current mode of operation 
Mode from config file:          permissive      --> mode set in the /etc/sysconfig/selinux file.
Policy version:                 24
Policy from config file:        targeted

Cambiar los modos de SELinux de forma permanente

Usando el archivo /etc/sysconfig/selinux
Una forma de cambiar el modo SELinux de forma permanente a Obligatorio o Permisivo es editar el archivo /etc/sysconfig/selinux y establecer el valor de los parámetros de SELINUX en Obligatorio o Permisivo.

# ls -l /etc/sysconfig/selinux
lrwxrwxrwx. 1 root root 17 Mar  2 13:03 /etc/sysconfig/selinux -> ../selinux/config
# cat /etc/sysconfig/selinux

# 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=permissive
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Edite este archivo y reinicie el sistema para que los cambios surtan efecto.

Uso de los parámetros de arranque del Kernel
También podemos usar el parámetro de arranque Kernel en el arranque para configurar el modo SELinux. Para esto edite el /etc/grub.conf y agregue la opción “selinux=1 enforcing=[0|1]” a los parámetros de arranque.

# cat /etc/grub.conf
........
	root (hd0,0)
	kernel /vmlinuz-2.6.32-279.el6.x86_64 root=/dev/md3 selinux=1 enforcing=0
	initrd /initramfs-2.6.32-279.el6.x86_64.img
.........

selinux=1 –> Habilitar SELinux
enforcing=0 –> Modo permisivo
enforcing=1 –> Modo de cumplimiento

Deshabilitar SELinux

A veces, cuando no está familiarizado con las funcionalidades de SELinux, es mejor desactivarlo. No podemos deshabilitar SELinux sin reiniciar. Una opción alternativa sería configurar SELinux en modo Permisivo. Para deshabilitar completamente SELinux, edite el archivo de configuración /etc/sysconfig/selinux o el /etc/selinux/config que es un enlace suave al archivo /etc/sysconfig/selinux.

# ls -l /etc/sysconfig/selinux
lrwxrwxrwx. 1 root root 17 Mar  2 13:03 /etc/sysconfig/selinux -> ../selinux/config
# cat /etc/sysconfig/selinux

# 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=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Edite este archivo y reinicie el sistema para que los cambios surtan efecto.

Uso de los parámetros de arranque del Kernel para deshabilitar SELinux
Otra forma de desactivar permanentemente SELinux es editar los parámetros de arranque del kernel. Edite el archivo /etc/grub.conf y agregue la opción selinux=0 a la opción de arranque para deshabilitar SELinux en el arranque. En este caso, se ignoran las configuraciones en /etc/sysconfig/selinux.

# cat /etc/grub.conf
........
	root (hd0,0)
	kernel /vmlinuz-2.6.32-279.el6.x86_64 root=/dev/md3 selinux=0
	initrd /initramfs-2.6.32-279.el6.x86_64.img
.........


Linux
  1. ¿Cómo deshabilitar SELinux en CentOS?

  2. CentOS/RHEL 7:Cómo iniciar/detener o habilitar/deshabilitar Firewalld

  3. Cómo deshabilitar IPv6 en CentOS / RHEL 7

  4. CentOS/RHEL 6:Cómo deshabilitar IPv6

  5. CentOS / RHEL 5, 6:cómo deshabilitar NetworkManager

Cómo deshabilitar SElinux en CentOS 7

RHEL 8/CentOS 8 activar/desactivar IPv6

Cómo deshabilitar SELinux en CentOS 8

Cómo deshabilitar SELinux en CentOS 7

Cómo deshabilitar SELinux en CentOS 8

Cómo deshabilitar SELinux en CentOS