Dudas comunes sobre permisos de archivos en Linux (chmod 755, 644)
¡Hola! Soy tu técnico de soporte amigable. Seguro que alguna vez has visto esos números raros como 755 o 644 al lado de tus archivos en Linux, o al usar comandos como chmod. No te preocupes, es más sencillo de lo que parece. Vamos a despejar todas tus dudas sobre los permisos Linux chmod, especialmente los famosos chmod 755 644. Al final, serás todo un experto en permisos archivos Linux.
¿Qué son los permisos de archivos en Linux?
Imagina que tu servidor es una casa. Los archivos y carpetas son las habitaciones, y los usuarios son las personas que pueden entrar. Los permisos son las reglas que decides: quién puede abrir la puerta, quién puede amoblar la habitación y quién solo puede mirar desde afuera.
En Linux, cada archivo o carpeta tiene tres tipos de permisos básicos:
- Lectura (r): Ver el contenido del archivo o listar los archivos de una carpeta.
- Escritura (w): Modificar, crear o eliminar archivos.
- Ejecución (x): Ejecutar un archivo como programa, o entrar a una carpeta (pasar por ella).
Y estos permisos se asignan a tres grupos de usuarios:
- Propietario (u): El usuario dueño del archivo.
- Grupo (g): Un grupo de usuarios que comparten ciertos permisos.
- Otros (o): Todos los demás usuarios del sistema.
¿Cómo se representan los permisos? La notación simbólica
La forma más visual es con letras. Por ejemplo, -rwxr-xr-x para un archivo, o drwxr-xr-x para una carpeta (la d inicial indica directorio). Cada grupo de tres letras corresponde a propietario, grupo y otros.
Ejemplo práctico: -rw-r--r--
- Propietario:
rw-(lectura y escritura, sin ejecución). - Grupo:
r--(solo lectura). - Otros:
r--(solo lectura).
Esta notación es útil para entender, pero para cambiar permisos rápidamente usamos números.
¿Qué significan los números en chmod? (modo octal)
Aquí viene la magia. Cada permiso tiene un valor numérico:
- r (lectura) = 4
- w (escritura) = 2
- x (ejecución) = 1
Sumando estos valores obtenemos un número del 0 al 7 para cada grupo (propietario, grupo, otros). Luego los juntamos en tres dígitos.
Tabla rápida de combinaciones comunes:
| Número | Permisos | Significado |
|---|---|---|
| 0 | --- | Sin permisos |
| 1 | --x | Solo ejecución |
| 2 | -w- | Solo escritura |
| 3 | -wx | Escritura y ejecución |
| 4 | r-- | Solo lectura |
| 5 | r-x | Lectura y ejecución |
| 6 | rw- | Lectura y escritura |
| 7 | rwx | Todos los permisos |
Por ejemplo:
- 755 = 7 (propietario: rwx) + 5 (grupo: r-x) + 5 (otros: r-x) =
rwxr-xr-x - 644 = 6 (propietario: rw-) + 4 (grupo: r--) + 4 (otros: r--) =
rw-r--r--
Dudas comunes sobre chmod 755 y 644
¿Para qué sirve el 755?
El chmod 755 es el permiso estándar para carpetas y archivos ejecutables (como scripts PHP, programas, o páginas web). Dale a la carpeta el permiso 755 para que:
- Propietario: Pueda leer, escribir y ejecutar (entrar y modificar).
- Grupo y otros: Solo puedan leer y ejecutar (ver y entrar), pero no modificar.
Ejemplo típico: Una carpeta de tu sitio web como /public_html. Necesitas que el servidor web (que actúa como "otros") pueda leer y ejecutar archivos, pero no modificarlos por seguridad.
[TIP] Si tienes un sitio web en WordPress, las carpetas deben tener 755 y los archivos 644. Esto evita que usuarios malintencionados escriban código malicioso.
¿Para qué sirve el 644?
El chmod 644 es el permiso estándar para archivos normales (como imágenes, CSS, HTML, PHP no ejecutables, etc.). Significa:
- Propietario: Puede leer y escribir (modificar el archivo).
- Grupo y otros: Solo pueden leer (ver el contenido), no escribir ni ejecutar.
Ejemplo típico: Un archivo index.php o una imagen logo.png. El servidor web necesita leerlos para mostrarlos, pero no debería poder modificarlos.
[WARNING] Nunca uses 777 (permisos totales para todos) a menos que sea estrictamente temporal. Es un riesgo de seguridad enorme.
¿Cómo cambio los permisos con chmod?
El comando básico es:
chmod 755 nombre-de-carpeta
chmod 644 nombre-de-archivo
Para aplicarlo a todo dentro de una carpeta (recursivamente):
chmod -R 755 nombre-de-carpeta # para carpetas y archivos ejecutables
chmod -R 644 nombre-de-carpeta # para archivos normales (pero cuidado, también cambiaría carpetas)
[INFO] Para cambiar solo archivos dentro de una carpeta, usa
find. Por ejemplo:find /ruta -type f -exec chmod 644 {} \;cambia solo archivos. Para carpetas:find /ruta -type d -exec chmod 755 {} \;.
¿Cómo sé qué permisos tiene un archivo?
Usa el comando ls -l:
ls -l miarchivo.txt
Te mostrará algo como -rw-r--r--. La primera letra es el tipo (- archivo, d carpeta), luego los permisos.
Casos prácticos y errores frecuentes
"No puedo subir archivos a mi hosting" (error 403 o 500)
Esto suele pasar por permisos incorrectos. En paneles como Syspanel (accesible por el puerto 2106), al gestionar archivos desde el administrador de archivos, asegúrate de que las carpetas tengan 755 y los archivos 644. Si usas FTP, verifica que el propietario sea tu usuario.
Pasos para solucionarlo:
- Conéctate por FTP o al panel Syspanel (puerto 2106).
- Ve a la carpeta raíz de tu sitio (normalmente
public_html). - Selecciona todos los archivos y carpetas.
- Cambia permisos: carpetas a 755, archivos a 644 (algunos paneles lo hacen automáticamente).
"Mi script PHP no se ejecuta"
Si es un archivo PHP normal (no ejecutable como programa), con 644 basta. Pero si necesitas que se ejecute desde línea de comandos (como un cron job), debe tener permiso de ejecución: 755.
"¿Por qué no puedo borrar una carpeta?"
Para borrar una carpeta necesitas permiso de escritura en la carpeta padre, no en la carpeta misma. Además, la carpeta debe tener permiso de ejecución (x) para poder "atravesarla". Si tienes 755, no hay problema.
Preguntas frecuentes (FAQ)
¿Qué es chmod 777 y por qué no usarlo?
777 da permisos totales a todos (lectura, escritura, ejecución). Es como dejar la puerta de tu casa abierta de par en par. Cualquier usuario del sistema podría modificar tus archivos. Nunca lo uses en producción. Solo temporalmente en entornos de desarrollo controlados.
¿Cuál es la diferencia entre 755 y 644 para una carpeta?
Si pones 644 a una carpeta, el grupo y otros no podrán ejecutarla (atravesarla), por lo que no podrán acceder a su contenido. En cambio, con 755 sí pueden. Por eso las carpetas siempre deben tener 755.
¿Cómo afectan los permisos a la seguridad de mi web?
Permisos incorrectos pueden permitir a atacantes modificar archivos (si usas 777) o impedir que tu sitio funcione (si usas 644 en carpetas). La regla de oro: mínimos permisos necesarios. Para un sitio web típico: carpetas 755, archivos 644, y archivos sensibles (como configuración) incluso más restrictivos (600).
¿Qué pasa si cambio los permisos de un archivo del sistema?
¡Cuidado! Archivos del sistema (como /etc/passwd) tienen permisos específicos por seguridad. Cambiarlos puede romper el sistema. Siempre trabaja en tus propios archivos (usualmente en /home/tuusuario o public_html).
¿Cómo veo el propietario de un archivo?
Con ls -l ves el propietario y grupo. Si necesitas cambiar el propietario, usa chown: sudo chown usuario:grupo archivo. Esto es común cuando subes archivos por FTP y el propietario queda incorrecto.
Consejos finales para no perderte
- Para archivos de tu sitio web: Siempre 644 (excepto scripts ejecutables como CGI, que van 755).
- Para carpetas: Siempre 755.
- Para archivos de configuración sensibles (como
wp-config.phpen WordPress): 600 o 640, para que solo el propietario pueda leer. - Usa Syspanel (puerto 2106) para gestionar permisos visualmente si no te sientes cómodo con la terminal. Muchos paneles tienen opciones de "reparar permisos" automáticas.
[INFO] Si usas un panel como Syspanel, recuerda que el usuario del servidor web (www-data, apache, nginx) debe poder leer los archivos. Normalmente con 644 y 755 es suficiente.
Resumen rápido de comandos
| Acción | Comando |
|---|---|
| Ver permisos | ls -l |
| Cambiar permisos de archivo | chmod 644 archivo.txt |
| Cambiar permisos de carpeta | chmod 755 carpeta |
| Cambiar recursivamente (solo archivos) | find . -type f -exec chmod 644 {} \; |
| Cambiar recursivamente (solo carpetas) | find . -type d -exec chmod 755 {} \; |
| Cambiar propietario | sudo chown usuario:grupo archivo |
Espero que ahora tengas claras todas las dudas sobre permisos linux chmod, especialmente chmod 755 644. Recuerda: la clave está en dar solo los permisos necesarios para que tu sitio funcione, sin abrir puertas innecesarias. Si te surge otra duda, ¡no dudes en consultar a tu técnico de soporte amigable! Feliz hosting.
