Resumen
Examinamos el principio de funcionamiento fundamental de umask, el cual determina los permisos de acceso predeterminados para archivos y directorios recién creados en entornos Linux. Recopilamos técnicas de administración esenciales que se pueden aplicar de inmediato en la práctica, desde el método de cálculo octal hasta el control de permisos en directorios de trabajo colaborativo y la configuración permanente a través de perfiles de shell.
1. Comprobación del umask actual y prueba de permisos de creación predeterminados para archivos y directorios
Ejecute el comando mkdir -p /tmp/umask-lab && cd /tmp/umask-lab para crear y acceder a un directorio de práctica dedicado a la configuración de umask y a las pruebas de permisos.

El comando umask comprueba y define el valor de máscara que restringe los permisos de acceso predeterminados para los archivos y directorios recién creados.
El resultado de la ejecución muestra que el valor de máscara predeterminado para la sesión actual está configurado en 0022.
⚙️ [Opciones principales]
-S : Muestra los permisos permitidos de forma intuitiva en formato simbólico (u=rwx,g=rx,o=rx) en lugar de valores numéricos.-p : Imprime la configuración de máscara actual en formato octal reutilizable como comando umask.

Al ejecutar el comando umask -S, podrá verificar en modo simbólico intuitivo los permisos reales concedidos al usuario (u), al grupo (g) y a otros usuarios (o) según la máscara aplicada actualmente.
La salida u=rwx,g=rx,o=rx indica que, por defecto, se permiten permisos de lectura, escritura y ejecución para el propietario, y permisos de lectura y ejecución para el grupo y otros usuarios.

Con el valor de umask actual (0022) aplicado, ejecute el comando touch default_file.txt && mkdir default_dir para crear un nuevo archivo y directorio con el fin de verificar los permisos de creación predeterminados.

Ejecute el comando ls -ld default_file.txt default_dir para comprobar los permisos reales del archivo y del directorio creados.
Se puede observar que el directorio se crea con 755 (drwxr-xr-x) tras restar la máscara 022 del permiso máximo predeterminado 777, mientras que el archivo regular se crea con 644 (-rw-r--r--) tras restar la máscara 022 del permiso base máximo 666 (que excluye el permiso de ejecución).

2. Práctica de control de permisos en nuevos archivos mediante la modificación temporal del valor de umask
Ejecute el comando mkdir -p /tmp/umask-lab && cd /tmp/umask-lab para verificar y desplazarse al espacio de trabajo dedicado donde se llevará a cabo la práctica.

Ejecute el comando umask 027 para cambiar temporalmente el valor de máscara de la sesión actual a 027.
Esta configuración restringe los permisos de escritura para los usuarios del grupo y bloquea por completo los permisos de lectura, escritura y ejecución para otros usuarios (el resto de usuarios).

Para comprobar si el valor de umask modificado (027) se aplica correctamente a los elementos recién creados, ejecute el comando touch secure_file.txt && mkdir secure_dir para generar un archivo y un directorio de prueba.

Ejecute el comando ls -ld secure_file.txt secure_dir para comprobar los permisos reales del archivo y del directorio creados.
A través de la salida, podrá inspeccionar el estado detallado de los permisos y la información de propiedad del directorio y del archivo.

Una vez finalizadas las pruebas de control de permisos, ejecute el comando umask 022 para restablecer la configuración de máscara de la sesión a su estado estándar por defecto.

3. Configuración de umask en directorios compartidos para colaboración en equipo y entornos de servidores web
Ejecute el comando mkdir -p /tmp/umask-lab/shared && cd /tmp/umask-lab para crear un directorio compartido destinado a la colaboración en equipo y desplazarse a la ruta de trabajo.

Para facilitar el trabajo colaborativo sin problemas entre los miembros del grupo, ejecute el comando umask 002 para cambiar el valor de máscara de la sesión actual de modo que se mantengan los permisos de escritura del grupo.
Esta configuración solo restringe los permisos de escritura para otros usuarios sobre los permisos base, permitiendo tanto permisos de lectura como de escritura para el propietario y el grupo.

Con el valor de umask modificado (002) aplicado, ejecute el comando touch shared/team_doc.txt && mkdir shared/team_project para crear archivos y directorios destinados a la colaboración.

Ejecute el comando ls -ld shared/team_doc.txt shared/team_project para verificar los permisos reales del archivo y del directorio creados.
A través de la salida, podrá examinar el estado detallado de los permisos y la información de propiedad de cada elemento creado dentro del directorio compartido.

Una vez finalizadas las pruebas del entorno de colaboración, ejecute el comando umask 022 para restablecer la configuración de máscara de la sesión a su estado de seguridad estándar por defecto.

4. Métodos para aplicar umask de forma permanente a nivel del sistema y por usuario
Ejecute el comando grep -n 'UMASK' /etc/login.defs para verificar el valor de configuración predeterminado de umask en todo el sistema.
A través del resultado obtenido, se puede confirmar que UMASK 022 está definido como el valor predeterminado del sistema en la línea 151.

Ejecute el comando echo '# Custom user umask' >> ~/.bashrc para agregar un comentario que especifique que se trata de una configuración de usuario personalizada.

Ejecute el comando echo 'umask 027' >> ~/.bashrc para añadir la configuración y asegurarse de que los permisos personalizados se apliquen automáticamente cada vez que se inicie una nueva sesión de shell.

Ejecute el comando tail -n 2 ~/.bashrc para verificar que las líneas de configuración relacionadas con umask se hayan añadido correctamente al final del archivo ~/.bashrc.
A través del resultado, podrá comprobar que tanto el comentario como la configuración umask 027 quedaron correctamente reflejados en las dos últimas líneas del archivo.

Ejecute el comando bash -c 'source ~/.bashrc && umask' para aplicar los cambios del archivo ~/.bashrc modificado y confirmar el valor final de la máscara.
A través de la salida, podrá verificar el estado actual de la máscara aplicada en dicho entorno de shell.

Hasta aquí hemos revisado de forma concisa los conceptos fundamentales de umask y los métodos de configuración práctica para controlar automáticamente los permisos de creación de archivos y directorios en entornos Linux.
Aplique el valor de umask adecuado según su propio entorno operativo y políticas de seguridad para lograr una gestión del sistema segura y estructurada.