Estoy ejecutando un servidor Debian 7 y tengo el siguiente escenario (nombres de ejemplo)
Usuario:
- pablo:pablo
- Juan Pablo
Directorio: /home/paul/Directorio
- Archivo W (Propietario paul, Grupo paul, Derechos: 0770)
- Archivo X (Propietario paul, Grupo paul, Derechos: 0700)
- Archivo Y (Propietario paul, Grupo paul, Derechos: 0700)
- Archivo Z (Propietario john, Grupo paul, Derechos: 0770)
El usuario John debería poder eliminar el "Archivo Z" pero no el "Archivo X" o el "Archivo Y". También debería tener permiso para editar y eliminar el "Archivo W".
Breve: solo debería poder eliminar sus propios archivos, pero editarlos todos con el permiso correspondiente.
Estoy buscando una solución para utilizar el bit de eliminación del directorio en archivos específicos. La opción "chattr" no es una opción porque no se debe hacer nada con derechos de root.
¿Alguien tiene una idea?
Respuesta1
En el modelo de seguridad POSIX, para eliminar un archivo solo necesita acceso de escritura a su directorio de padres. Entonces, si la cuenta "john" tiene +w
derechos sobre /home/john/Directory, siempre podrá eliminar los archivos que contiene.
Pero una excepción es el modo "fijo"/"eliminación restringida". cuando estableces+t
en un directorio, la eliminación de archivos está restringidasoloal propietario del archivo o al propietario del directorio. (Por ejemplo, /tmp
funciona de esta manera). Entonces, sichmod +t
ychown root
el directorio, debería obtener el resultado esperado.