Comandos Útiles para Gestionar Permisos en Archivos, Directorios y Usuarios en Linux
Comandos Útiles para Gestionar Permisos en Archivos, Directorios y Usuarios en Linux
Hola, soy Diego Alejandro Botina, alias CodeWithBotina, un ingeniero en software en formación apasionado por el aprendizaje continuo y la aplicación de buenas prácticas en diversos campos de la tecnología.
En blog.codewithbotina.com, hoy compartimos con nuestra comunidad una guía técnica sobre comandos esenciales para manejar permisos en Linux. Entender los permisos es fundamental para la seguridad y el control de acceso en sistemas basados en Unix, como Ubuntu, CentOS o Fedora. Explicaremos cada comando, su función, y desglosaremos el sistema de permisos numéricos (octal) y simbólicos, incluyendo qué representa cada número o letra. Usaremos ejemplos prácticos para ilustrar su uso.
Entendiendo los Permisos en Linux
En Linux, cada archivo y directorio tiene permisos que definen quién puede leer (r - read), escribir (w - write) o ejecutar (x - execute). Estos se dividen en tres categorías:
- Usuario propietario (u - user): El creador del archivo o quien lo posee.
- Grupo (g - group): Usuarios en el mismo grupo que el propietario.
- Otros (o - others): Todos los demás usuarios.
Los permisos se representan en formato simbólico (e.g., rwxr-xr-x) o numérico (octal, e.g., 755). En octal:
- 4 = r (lectura)
- 2 = w (escritura)
- 1 = x (ejecución)
- 0 = sin permiso
Se combinan sumando: e.g., 7 = rwx (4+2+1), 5 = rx (4+1), 6 = rw (4+2). Un permiso completo como 755 significa: propietario rwx (7), grupo rx (5), otros rx (5).
Para ver permisos, usa ls -l:
-rw-r--r-- 1 usuario grupo 1024 feb 13 14:30 archivo.txt
Aquí: propietario rw-, grupo r--, otros r-- (equivalente a 644).
Comando chmod: Cambiar Permisos
chmod modifica los permisos de archivos o directorios. Sintaxis: chmod [opciones] modo archivo.
- Modo simbólico: e.g.,
chmod u+x archivo(agrega ejecución al usuario).- agrega, - quita, = establece.
- Modo octal: e.g.,
chmod 755 script.sh(propietario rwx, grupo y otros rx).
Ejemplo: Hacer un script ejecutable para todos:
chmod 755 script.sh
O recursivo en directorio (-R):
chmod -R 644 /ruta/directorio
Comando chown: Cambiar Propietario
chown cambia el usuario propietario y opcionalmente el grupo. Sintaxis: chown [opciones] usuario:grupo archivo.
Ejemplo: Cambiar propietario a "nuevo_usuario":
chown nuevo_usuario archivo.txt
Con grupo:
chown nuevo_usuario:nuevo_grupo archivo.txt
Recursivo:
chown -R usuario:grupo /directorio
Comando chgrp: Cambiar Grupo
chgrp cambia solo el grupo propietario. Sintaxis: chgrp grupo archivo.
Ejemplo:
chgrp desarrolladores proyecto/
Comando umask: Máscara de Permisos Predeterminados
umask define los permisos predeterminados al crear archivos/directorios, restando del valor base (666 para archivos, 777 para directorios).
Ejemplo: umask 022 (archivos creados con 644, directorios con 755).
Para ver: umask.
Para establecer temporal: umask 027 (más restrictivo: archivos 640, directorios 750).
Otros Comandos Relacionados
- adduser/addgroup: Crear usuarios/grupos.
adduser nuevo_usuario addgroup nuevo_grupo - usermod/groupmod: Modificar usuarios/grupos, e.g., agregar usuario a grupo:
usermod -aG grupo usuario - getfacl/setfacl: Para ACLs avanzadas (Access Control Lists), que permiten permisos más granulares.
Ejemplo: Asignar lectura a usuario específico:
setfacl -m u:otro_usuario:r archivo.txt
Mejores Prácticas
- Usa el principio de menor privilegio: Otorga solo permisos necesarios.
- Evita 777 (rwx para todos) por riesgos de seguridad.
- En servidores, configura umask en .bashrc para consistencia.
- Verifica con
ls -lostat archivodespués de cambios.
Conclusión
Estos comandos son herramientas esenciales para administrar permisos en Linux, asegurando seguridad y colaboración. Practícalos en un entorno controlado para dominarlos. Si tienes dudas o ejemplos adicionales, comenta abajo.
Nos leemos en el siguiente post.
Autor
Diego Alejandro Botina, alias CodeWithBotina, es un ingeniero en software en formación, apasionado por el aprendizaje continuo y la aplicación de buenas prácticas en diversos campos de la tecnología.
Referencias
Para este post, me basé en documentación oficial y guías técnicas. Aquí las principales:
- Guía de Permisos en Linux - DigitalOcean
- Comandos chown, chmod en Linux - Guru99
- Entendiendo umask - Linux Handbook
- Manual de Linux (man pages): chmod, chown, chgrp - Ubuntu Manpages
- ACLs en Linux - GeeksforGeeks
Cargando reacciones...
Comentarios (0)
Cargando sesión...
Aún no hay comentarios. Sé el primero en comentar.