SELinux
Desarrollado por | sombrero rojo |
---|---|
Última versión | 2,8 (24 de mayo de 2018) |
Versión avanzada | 2.9-rc2 (28 de febrero de 2019) |
Depositar | github.com/SELinuxProject/selinux |
Escrito en | VS |
Sistema de explotación | GNU / Linux |
Tipo | Módulo de seguridad de Linux ( d ) |
Licencia | Licencia pública general GNU |
Sitio web | selinuxproject.org |
Security-Enhanced Linux , abreviado SELinux , es un módulo de seguridad de Linux (LSM), que le permite definir una política decontrol de acceso obligatorio alos elementos de un sistema que se origina enLinux.
Su arquitectura disocia la aplicación de la política de acceso y su definición. En particular, permite clasificar las aplicaciones de un sistema en diferentes grupos, con niveles de acceso más precisos. También permite asignar un nivel de confidencialidad para el acceso a los objetos del sistema, como los descriptores de archivos , de acuerdo con un modelo de seguridad multinivel ( MLS for Multi level Security ). SELinux utiliza la campana LaPadula modelo complementado por la aplicación de Tipo (en) control de la integridad mecanismo , desarrollado por SCC (en) . Este es un software libre, partes del mismo con licencia GNU GPL y BSD .
La Agencia de Seguridad Nacional (o NSA), el servicio de inteligencia de los Estados Unidos , necesitaba software de Multi-Level Security ( MLS ) para mantener su información en secreto. La seguridad multinivel consiste en permitir que datos con diferentes niveles de clasificación coexistan en la misma máquina.
Stephen Smalley (en) , con el fin de reducir costos y dar acceso a este tipo de software al sector privado (bancos, servicios de salud, etc.) para protegerse de los piratas informáticos, decidió colocar este software bajo una licencia abierta . fuente . Comenzó con prototipos de investigación (prototipos DTMach, DTOS, proyecto FLASK ) hechos con SCC (en) y la Universidad de Utah en los Estados Unidos y los lanzó bajo la licencia GPL . El objetivo es la formación de una comunidad de investigadores, usuarios y empresas para mejorar el software y brindar soluciones avanzadas.
En la práctica, la base de la innovación es definir atributos extendidos en el sistema de archivos. Además de la noción de derechos de "lectura, escritura, ejecución" para un usuario determinado, SELinux define para cada archivo o proceso:
Los comandos del "sistema" se amplían para poder manipular estos objetos y definir políticas (reglas de acceso), y estados (nivel de confidencialidad). Por ejemplo, el comando " ls -Z " muestra dichos atributos extendidos, a saber:
ls -Z /etc/passwdda el siguiente resultado:
-rw-r--r-- root root system_u:object_r:etc_t /etc/passwdUna distribución de Linux puede entregarse con políticas predefinidas para todo el sistema (modo estricto) o parte de los servicios / aplicaciones (modo dirigido o dirigido ). Al establecer una serie de variables booleanas predefinidas, puede personalizar el comportamiento de las aplicaciones correspondientes.