Guía completa de permisos en Linux: comprende y domina los derechos de acceso
Descubre cómo funcionan los permisos en Linux, desde la notación simbólica hasta los comandos esenciales. Una guía práctica para proteger tus archivos y directorios.
InSkillCoach
Guía completa de permisos en Linux
Los permisos en Linux son un concepto fundamental para la seguridad del sistema. Determinan quién puede acceder a archivos y directorios, modificarlos o ejecutarlos. Esta guía te explica en detalle cómo funcionan los permisos y cómo gestionarlos de forma eficaz.
Anatomía de los permisos en Linux
Cuando ejecutas el comando ls -l, ves una salida similar a esta:
drwxr-xr-x 2 shum staff 4096 Jan 16 22:04 mail
Analicemos cada elemento:
1. Tipo de archivo (primer carácter)
d: Directorio-: Archivo regularl: Enlace simbólicob: Archivo de dispositivo de bloquesc: Archivo de dispositivo de caracteres
2. Permisos (los 9 caracteres siguientes)
Los permisos se dividen en tres grupos de tres caracteres:
- User (propietario): los 3 primeros caracteres
- Group (grupo): los 3 caracteres centrales
- Others (otros): los 3 últimos caracteres
Para cada grupo, los permisos son:
r: permiso de lectura (Read)w: permiso de escritura (Write)x: permiso de ejecución (Execute)-: permiso no concedido
3. Número de enlaces
El número de enlaces físicos (hard links) al archivo
4. Propietario y grupo
- Propietario: el nombre del usuario propietario
- Grupo: el nombre del grupo propietario
5. Tamaño
El tamaño del archivo en bytes
6. Fecha y hora
La fecha y la hora de la última modificación
7. Nombre del archivo
El nombre del archivo o del directorio
Comprender los valores numéricos
Los permisos también pueden representarse en notación octal:
r= 4w= 2x= 1
Ejemplos habituales:
chmod 755=rwxr-xr-xchmod 644=rw-r--r--chmod 777=rwxrwxrwx(¡úsalo con precaución!)
Comandos esenciales
Modificar los permisos
# Notación simbólica
chmod u+x fichier # Añade la ejecución para el usuario
chmod g-w fichier # Quita la escritura para el grupo
chmod o=r fichier # Define solo lectura para los demás
# Notación numérica
chmod 755 fichier # rwxr-xr-x
chmod 644 fichier # rw-r--r--
Cambiar el propietario
# Cambiar el propietario
chown utilisateur fichier
# Cambiar el propietario y el grupo
chown utilisateur:groupe fichier
Cambiar el grupo
chgrp groupe fichier
Casos de uso prácticos
1. Proteger un script
# Hacer un script ejecutable solo para el propietario
chmod 700 script.sh
# Comprobar los permisos
ls -l script.sh
# Résultat : -rwx------ 1 user group 1234 Jan 21 10:00 script.sh
2. Configurar un directorio compartido
# Crear un directorio compartido para un grupo
mkdir /shared
chown :developers /shared
chmod 775 /shared
3. Proteger archivos sensibles
# Proteger un archivo de configuración
chmod 600 config.conf
# Proteger un directorio .ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
Buenas prácticas
-
Principio de mínimo privilegio
- Concede únicamente los permisos necesarios
- Evita usar 777 salvo en casos excepcionales
-
Seguridad de los directorios
- Los directorios necesitan el bit de ejecución (x) para poder atravesarse
- Usa 755 para los directorios públicos
- Usa 700 para los directorios privados
-
Archivos sensibles
- Usa 600 o 400 para los archivos de configuración
- Protege especialmente los archivos que contengan secretos
-
Gestión de grupos
- Crea grupos para gestionar los accesos
- Prefiere la gestión por grupo a los permisos “others”
Resolución de problemas habituales
Problema: “Permission Denied”
- Comprueba los permisos actuales:
ls -l fichier
- Comprueba el propietario y el grupo:
ls -l fichier | awk '{print $3, $4}'
- Comprueba a qué grupos perteneces:
groups
Problema: permisos recursivos
Para modificar los permisos de todos los archivos de un directorio:
# ¡Cuidado con el uso de -R!
chmod -R 755 directory/
Conclusión
Dominar los permisos de Linux es esencial para:
- Proteger tu sistema
- Resguardar los datos sensibles
- Gestionar eficazmente los accesos de los usuarios
- Prevenir modificaciones no autorizadas
Tómate el tiempo de entender y aplicar correctamente los permisos, ya que constituyen la primera línea de defensa de tu sistema Linux.
Recursos adicionales
Recuerda que la seguridad es un proceso continuo. Revisa tus permisos con regularidad y adáptalos a la evolución de tus necesidades.
Acerca de InSkillCoach
Experto en formación y tecnologías
Coach especializado en tecnologías avanzadas e IA, impulsado por GNeurone Inc.
Certificaciones:
- AWS Certified Solutions Architect – Professional
- Certificaciones de Google Cloud
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión