Tengo un departamento de directorio compartido, tiene 3 subdirectorios por departamento: Cuenta, Ventas, Preventas y cada subdirectorio tiene su directorio de empleados del departamento en el mismo como acc1, acc2, acc3 / sale1, sales2 / ps1, ps2, ps3, ps4.
cómo cada empleado tiene un nombre de usuario y contraseña para acceder solo a su directorio sin ver ningún otro directorio.
Lo mismo que hice en el servidor de Windows.
cómo lo hago ?
Respuesta1
Primero, haga que cada empleado pertenezca al grupo de departamentos, es decir, acc1 pertenece a Cuenta y ps3 pertenece a Preventas. Luego, a nivel de departamento, haga que cada subdirectorio bajo Departamento tenga su ID de grupo igual al grupo de departamento respectivo, con acceso de lectura+ejecución a nivel de grupo y revoque todos los accesos de otros, para que se vea así cuando lo haga ls -la Departments
:
drwxr-x--- 5 root Account 4096 Jul 25 08:43 Account
drwxr-x--- 6 root Presales 4096 Jul 25 08:44 Presales
drwxr-x--- 4 root Sales 4096 Jul 25 08:44 Sales
Luego, haga que cada ID de usuario e ID de grupo del directorio de empleados sea el usuario, haga que el usuario tenga acceso completo al directorio y revoque todo acceso del grupo y otros, por ejemplo, para la Cuenta:
drwx------ 2 acc1 acc1 4096 Jul 25 08:43 acc1
drwx------ 2 acc2 acc2 4096 Jul 25 08:43 acc2
drwx------ 2 acc3 acc3 4096 Jul 25 08:43 acc3
chown
, chgrp
y chmod
son tus amigos si haces esto en la línea de comando. Ver por ejemplohttp://www.perlfect.com/articles/chmod.shtmlpara obtener detalles sobre su uso.
Este método funciona siempre que los permisos/membresías se puedan definir de manera jerárquica y uniforme, es decir, no hay necesidad de mezclar diferentes tipos y/o niveles de permisos en un nivel determinado (por ejemplo, algunos usuarios individuales tienen acceso de lectura y escritura, pero los usuarios sólo pertenecen a a un grupo solo tienen acceso de solo lectura); en esos casos, se necesitan ACL.
Respuesta2
Alternativamente, puede configurar FACLS para estos directorios. Sería el método más limpio, mejor y preferido si necesita listas de control de acceso más complicadas.
Utilice páginas de manual para:
hombre getfacl
hombre setfacl
El uso será algo como esto:
setfacl -md:g:"nombre de grupo":rwx /ruta/al/directorio/deseado
setfacl -mg:"nombre del grupo":rwx /ruta/al/directorio/deseado
La primera línea configura la regla que se aplicará automáticamente a los archivos/carpetas recién creados en el directorio. El segundo se aplica al mismo directorio de nivel superior donde se aplican, pero esto da acceso a ese directorio tal como ya existe.
***NOTA: las comillas alrededor del nombre del grupo indican que debe ingresar el nombre del grupo en su comando. no utilice las comillas reales al ejecutar el comando; desea que el nombre del grupo esté allí sin comillas.