Capítulo 24. Listas de control de acceso en Linux

Tabla de contenidos

24.1. Ventajas de las ACL
24.2. Definiciones
24.3. Gestión de las ACL
24.4. Compatibilidad de ACL con las aplicaciones
24.5. Información adicional

Resumen

El presente capítulo ofrece un breve resumen sobre las características y las funciones de las ACL (listas de control de acceso) de POSIX para sistemas de archivos de Linux. Las ACL se pueden emplear como una ampliación del concepto tradicional de permisos para los objetos de los sistemas de archivos. Con las ACL, los permisos se pueden definir de forma más flexible de lo que se entiende tradicionalmente por el concepto de permiso.

El término ACL de POSIX sugiere que se trata de un estándar verdadero de POSIX (interfaz de sistema operativo portátil). Los estándares de borrador POSIX 1003.1e y POSIX 1003.2c se han eliminado por diversas razones. En cualquier caso, las ACL que se encuentran en muchos sistemas que pertenecen a la familia UNIX se basan en dichos borradores, mientras que la implementación de las ACL de los sistemas de archivos, según se describe en el siguiente capítulo, siguen igualmente estos dos estándares. Ambos estándares pueden verse en http://wt.xpilot.org/publications/posix.1e/.

24.1. Ventajas de las ACL

Tradicionalmente, se definen tres conjuntos de permisos para cada objeto de un archivo de un sistema Linux. Dichos conjuntos incluye los permisos de lectura (r), escritura (w) y ejecución (x) para cada uno de los tres tipos de usuarios —el propietario del archivo, el grupo y otros usuarios—. Por lo demás, también es posible definir el bit definir id de usuario, el bit definir id de grupo y el bit de permanencia. Este concepto básico se adecúa a la perfección a la mayoría de los casos prácticos. Sin embargo, para situaciones más complejas o aplicaciones avanzadas, anteriormente los administradores del sistema tenían que hacer uso de una serie de trucos para sortear las limitaciones del concepto tradicional de permiso.

Las ACL se pueden emplear en situaciones que precisen una ampliación del concepto tradicional de permisos de archivos. Dichas listas permiten la asignación de permisos a usuarios individuales o a grupos, incluso si éstos no se corresponden con el propietario original ni con el grupo propietario. Las listas de control de acceso son una función del núcleo de Linux y en la actualidad son compatibles con ReiserFS, Ext2, Ext3, JFS y XFS. Gracias al empleo de las ACL, es posible desarrollar las situaciones más complicadas sin tener que implementar complejos modelos de permisos en el nivel de la aplicación.

Las ventajas que suponen las ACL son más que evidentes en situaciones como la sustitución de un servidor de Windows por uno de Linux. Algunas de las estaciones de trabajo conectadas pueden continuar ejecutándose en Windows incluso después de la migración. El sistema Linux ofrece servicios de archivos e impresión a los clientes de Windows mediante el empleo de Samba. Debido a que Samba es compatible con las listas de control de acceso, los permisos de usuarios se pueden configurar tanto en el servidor Linux como en Windows con una interfaz gráfica de usuario (únicamente con Windows NT y versiones posteriores). Con winbindd, por otra parte, es posible también asignar permisos a usuarios que solamente existen en un dominio de Windows y que no dispone de una cuenta en el servidor Linux.