Está en la página 1de 9

Jos M Jara

Listas de control de acceso

( A C L)
Contenido

Windows: uso de cacls o acl. ..................................................................................................... 2

GNU/Linux: acl........................................................................................................................... 4

Listas de control de acceso


Windows: uso de cacls o acl.

Llamadas tambin ACLs (en ingls, Access Control List) o Listas de Control de Acceso. Partiendo de particiones NTFS, la finalidad restringir permisos de usuarios a objetos y que controla el sistema operativo. Todos estos permisos pueden ser modificados con el comando "cacls". Veamos cmo hacerlo: Los descriptores de seguridad no estn almacenados concretamente en ninguna carpeta. Lo estn en forma de metadatos en la MFT. Por tanto, directamente no podemos acceder a dichos descriptores ni editarlos (directamente). A lo mximo que podemos llegar es a verlos encriptados en el registro de Windows. Por ejemplo: iniciamos sesin con una cuenta de Administrador y nos vamos a Inicio > Ejecutar y escribimos regedit. Si navegamos hasta la clave que aparece en la imagen, veremos el valor Security. Ese es el descriptor de seguridad asociado al servicio "Registro de sucesos".

Podemos trabajar con ACL, mediante interfaz grfica, seleccionando cualquier archivo y click con el botn derecho del ratn en propiedades. Desde aqu llegamos a la pestaa

Listas de control de acceso


seguridad y as asignar los permisos oportunos Si lo hacemos con comandos:

Cuenta con una serie de modificadores, que son:

/T /E /C /G

Con este modificador podemos cambiar los permisos a todos los archivos de una carpeta y subcarpetas Con l podemos modificar la ACL sin cambiarla. Es, digamos, el modo silencioso. Si al modificar las ACLs encuentra algn error, lo omite y sigue modificndola Este es el comando para conceder permisos a un usuario en particular. Los permisos son los siguiente: N ningn permiso W permiso de escritura C permiso de cambiar F control total
Por ejemplo, para concederle al usuario Pedro permisos de escritura sobre el archivo ejemplo.exe , podramos hacerlo de la siguiente forma: cacls ejemplo.exe /g Pedro:w

/R /P /D

Este comando suspende los permisos a un usuario y acta conjuntamente con /E (ya que /E modifica la ACL pero no la cambia) Este comando sustituye los permisos del usuario Deniega a un usuario el acceso.
Por ejemplo, para denegar al usuario Pedro el acceso al archivo anterior, escribimos: cacls %userprofile%\escritorio\carpeta personal\ejemplo.exe /d Pedro

Existe una herramienta ms avanzada, y que es posible descargar, denomina XCACLS, y que muestra ms informacin. Es muy til para establecer permisos especiales en NTFS, as como para automatizar scripts por lnea de comandos. Se puede encontrar informacin muy til y detallada en el siguiente artculos: http://support.microsoft.com/kb/318754/es.

Listas de control de acceso


GNU/Linux: acl

Es habitual encontrar situaciones en el que el juego de pemisos UGO (User, Group, Others) no es suficiente. Casos en los que desearamos que ms de un usuario o ms de un grupo pudiesen tener acceso a un fichero, pero con permisos diferenciados. Con el modelo UGO esto no es posible, puesto que slo tenemos sitio para los permisos de un nico Usuario o un nico Grupo. Todo lo dems cae en el Other (el resto). Con las ACLs esto es sencillo. Para realizar esto es necesario preparar el sistema de ficheros. Se puede utilizar cualquier sistema de ficheros que soporte ACL (ext3 es ideal). Vamos a realizar la prctica creando un control acl sobre una nueva unidad. En este caso, tras instalar el nuevo disco duro en virtualvox, vamos a la consola con privilegios y mostramos las unidades con fdisk -l:

Podemos ver que la nueva unidad es la sdb de 171 MB. Procedemos a particionarla fdisk /dev/sdb Pasamos la m para ver los comandos disponibles. Nos saldrn varios, la n para nueva particin, p para particin primaria, le damos el nmero de particin (1 por ejemplo), para el inicio y fin de la particin damos intro a ambas opciones (suponiendo que ocupemos todo el espacio del disco para la particin). Una vez completado, sale de nuevo la m para el men, al cual ponemos w para escribir los cambios.

Listas de control de acceso

Si hacemos un fdisk ya aparecer nuestra nueva particin sdb1:

Nos queda formatear la unidad con mkfs.ext3 /dev/sdb1. Tendremos este resultado:

Listas de control de acceso

Ahora vamos a descargar el paquete acl en Debian con apt-get install acl. De esta forma ya podemos utilizar acl en nuestro linux. Ahora vamos a montar la unidad nueva en /etc/fstab y darle el control para acl:

Lgicamente es necesario crear la carpeta disco en /media y darle los privilegios 777. Observad como en la lnea aparece acl,errors... : esta es la clave. Para montar todos los dispositivos del fstab mount -a. Si todo fue bien, vamos a crear una nueva carpeta sobre discoque llamamos prueba. Despus damos un ls -l y vemos los permisos de la carpeta prueba.

Listas de control de acceso

Vamos a comprobar los permisos de acl con getfacl prueba:

Este comando nos informa del estado: propietario: root, grupo: root, usuario: tiene lectura escritura ejecucin , grupo: lectura ejecucin otros: lectura ejecucin

Vamos a establecer permisos utilizando acl con setfacl -R -m g::--- prueba. Con este comando quitamos todos los permisos al grupo. Con setfacl -R -m u::--- prueba a cualquier usuario y lo mismo a other "setfacl -R -m o::--- prueba". Despus visualizo los resultados:

Listas de control de acceso

Ahora vamos a darle permisos para que el usuario jose de este equipo tenga permisos de lectura escritura y ejecucin. Para ello "setfacl -R -m u:jose:rwx prueba". Despues hacemos un ls -l y un getfacl:

Podemos observar que al final de la situacin de permisos encontramos un +, lo que nos indica que acl est trabajando sobre este directorio. Ahora el usuario jose podra leer y escribir sobre este archivo. Veamos si puedo desde la interfaz grfica con este usuario:

Hemos podido hacerlo perfectamente, para este usuario concreto. Vamos a dejarle solo permisos de lectura sobre la carpeta pero no escritura "setfacl -R -m u:jose:r-x prueba":

Y el resultado: no me deja crear carpeta, pero s veo el contenido.

Listas de control de acceso

OBJETIVO CONSEGUIDO!!!. ACL tiene una buena utilidad.