12. Introducción a los permisos en Linux
https://docs.google.com/presentation/d/1-Q1Yacyi6M9s8dOW5Lg55RVbTbO4FA4_Aco3-Acof4s/edit?usp=sharing
¿Qué son los permisos en Linux?
Los permisos en Linux son un sistema de seguridad que controla el acceso a archivos y directorios. Determinan quién puede qué con cada elemento del sistema de archivos.
Los tres tipos de permisos básicos
1. Lectura (Read - r)
Archivos: Permite ver/leer el contenido
Directorios: Permite listar los archivos dentro
2. Escritura (Write - w)
Archivos: Permite modificar el contenido
Directorios: Permite crear/eliminar/renombrar archivos
3. Ejecución (Execute - x)
Archivos: Permite ejecutar el archivo como programa
Directorios: Permite acceder al directorio (cd)
Los tres grupos de usuarios
1. Propietario (Owner - u)
El usuario dueño del archivo/directorio
2. Grupo (Group - g)
Los usuarios que pertenecen al grupo del archivo
3. Otros (Others - o)
Todos los demás usuarios del sistema
Visualización de permisos
Al usar ls -l verás algo como:
-rwxr-xr-- 1 usuario grupo 1024 Dec 10 10:30 archivo.txt
Desglose:
-: Tipo de archivo (-=archivo,d=directorio,l=enlace)rwx: Permisos del propietario (lectura, escritura, ejecución)r-x: Permisos del grupo (lectura, ejecución)r--: Permisos de otros (solo lectura)
Notación numérica (octal)
Cada permiso tiene un valor numérico:
r(lectura) = 4w(escritura) = 2x(ejecución) = 1
Ejemplos:
rwx= 4+2+1 = 7rw-= 4+2+0 = 6r-x= 4+0+1 = 5r--= 4+0+0 = 4
Comandos para gestionar permisos
chmod - Cambiar permisos
Sintaxis numérica:
chmod 755 archivo.txt # rwxr-xr-x chmod 644 archivo.txt # rw-r--r-- chmod 700 script.sh # rwx------
Sintaxis simbólica:
chmod u+x script.sh # Agrega ejecución al propietario chmod g-w archivo.txt # Quita escritura al grupo chmod o=r archivo.txt # Otros solo lectura chmod a+x script.sh # Todos pueden ejecutar (a=all)
chown - Cambiar propietario/grupo
chown usuario archivo.txt # Cambia propietario chown usuario:grupo archivo.txt # Cambia ambos chown :grupo archivo.txt # Solo cambia grupo
chgrp - Cambiar solo el grupo
chgrp grupo archivo.txtPermisos especiales
1. SUID (Set User ID)
Se representa como
sen permisos de ejecución del propietarioEl archivo se ejecuta con los permisos del propietario
Ejemplo:
chmod u+s /usr/bin/passwd
2. SGID (Set Group ID)
Se representa como
sen permisos de ejecución del grupoPara directorios: los nuevos archivos heredan el grupo del directorio
Ejemplo:
chmod g+s /directorio_compartido
3. Sticky Bit
Se representa como
ten permisos de ejecución de otrosEn directorios: solo el propietario puede borrar sus archivos
Ejemplo:
chmod +t /tmp
Ejemplos prácticos
# Permisos típicos para: chmod 755 script.sh # Ejecutable: rwxr-xr-x chmod 644 documento.txt # Documento: rw-r--r-- chmod 700 ~/.ssh/ # Directorio privado: rwx------ chmod 600 ~/.ssh/id_rsa # Clave privada: rw------- # Directorio compartido en equipo: chmod 2770 /proyecto/ # SGID activado chown :equipo /proyecto/ # Grupo del equipo
Verificación de permisos
ls -l archivo.txt # Ver permisos detallados ls -ld directorio/ # Ver permisos de directorio stat archivo.txt # Información completa incluyendo numérica
d
Gestión de Permisos en Linux
🎯 Introducción
¡Bienvenidos a esta nueva clase! Después de haber aprendido varios comandos en nuestro entorno Linux, es momento de abordar un tema fundamental: la gestión de permisos. En este tutorial aprenderemos sobre los permisos en Linux y cómo manejarlos efectivamente.
📚 ¿Qué son los permisos en Linux?
Los permisos controlan el acceso a archivos y directorios, determinando quién puede hacer qué en el sistema.
🔍 Los 3 Tipos de Permisos Básicos
1. Read (r) - Lectura
Archivos: Permite leer el contenido
Directorios: Permite listar los archivos internos
Ejemplo práctico:
cat archivo.txt # Funciona SI tiene permiso de lectura
2. Write (w) - Escritura
Archivos: Permite modificar el contenido
Directorios: Permite crear/eliminar archivos
Ejemplo práctico:
vim archivo.txt # Puedes editar SI tienes permiso de escritura nano archivo.txt # Editores funcionan con este permiso
3. Execute (x) - Ejecución
Archivos: Permite ejecutar como programa
Directorios: Permite acceder al directorio
Ejemplo práctico:
./script.sh # Ejecuta SI tiene permiso de ejecución👥 Los 3 Grupos de Usuarios
1. Owner (Usuario Propietario)
El usuario que creó el archivo
Símbolo:
u(user)
2. Group (Grupo)
Usuarios que pertenecen al mismo grupo
Símbolo:
g(group)
3. Others (Otros)
Todos los demás usuarios del sistema
Símbolo:
o(others)
🎨 Visualizando Permisos
Comando para ver permisos:
ls -l
Ejemplo de salida:
-rw-rw-r-- 1 usuario grupo 1024 Dec 10 10:30 archivo.txt
Desglose de la notación:
- r w - r w - r - - │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └── Others: Solo lectura │ │ │ │ │ │ │ │ └── Group: Lectura y escritura │ │ │ │ │ │ │ └── Owner: Lectura y escritura │ │ │ │ │ │ └── Tipo de archivo
Tipos de archivo:
-= Archivo regulard= Directoriol= Enlace simbólico
🛠️ Ejemplos Prácticos en Terminal
Ejemplo 1: Ver permisos actuales
ls -l hola.txt # Salida: -rw-rw-r-- 1 usuario grupo 0 Dec 10 10:30 hola.txt
Interpretación:
Owner: Lectura (r) y escritura (w)
Group: Lectura (r) y escritura (w)
Others: Solo lectura (r)
Ejemplo 2: Permisos restrictivos
# Solo el propietario puede leer y escribir
-rw-------Ejemplo 3: Permisos de ejecución
# Solo el propietario puede ejecutar
-rwx------💡 Casos de Uso Comunes
Caso 1: Archivo de configuración seguro
# Solo el propietario puede leer/escribir
-rw-------Caso 2: Script ejecutable
# Propietario: todos los permisos # Grupo y otros: solo ejecución -rwx--x--x
Caso 3: Archivo compartido en equipo
# Todos pueden leer, solo grupo puede escribir
-rw-rw-r--⚠️ Puntos Importantes a Recordar
1. El usuario Root es especial
Root siempre tiene todos los permisos
No puedes quitarle permisos a Root
Es el "super usuario" del sistema
2. Verificación de acceso
# Si intentas acceder sin permisos: cat /swapfile # Error: Permission denied # Con privilegios de root: sudo cat /swapfile
3. Directorio home del usuario
ls -la ~/ # Verás que eres propietario de tus archivos # Tienes control total sobre tu directorio personal
🎓 Resumen Visual
Estructura de permisos:
[ Tipo ] [ Owner ] [ Group ] [ Others ]
- r w - r w - r - -Reglas mnemotécnicas:
r = Read (Leer)
w = Write (Escribir)
x = Execute (Ejecutar)
u = User (Usuario)
g = Group (Grupo)
o = Others (Otros)
🔄 Próximos Pasos
En la siguiente clase profundizaremos en:
Cómo cambiar permisos con
chmodModificar propietarios con
chownTrabajar con grupos usando
chgrpPermisos especiales (SUID, SGID, Sticky Bit)
❓ ¿Preguntas?
Si algo no quedó claro:
Vuelve a ver el video
Deja tus consultas en los comentarios
Menciona el número de clase para referencia
d
Comentarios
Publicar un comentario