Permisos

linux

los permisos de archivo son los permisos que contiene un archivo para el propietario, grupos, y otros, incluso nos dice que tipo de archivo es :

# esta cadena de digitos que representan los permisos es de 10 digitos en total

# al inicio de la cadena :
. o nada : archivo
d : directorio

el orden de los permisos debe ir asi :
rwx
primero r, luego w, y al final x, ese es el orden a seguir

# permisos
r : read
w : escribir
x : ejecutar # la capacidad de ejecutar en directorios es diferente, pues esta ahora se refiere a poder atravesar el directorio
- : el permiso no es existente para la posición en la que esta el guion

# ejemplos :

.rw-r--r--

# se divide facilmente en 3 partes

.rw- | r-- | r--
(p)    (g)    (o)

primera parte : permisos de propietario
segunda parte : permisos de grupos
ultima parte (tercera) : permisos de otros

las características de propietario y grupo podemos verlas con el ls -l, ejemplo :

  • en este ejemplo podemos ver que el propietario es root en la carpeta numero uno

  • en los otros ejemplos es el usuario user y el grupo de usuario user

Asignación de permisos :

  • ahora que vimos esto podemos entender mejor como asignar los permisos :

agregando usuarios :

Notación Octal de permisos :

  • partimos el permiso en 3, ahora lo vamos a convertir a binario y luego a decimal, donde haya una letra ponemos uno, y donde no haya permisos, ósea el guion, ponemos cero

  • luego indicamos las posiciones del 0 al 2 como se ve ahí en rojo

  • procedimiento :

Sticky Bit :

El Sticky Bit o bit adhesivo es uno de los permisos especiales de acceso utilizado en ficheros y directorios del entorno Unix y derivados como GNU/Linux. Su objetivo es que solo el usuario creador pueda eliminar o renombrar un archivo en sistemas donde todos los usuarios tienen permisos de lectura y escritura. Además, su activación está representada con la letra T mayúscula en el listado de permisos de un directorio.

Originalmente, este permiso de sticky bit solía utilizarse en dispositivos con poca RAM sobre ficheros ejecutables para indicarle al sistema operativo que debía mantener un determinado programa en SWAP para las siguientes ejecuciones, incluso si estas las realizaban otros usuarios. Sin embargo, debido a la actualización y mejora de los sistemas de almacenamiento, esta labor dejó de ser necesaria, por lo que, en la actualidad, las funciones de Sticky Bit están enfocadas en los directorios y es comúnmente ejecutado sobre ==/tmp y /var/tmp==.

Pertenece a los tres tipos de permisos especiales (Sticky Bit, Suid y Sgid) que son configurables en directorios o ficheros. A diferencia de los demás permiso de archivos, el bit de adhesión y los demás permisos de acceso especial no se corresponden con un número octal entre 000 y 777, como sucede con los permisos normales, sino que varían entre 0000 y 7777, siendo Sticky Bit el número 1000.

asignacion del sticky bit :

ejemplo :

Chattr y Lsattr :

permisos avanzados de los archivos en sistemas linux

El primer comando, lsattr permite listar los atributos asignados a los ficheros de un sistema de ficheros Linux, mientras que chattr permite modificar dichos atributos, los cuales que utilizamos como complemento al sistema de ACLs (chmod, chown,setfacl…) permitiendo un control más férreo sobre los archivos del filesystem.

uso :

https://programmerclick.com/article/5604675172/ # mas permisos

SUID :

  • permite ejecutar un archivo como si fueras el propietario

  • El permiso SUID permite que un archivo se ejecute como si del propietario se tratase, independientemente del usuario que lo ejecute, el archivo se ejecutará como el propietario. Ejemplo:

  • asignar los permisos SUID

SGID :

El permiso SGID está relacionado con los grupos, tiene dos funciones:

  • Si se establece en un archivo, permite que cualquier usuario ejecute el archivo como si fuese miembro del grupo al que pertenece el archivo.

  • Si se establece en un directorio, a cualquier archivo creado en el directorio se le asignará como grupo perteneciente, el grupo del directorio.

Capabilities :

  • En Linux, las capabilities (capacidades) son un mecanismo de control de permisos que permite asignar permisos más granulares a procesos específicos, sin tener que darles privilegios completos de root (superusuario). En lugar de otorgar todos los privilegios de root, un proceso puede recibir solo las capacidades necesarias para realizar una tarea específica, mejorando así la seguridad del sistema.

Last updated