LinuxParty
Implementar Listas de Control de Acceso
En este artículo vamos a aprender que son las ACL y como implementarlas de una forma sencilla. Conoceremos sus comandos, posibilidades y usos.
Notas del autor:
- Agradeceré infinitamente vuestro apoyo en www.facebook.com/4adminsys
- Para ampliar los conocimientos podéis pasaros por www.nebul4ck.wordpress.com
Comandos ACL
Los comandos que usaremos para crear, modificar, eliminar o consultar las ACL son:
setfacl : Crea una lista de acceso para un determinado directorio o archivo.
getfacl: Consulta las propiedades de una ACL
Ejemplo práctico
IMPORTANTE: Antes de crear una lista de acceso, por ejemplo del directorio '/home/usuarios/sistemas' es conveniente realizar un respaldo de los permisos existentes, para que en caso de que queramos anular la ACL en un futuro, podamos usar este backup
Crear un backup de los permisos para '/home/usuarios/sistemas'
$ getfacl -R /home/usuarios/sistemas > /home/usuarios/Desktop/persistemas.bak
Restaurar los permisos de un directorio en caso de que apliquemos una ACL errónea
$ setfacl --restore=permsistemas.bak
Con el backup realizado, procederemos a implementar la ACL. Lo primero será dejar 'limpio' el directorio, es decir, anularemos otras posibles listas de acceso que este pudiese tener o incluso si tuviese una ACL por defecto. Esto lo haremos con el siguiente comando:
$ sudo setfacl -b -k -R /home/usuarios/sistemas
-b : Eliminamos la posible ACL que ya pudiese tener el directorio
-k : Eliminamos la posible ACL default que pudiese tener el directorio
-R : Aplicamos los cambios de forma recursiva
Ahora con el directorio limpito vamos a crear la ACL, acción que podremos realizar mediante el uso de dos parámetros: 's' o 'm'. Si quisiéramos crear una ACL eliminando una ya existente usariamos 's', si por el contrario queremos modificar una ACL o crearla si no existe usaremos 'm'. Nosotros usaremos 'm' ya que antes hemos eliminado todo lo relacionado con ACL en el directorio.
$ sudo setfacl -R -m g:sistemas:rw
Aquí igualmente hemos aplicado de forma recursiva (-R) el comando. Vamos a desglosar la cadena 'g:sistemas:rw' para ver que significado tiene cada uno de sus campos.
- Indicar si se trata de una ACL de usuario (u) o de grupo (g): En nuestro caso, de grupo
- El segundo campo es el nombre del grupo (podemos pasar el GID igualmente): sistemas
- El tercer y ultimo campo son los permisos de la ACL, podemos pasar en valor octal como con chmod: rw
Ahora vamos a darle al grupo de explotación permisos de lectura y acceso para el subdirectorio /home/usuarios/sistemas/prod pero además algo que no hemos hecho en la anterior ACL es crearla como default, esto implica que cada subdirectorio o archivo que se cree bajo ./prod heredará los permisos, muy útil para no tener que andar modificando la ACL continuamente (cada vez que se cree contenido). Usaremos la opción '-d'
$ sudo setfacl -d -R -m g:explotacion:rx /home/usuarios/sistemas/prod
Una vez terminadas la tarea de setear la ACL es conveniente usar el comando getfacl para comprobar como ha quedado todo:
$ sudo getfacl /home/usuarios/sistemas
# file: home/usuarios/sistemas
# owner: nebul4ck
# group: nebul4ck
user::rwx
group::r-x
group:sistemas:rw-
mask::rwx
other::r-x
Nota: Si hemos usado la opción '-d' (default) getfacl mostrará además estás entradas:
default:user::rwx
default:group::r-x
default:group:sistemas:rw-
default:mask::rwx
default:other::r-x
Donde:
- user: permisos para nebul4ck
- group: permisos del grupo nebul4ck
- group:sistemas: permisos rw- para el grupo sistemas (habrá tantas entradas como ACL hayamos asignado)
- mask: Esa entrada se puede manipular con setfacl y permite especificar el máximo de permisos que se pueden asignar en dicho fichero con las ACLs de usuario y grupo.
- Other: Es la entrada de los permisos generales o globales del modelo UGO (usergroupother).
Puede contratar ExtreHost para temas profesionales con sus servidores. No lo dude, contáctenos.

-
Energía.
- Un poco "de luz" en el histórico apagón del 28A: la mayor prueba de estrés para el sistema eléctrico ibérico
- BYD presenta nueva tecnología de supercarga para vehículos eléctricos con velocidades máximas de 1000 kW
- La Revolución Energética: Batería de Diamante de Carbono-14 con 5,700 Años de Duración
- El auge de la energía solar en EE.UU. continúa, pero se ve contrarrestado por el aumento del consumo de energía
- Enron.com anuncia pedidos anticipados de un reactor nuclear doméstico con forma de huevo
- Japón Descubre un Tesoro Submarino que Podría Redefinir su Economía y Liderazgo Global
- Las baterías de iones de litio de un solo cristal duran ocho veces más, según investigaciones
- Las nuevas barras de combustible nuclear resisten 1900º C ( 3452 °F ) durante 120 días de prueba, lo que aumenta las esperanzas de reactores más seguros
- El plan de Islandia de perforar un volcán para probar energía geotérmica supercargada y "sin límites"
- Este dispositivo genera electricidad con luz solar de noche
- La energía limpia debería volverse más barata y crecer aún más rápido
- Saurea: El Motor Solar Indestructible que Promete Transformar las Zonas Rurales del Mundo
- La energía verde de las baterías de almacenamiento está reemplazando a los combustibles fósiles en California y Texas
- Lanzamiento oficial del kernel 6.10 de Linux: esto es lo nuevo y lo mejorado
- China está instalando energías renovables equivalentes a cinco grandes plantas nucleares por semana