Buenas tardes MV.
En donde trabajo se presenta el siguiente dilema en un NAS de la marca SYNOLOGY.
- Tengo 3 usuarios:
-- trollface -- pokerface -- fuckencio
Los 3 pertenecen al grupo:
- Confidencialidad.
- Los 3 pueden acceder a la carpeta compartida recien creada llamada
-- [CONFIDENCIAL]
Y de ella se ramifica de la siguiente manera:
[CONFIDENCIAL]
|- 1 - Empresa Ficticia
|- A - Contabilidad
|- B - RRSS
|- C - Gestión laboral
|- C.1 - Nominas
La idea que me han presentado es la siguiente:
Acceso completo L/E de <A><B> a trollface y pokerface y denegar L/E a fuckencio.
-- Obviamente funciona.Acceso completo L/E de <A><B><C> a trollface y pokerface y fuckencio queda denegado de todo excepto <C.1> que tiene permiso L/E.
-- Fuckencio no puede acceder porque hereda de forma global la denegacion <C>.
He probado hacer prueba de puntear uno a uno 3 archivos y carpetas actuales y funciona el acceso en trollface, pokerface y deniega a fuckencio. Haciendo posible la pasarela a C.1 si de fuckencio hereda la L/E de permitir de <1>.
Pero la cosa se jode si trollface y pokerface empiezan a crear contenido nuevo (archivos y carpetas) y este por defecto hereda del PERMITIR L/E de <1>. Y claro... No interesa que fuckencio pueda husmear ahi por obvias razones.
¿Hay manera de hacer lo que piden con alguna herramienta o servicio extra disponible el ecosistema de este NAS?
Porque vamos. Tengo un linux server donde metería un script tal que así:
#!/bin/bash
# Directorio principal.
DIR="/path/to/CONFIDENCIAL/Empresa Ficticia/C"
# Usuarios
USER1="trollface"
USER2="pokerface"
USER3="fuckencio"
# Setear permisos en archivos y carpetas existentes.
find "$DIR" -mindepth 1 -maxdepth 1 ! -name "C.1" -exec setfacl -m u:$USER1:rwx,u:$USER2:rwx,u:$USER3:--- {} \;
# Setear ACLs para futuros archicos y carpetas
setfacl -d -m u:$USER1:rwx,u:$USER2:rwx,u:$USER3:--- "$DIR"
Y así este otro para las ACLS de forma mas detallada:
#!/bin/bash
# Directorio principal
MAIN_DIR="/volume1/Empresa Ficticia/C"
# Usuarios
USER1="trollface"
USER2="pokerface"
USER3="fuckencio"
# Setear permisos a archivos y carpetas actuales
find "$MAIN_DIR" -type d ! -path "$MAIN_DIR/D" -exec setfacl -m u:$USER3:--- {} \;
find "$MAIN_DIR" -type f ! -path "$MAIN_DIR/D/*" -exec setfacl -m u:$USER3:--- {} \;
# Setear permisos predeterminados para archivos y carpetas futuros
setfacl -d -m u:$USER3:--- "$MAIN_DIR"
# Asegurar permisos correctos en carpeta D
setfacl -m u:$USER1:rwx,u:$USER2:rwx,u:$USER3:rwx "$MAIN_DIR/D"
setfacl -d -m u:$USER1:rwx,u:$USER2:rwx,u:$USER3:rwx "$MAIN_DIR/D"
Y me quedo mas ancho que largo . Pero debo de tragar y preguntaros si...
¿Algo asi se puede meter entre los entresijos de este mierdi NAS o ya propongo la clasica de hacer 2 subdirectorios en C y a tomar por culo?
Gracias de antebrazo