Posted by q3it on viernes, agosto 18, 2023 in Linux
Hoy voy a hablar sobre máscaras asociadas a ficheros o directorios. Nosotros sabemos que cuando creamos un fichero o directorio este se le asociaba un permiso por defecto, este permiso está asociado a la máscara que nosotros tengamos asociada a nuestro usuario.
Hay una máscara general pero nosotros podemos cambiarla por cada uno de nuestros usuarios. Para eso utilizaremos el comando umask sin ninguna opción y lo que hará es mostrar la máscara actual y, umask [número] lo que hará es cambiar la máscara, este número luego veremos qué valor tiene.
Si nosotros ejecutamos el comando umask en consola, veremos que nos muestra una cifra de cuatro dígitos. Si nos quedamos con los últimos tres, el primero está asociado al usuario, el segundo al grupo y el último a otros.
¿Y qué significa este número?.
Nosotros sabemos que los ficheros sino queremos ejecutarlos como permiso máximo va a ser 666. En cambio para los directorios como tenemos que ponerles permisos de ejecución para poder entrar, entonces vamos a tener permisos 777.
Nosotros lo único que tenemos que hacer es restar de la máscara a este número, entonces sabremos cuál es el permiso por defecto. Por ejemplo, para los ficheros nosotros tenemos 666 y le restamos 002, el permiso que nos va quedar es 664. Es decir el propietario tendrá permisos de lectura y escritura para usuarios y grupos, y solo lectura para otros.
Con los directorios hacemos lo mismos le restamos 002 a 777 y nos quedará 775, que significa que el propietario y los grupos tienen permisos de lectura, escritura y ejecución y, otros lectura y ejecución.
Si yo creo un directorio un fichero llamado Test. Veremos que los respectivos permisos son 664 para el fichero y 775 para el directorio.
Si nosotros queremos cambiar este comportamiento cuando creamos ficheros o directorios, entonces vamos a cambiar la máscara, por ejemplo, para tener más seguridad de que ningún usuario que no sea ni de nuestro grupo pueda leer los ficheros. Entonces podemos utilizar la máscara 027 es decir nosotros siempre podamos escribir en ficheros, para el grupo dejarles que puedan leerlo, pero para los demás les vamos a poner el número 7. Ahora vamos a ver que pasa cuando creamos el directorio y el fichero prueba.
Y vemos que los permisos para directorios ahora es 750 y para ficheros 640 y ningún permiso para otros. Como vemos es una forma muy simple de poner más seguridad en nuestros ficheros y directorios para que no todos los usuarios del sistema pudieran leerlos.
Un aspecto importante es que esta máscara sólo se aplica a ficheros que vayamos a crear después de cambiar con umask, si queremos cambiar los ficheros más antiguos tendremos que utilizar el comando chmod.