Permisos en directorios y subdirectorios | NAS | Synology Rackstation

Doest

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 🙂

Hooliganney

Porqué no usas A, B, C, D en lugar de A, B, C, C1?
Es decir que D (nóminas) esté al mismo nivel que A, B, C.

Usuarios habituales

  • Hooliganney
  • Doest