—¡Aló, soporte técnico!
—¡$#%&%/$!...

—¡#%&#)*!...
—¡Listo! ya está arreglado, que tengas un buen día.

miércoles, 26 de febrero de 2014

Sistema de archivos en Linux (4ta. Parte)


En la parte anterior revisamos pertenencia y permisología de los archivos.

En esta parte culminaremos esta breve introducción al sistema de archivos en Linux explicando los permisos especiales.

Además de la permisología tradicional ya vista en la parte anterior, existen tres (3) tipos adicionales de permisos: Set User ID (SUID), Set Group ID (SGID) y el Sticky Bit.


El SUID aplica solo a archivos ejecutables, si bien cuando lo aplicas a cualquier archivo este en su permisología indica que lo tiene, si ese archivo no es ejecutable no tiene mayor implicación.

Esta permisología indica que el archivo al momento de ejecutarse lo hará con los privilegios del dueño del programa y no con el usuario que lo está ejecutando. 

chmod u+s /home/mahernandezg/miscomandos/miejecutable

El SGID aplica a archivos ejecutables y directorios. 

Cuando se ejecuta un programa con esta permisología, este se ejecutará con los privilegios del grupo dueño del archivo y no con el grupo del usuario ejecutor.

chmod g+s /home/mahernandezg/miscomandos/miejecutable

Cuando se ejecuta sobre un directorio se indica que todo archivo creado (en el futuro) dentro de ese directorio tendrá como grupo dueño el mismo que el del directorio padre, incluso si se crean subdirectorios estos también tendrán el SGID habilitado.

chmod g+s /home/mahernandezg/miscomandos

Estas dos permisologías deben de evitarse en lo máximo posible dado que los hackers suelen usarlo para poder explotar las vulnerabilidades del sistema a través de ellos.

El Sticky Bit aplica solo a directorios, si bien cuando lo aplicas a cualquier archivo este en su permisología indica que lo tiene, si ese archivo no es un directorio no tiene mayor implicación. 

Los nuevos archivos creados dentro de estos directorios solo podrán ser eliminados por root o el usuario dueño del archivo, ningún otro usuario podrá eliminarlo incluso si tienen permiso de escritura/modificación sobre el archivo.

chmod o+t /home/mahernandezg/midirectorioseguro

En la parte anterior observamos que con el chmod podemos cambiar la permisología especial de un archivo de forma simbólica. Cuando realizamos los cambios tradicionales se usa tres (3) dígitos, sin embargo si requerimos cambiar los permisos especiales se le agrega al inicio el dígito octal para la permisología especial. De forma simbólica ya vimos que para grupo y usuario: "g" y "u" respectivamente para el SUID y SGID.  Se usa la clave "s" y para el sticky bit con la combinación "o" de otros se usa la clave "t".

Para calcular el valor octal se tomará la siguiente formulación: SUID=2^2, SGID=2^1 y Sticky Bit=2^0.

La ubicación de estos dentro de la permisología del archivo se observará de la siguiente manera:

0 = nada
1 = --- --- --t sticky bit
2 = --- --s --- sgid
3 = --- --s --t sticky bit + sgid
4 = --s --- --- suid
5 = --s --- --t sticky bit + suid
6 = --s --s --- sgid + suid
7 = --s --s --t sticky bit + sgid + suid

Este comando agregará el sticky bit al directorio
chmod 1644 /home/mahernandezg/midirectorioseguro




Las permisologías especiales las observes algunas veces en mayúscula y otras veces en minúscula. El significado de esto es el siguiente. Cuando la permisología especial se muestra en mayúscula S o T significa que la permisología estándar para el valor ahí mencionado no está presente, es decir tiene un -. Cuando la permisología especial esta en minúscula significa que el valor para la permisología tradicional está presente. Es decir tiene una x.

Fin de sistemas de archivos.

No hay comentarios: