21.2. Archivos relacionados con SELinux

Las secciones siguientes describen los archivos de configuración y sistemas de archivos relacionados con SELinux.

21.2.1. El pseudo sistema de archivos /selinux/

El pseudo-sistema de archivos /selinux/ contiene los comandos que son utilizados más a menudo por el subsistema del kernel. Este tipo de sistema de archivos es similar al pseudo sistema /proc/.

En la mayoría de los casos, los administradores y usuarios no necesitan manipular este componente, en comparación con otros archivos y directorios SELinux.

El ejemplo siguiente presenta contenidos de muestra del directorio /selinux/:

-rw-rw-rw-  1 root root 0 Sep 22 13:14 access
dr-xr-xr-x  1 root root 0 Sep 22 13:14 booleans
--w-------  1 root root 0 Sep 22 13:14 commit_pending_bools
-rw-rw-rw-  1 root root 0 Sep 22 13:14 context
-rw-rw-rw-  1 root root 0 Sep 22 13:14 create
--w-------  1 root root 0 Sep 22 13:14 disable
-rw-r--r--  1 root root 0 Sep 22 13:14 enforce
-rw-------  1 root root 0 Sep 22 13:14 load
-r--r--r--  1 root root 0 Sep 22 13:14 mls
-r--r--r--  1 root root 0 Sep 22 13:14 policyvers
-rw-rw-rw-  1 root root 0 Sep 22 13:14 relabel
-rw-rw-rw-  1 root root 0 Sep 22 13:14 user

Por ejemplo, al ejecutar el comando cat en el archivo enforce revela un 1, para el modo impositivo, o un 0, para el modo permisivo.

21.2.2. Archivos de configuración de SELinux

Las secciones siguientes describen los archivos de configuración y de políticas para SELinux, y los sistemas de archivos relacionados localizados en el directorio /etc/.

21.2.2.1. El archivo de configuración /etc/sysconfig/selinux

Hay dos formas de configurar SELinux bajo Red Hat Enterprise Linux: usando el Herramienta de configuración de nivel de seguridad (system-config-securitylevel), o manualmente editando el archivo de configuración (/etc/sysconfig/selinux).

El archivo /etc/sysconfig/selinux es el archivo de configuración principal para habilitar o inhabilitar SELinux, así como también para configurar cuál política de debe imponer en el sistema y cómo hacerlo.

NotaNota
 

El archivo /etc/sysconfig/selinux contiene un enlace simbólico al archivo de configuración real, /etc/selinux/config.

A continuación se explica el subconjunto completo de opciones disponibles para la configuración:

  • SELINUX=<enforcing|permissive|disabled> — Define el estado superior para SELinux en un sistema.

    • enforcing o 'impositivo' — Se impone la política de seguridad SELinux.

    • permissive o 'permisivo' — El sistema SELinux advierte pero no impone la política. Esto es útil para propósitos de depuración o de resolución de problemas. En modo permisivo, se registrarán más rechazos, pues los sujetos podrán continuar con acciones que de lo contrario serían rechazadas en el modo impositivo. Por ejemplo, navegar en un árbol de directorios producirá varios mensajes de avc: denied para cada nivel de directorio leído, pero un kernel en modo impositivo habría detenido la primera acción de este tipo, previniendo que se produjeran más mensajes de rechazo.

    • disabled o 'inhabilitado' — SELinux está completamente desactivado. Los ganchos de SELinux no están conectados al kernel y el pseudo sistema de archivos no está registrado.

      SugerenciaSugerencia
       

      Las acciones realizadas mientras SELinux está inhabilitado pueden provocar que el sistema de archivos ya no tenga el contexto de seguridad adecuado como se definió en la política. La ejecución de fixfiles relabel antes de activar SELinux volverá a etiquetar el sistema de archivos para que SELinux funcione adecuadamente cuando esté activo. Para más información, consulte la página man de fixfiles(8).

    NotaNota
     

    Si se dejan espacios en blanco adicionales al final de una línea de configuración o como líneas extra al final de un archivo, se puede causar un comportamiento inesperado. Para ser precavidos, elimine cualquier espacio en blanco.

  • SELINUXTYPE=<targeted|strict> — Especifica cuál política está siendo implantada actualmente por SELinux.

    • targeted (objetivo) — Solamente se protegen ciertos demonios particulares.

      ImportanteImportante
       

      Los siguientes demonios son protegidos en la política de objetivos predeterminada:dhcpd, httpd (apache.te), named, nscd, ntpd, portmap, snmpd, squid, y syslogd. El resto del sistema se ejecuta en el dominio unconfined_t (ilimitado).

      Los archivos de políticas para estos demonios se pueden encontrar en /etc/selinux/targeted/src/policy/domains/program y están sujetos a cambios, a medida que se publiquen versiones más nuevas de Red Hat Enterprise Linux.

      La imposición de políticas para estos demonios se puede activar y desactivar, utilizando valores boleanos controlados por Herramienta de configuración de nivel de seguridad (system-config-securitylevel). Al activar un valor boleano para un demonio objetivo se desactiva la transición de políticas para ese demonio, lo que previene, por ejemplo, que init pase a dhcpd desde el dominio unconfined_t (ilimitado) al dominio especificado en dhcpd.te. El dominio unconfined_t permite a los sujetos y objetos con ese contexto de seguridad a ejecutarse bajo la seguridad estándar de Linux.

    • strict (estricta) — Protección SELinux completa, para todos los demonios. Se definen los contextos de seguridad para todos los sujetos y objetos y cada simple acción es procesada por el servidor de aplicación de políticas.

21.2.2.2. El directorio /etc/selinux/

El directorio /etc/selinux/ es la ubicación principal para todos los archivos de políticas así como también para el archivo de configuración principal.

El ejemplo siguiente presenta contenidos de muestra del directorio /etc/selinux/:

-rw-r--r--  1 root root  448 Sep 22 17:34 config
drwxr-xr-x  5 root root 4096 Sep 22 17:27 strict
drwxr-xr-x  5 root root 4096 Sep 22 17:28 targeted

Los dos subdirectorios, strict/ y targeted/, son los directorios específicos donde se contienen los archivos de políticas del mismo nombre (por ejemplo, strict y targeted).

Para más información sobre las políticas de SELinux y su configuración, consulte el Guía para escribir políticas SELinux de Red Hat.

21.2.3. Utilidades para SELinux

Los siguientes son algunos de los programas de utilidades usados más a menudo por SELinux

Consulte la página man asociada con estas utilidades para más información.

Para más información sobre todas las utilidades binarias disponibles, refiérase a los contenidos del paquete setools o policycoreutils, ejecutando rpm -ql <package-name>, donde <package-name> es el nombre del paquete específico.