¿Qué son los permisos en Linux?
Los permisos son una parte importante del sistema operativo Linux. Si no son correctamente administrados, usuarios con malintencionados podrían realizar cambios y alteraciones sobre los archivos.
¿Cómo ver los permisos asignados a los archivos en Linux?
Para visualizar los permisos de los archivos podemos utilizar el comando ls.
$ ls -l
.
.
-rw-r--r-- 1 luis luis 393 Dec 6 20:58 config.txt
drwxr-xr-x 15 luis luis 4096 Feb 20 22:58 content
En la primer columna podemos ver los permisos de los directorios, para la siguiente línea drwxr-xr-x vamos a desglosar el significado de cada uno
Archivos vs directorios
- Tipo de archivo
- Para el config.txt es un signo de menos - indica que esto es un archivo.
- Para el directorio content el caractér d indica que estamos listando un directorio
Ademas de - y b podremos llegar a toparnos con
- b (block device) que representa un dispositivos como discos duros y cdroms
- c (character device) que representan teclados, monitores, mouse, y otros periféricos.
Permisos en archivos y directorios
Existen dos formas de desplegar los permisos, de forma simbólica y explicita.
Permisos simbólicos
Vamos a analizar los tipos de permisos de un archivo/directorio de Linux del mas restrictivo al mas permisivo de ellos.
- Sin permiso de ningún tipo (-)
- Esto quiere decir que no tenemos permiso alguno sobre el archivo/directorio.
- Permiso de lectura (r)
- Quiere decir que podemos leer el archivo/directorio
- Permiso de escritura (w)
- Podemos escribir, modificar e incluso eliminar el archivo/directorio.
- Permiso de ejecución (x)
- Este permiso nos permite ejecutar el archivo, esto se refiere a que contiene instrucciones que realizan operaciones. Esto es utilizado cuando los archivos son programas, binarios o scripts. En el caso de los directorio indica que podemos usar el comando cd para entrar a dicho directorio.
Distribución de los permisos
Retomando el ejemplo del directorio content.
- Permisos de usuario
- Los siguientes 3 caracteres rwx indican los permisos que el dueño del archivo tiene (luis).
- Permisos del grupo
- Los siguientes 3 caracteres r-x indican los permisos del grupo a los que pertenece el usuario.
- Permisos de todos los usuarios
- Los siguientes 3 caracteres r-x indican los permisos del resto de los usuarios (usuarios en general) que no son ni el dueño ni el grupo.
Permisos en forma octal
En la forma octal cada uno de los permisos representa un número.
- Permiso de lectura (4)
- Permiso de escritura (2)
- Permiso de ejecución (1)
Es posible combinar estos tres permisos en la forma octal para cada una de las columnas (dueño, grupo y resto de usuarios). Retomando el ejemplo del directorio content.
- Para el dueño del archivo rwx sumaríamos 4 + 2 + 1 = 7.
- Para el grupo al que pertenece el archivo r-x sumaríamos 4 + 0 + 1 = 5.
- Para el el resto de los usuarios r-x sumaríamos 4 + 0 + 1 = 5.
Tenemos entonces que si unimos cada número tenemos los permisos 755.