Está en la página 1de 2

Los permisos de los archivos en Linux/Unix se establecen mediante un número octal que permite

ajustar los permisos del usuario, el grupo y otros y que varía entre 000 y 777. Y que determinan
quién puede leer, escribir y/o ejecutar un fichero o directorio determinado.

Sin embargo, existen unos bits que nos ofrecen la posiblidad de tener unas medidas de protección
adicional ajustando permisos especiales sobre ficheros y directorios: El sticky bit, el bit SGID y el
bit SGUID.

Su representación en octal es la siguiente:

 Sticky bit --> 1000.


 Bit setgid --> 2000.
 Bit setuid --> 4000.
Cuando se lo asignamos a un directorio, conseguimos que los elementos (ficheros y/o directorios)
que haya en ese directorio sólo pueden ser renombrados o borrados por:

 El propietario del elemento contenido en el directorio.


 El propietario del directorio.
 El usuario root.
El sticky bit prevalece sobre los permisos normales y los elementos, lo que quiere decir que tan
sólo podrán renombrar o borrar los elementos los usuarios mencionados, aunque el resto de
usuarios tenga permisos de escritura.

Ejemplo:

# chmod 1755 /home/aulas

Si queremos comprobar, en nuestro sistema, qué ficheros o directorios tienen el sticky bit activado,
usaremos el comando find:

# find / -perm -1000 -exec ls -la {} \;

Bit suid.

El bit SUID activado sobre un fichero indica que todo aquél que ejecute el archivo va a tener,
durante la ejecución, los mismos privilegios que quién lo creó. Así que es importante usarlo lo
menos posible y con precaución. Si el administrador crea un fichero y activa el bit SUID, todo aquel
usuario que lo ejecute, dispondrá, hasta que el programa finalice, de un nivel de privilegio total
en el sistema.

El bit SUID o setuid se activa sobre un fichero añadiéndole 4000 a la representación octal de los
permisos del archivo y otorgándole además permiso de ejecución al propietario del mismo.

# chmod 4775 /home/prueba

También puede activarse usando el modo simbólico:

# chmod +s /home/prueba
Si hacemos:
#chmod u+s /home/prueba

Bit sgid.

Todo lo que acabamos de explicar con respecto al bit SUID es aplicable al bit SGID tan sólo que
aplicado a nivel de grupo del fichero en lugar de propietario.

En el caso del bit SGID, en lugar de trabajar con el EUID del propietario, todo usuario que ejecute
un programa al que se le ha activado el bit SGID, tendrá los privilegios del grupo al que pertenece
el archivo.

El bit SGID se activa sobre un fichero sumando 2000 a la representación octal del permiso del
fichero y dandole, además, permiso de ejecución a la terna de grupo.
Para ver si hemos activado el bit SGID veremos si, al hacer un ls -l, aparece s o S aparecerá en
lugar de la x en esta terna.

Si el fichero es un directorio y no un archivo plano, el bit SGID afecta a los ficheros y subdirectorios
que se creen en él. Y los ficheros y sudirectorios tendrán como grupo propietario al mismo que el
directorio al que se le ha aplicado el bit SGID, siempre que el proceso que los cree pertenezca a
dicho grupo.

También podría gustarte