Red Hat Training

A Red Hat training course is available for RHEL 8

6.2. Cambiando la política de SELinux a MLS

Siga los siguientes pasos para cambiar la política de SELinux de dirigida a la seguridad multinivel (MLS).

Importante

Red Hat no recomienda utilizar la política MLS en un sistema que esté ejecutando el sistema X Window. Además, cuando reetiqueta el sistema de archivos con etiquetas MLS, el sistema puede impedir el acceso a dominios confinados, lo que impide que su sistema se inicie correctamente. Por lo tanto, asegúrese de cambiar SELinux a modo permisivo antes de reetiquetar los archivos. En la mayoría de los sistemas, se ven muchas denegaciones de SELinux después de cambiar a MLS, y muchas de ellas no son triviales de arreglar.

Procedimiento

  1. Instale el paquete selinux-policy-mls:

    # yum install selinux-policy-mls
  2. Abra el archivo /etc/selinux/config en un editor de texto de su elección, por ejemplo:

    # vi /etc/selinux/config
  3. Cambie el modo de SELinux de enforcing a permissive y cambie de la política dirigida a MLS:

    SELINUX=permissive
    SELINUXTYPE=mls

    Guarde los cambios y salga del editor.

  4. Antes de activar la política MLS, debe reetiquetar cada archivo del sistema de archivos con una etiqueta MLS:

    # fixfiles -F onboot
    System will relabel on next boot
  5. Reinicia el sistema:

    # reboot
  6. Comprueba si hay denegaciones de SELinux:

    # ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent -i

    Debido a que el comando anterior no cubre todos los escenarios, consulte Solución de problemas relacionados con SELinux para obtener orientación sobre la identificación, el análisis y la fijación de las denegaciones de SELinux.

  7. Después de asegurarse de que no hay problemas relacionados con SELinux en su sistema, vuelva a poner SELinux en modo de aplicación cambiando la opción correspondiente en /etc/selinux/config:

    SELINUX=aplicación
  8. Reinicia el sistema:

    # reboot
Importante

Si su sistema no arranca o no puede iniciar sesión después de cambiar a MLS, añada el parámetro enforcing=0 a la línea de comandos del kernel. Consulte Cambiar los modos de SELinux en el momento del arranque para obtener más información.

También tenga en cuenta que en MLS, los inicios de sesión SSH como el usuario root asignado al rol de SELinux sysadm_r difieren del inicio de sesión como root en staff_r. Antes de iniciar su sistema en MLS por primera vez, considere permitir los inicios de sesión SSH como sysadm_r estableciendo el booleano SELinux ssh_sysadm_login a 1. Para habilitar ssh_sysadm_login más tarde, ya en MLS, debe iniciar sesión como root en staff_r, cambiar a root en sysadm_r usando el comando newrole -r sysadm_r, y luego establecer el booleano a 1.

Pasos de verificación

  1. Verifique que SELinux se ejecuta en modo de refuerzo:

    # getenforce
    Enforcing
  2. Comprueba que el estado de SELinux devuelve el valor mls:

    # sestatus | grep mls
    Loaded policy name:             mls

Recursos adicionales

  • Las páginas de manual fixfiles(8), setsebool(8), y ssh_selinux(8).