Guía para configurar permisos de archivos correctos en WordPress y PrestaShop
¿Por qué son tan importantes los permisos de archivos en WordPress y PrestaShop?
Imagina que tu hosting es un gran edificio de oficinas. Cada archivo de tu web (como wp-config.php o config/settings.inc.php) es una habitación con una cerradura. Los permisos de archivos son las llaves que decides dar a cada persona: al dueño (tu usuario), al grupo (el servidor) y a los visitantes (el público).
Si le das la llave maestra a todo el mundo, cualquiera podría entrar, robar datos o romper muebles. Si no le das llave a nadie, ni tú podrás entrar para limpiar. Por eso, configurar los permisos correctos es el primer candado de seguridad que debes revisar.
En esta guía extensa y práctica, aprenderás a configurar los permisos de archivos en WordPress y PrestaShop desde cero, usando cPanel, Syspanel (antes conocido como HestiaCP, que se accede por el puerto 2106) o simplemente con comandos básicos. No necesitas ser un experto, solo seguir los pasos al pie de la letra.
¿Qué demonios es eso de chmod y los números 644, 755, 600?
Antes de tocar nada, vamos a traducir el lenguaje de los servidores. Cuando veas chmod, piensa en "cambiar cerraduras". Los números que le siguen son la combinación de llaves.
Cada archivo o carpeta tiene tres grupos de permisos:
- Usuario (u): Eres tú, el administrador.
- Grupo (g): El servidor web (Apache, Nginx, LiteSpeed).
- Público (o): Los visitantes de tu web.
Y cada grupo puede tener tres acciones:
- Lectura (r): Ver el contenido. Valor numérico: 4.
- Escritura (w): Modificar el contenido. Valor numérico: 2.
- Ejecución (x): Ejecutar el archivo (si es un script). Valor numérico: 1.
Entonces, cuando ves 644, significa:
- Usuario: 6 (4+2) = Leer y Escribir.
- Grupo: 4 = Solo Leer.
- Público: 4 = Solo Leer.
Resumen rápido para no volverte loco:
- 644: Archivos normales (lectura para todos, escritura solo para ti).
- 755: Carpetas normales (lectura y ejecución para todos, escritura solo para ti).
- 600: Archivos secretos (solo tú puedes leer y escribir, nadie más).
- 650: Archivos donde el grupo puede leer y escribir, pero el público no ve nada.
Guía definitiva para WordPress: Permisos de archivos y carpetas
WordPress es un sistema que necesita escribir en ciertos archivos para funcionar (subir imágenes, instalar plugins). Pero no todos necesitan el mismo nivel de acceso. Aquí tienes la configuración de oro.
### La regla de oro de WordPress
- Todas las carpetas deben tener permisos 755.
- Todos los archivos deben tener permisos 644.
- El archivo
wp-config.phpdebe tener permisos 600 (o 440 como mucho).
Esta regla permite que el servidor lea tus archivos para mostrarlos a los visitantes, pero impide que cualquiera los modifique.
### Excepciones importantes (el archivo wp-config.php)
Este es el archivo más valioso de tu instalación porque contiene las contraseñas de tu base de datos. Si alguien lo lee, tiene las llaves de todo tu castillo.
- Permiso recomendado:
600o400. Si tu hosting da problemas con600, usa440o640. - ¿Cómo cambiarlo en cPanel? Busca el archivo en el administrador de archivos, haz clic derecho y selecciona "Change Permissions" (Cambiar permisos). Escribe
600y guarda.
[WARNING] Si cambias
wp-config.phpa600y tu web da error 500, es porque tu servidor necesita que el grupo tenga algo de acceso. Prueba con640o644. Nunca uses777.
### Permisos para carpetas de subida (wp-content/uploads)
Esta carpeta es especial. Ahí se guardan las imágenes que subes. El servidor necesita escribir en ella para que tú puedas subir archivos desde el panel.
- Permiso correcto:
755(o775si tu hosting usa un usuario de grupo diferente al tuyo). - Nunca uses:
777. Esto permite que cualquier persona en el servidor (incluso webs hackeadas en el mismo hosting) pueda escribir virus en tu carpeta de uploads.
### ¿Cómo cambiar los permisos en cPanel paso a paso?
- Entra en cPanel de tu hosting.
- Busca la sección Archivos y haz clic en Administrador de archivos.
- Navega hasta la carpeta
public_html(o donde tengas instalado WordPress). - Para cambiar una carpeta entera: Selecciona la carpeta
wp-contenty haz clic en "Permisos" en la barra superior. - Escribe
755(o755para carpetas) y marca la casilla "Cambiar archivos y subdirectorios" si quieres aplicarlo a todo el interior. - Haz clic en Guardar.
[TIP] Si usas Syspanel (el panel que se accede por el puerto 2106), el proceso es idéntico. En el administrador de archivos, selecciona el archivo o carpeta, busca el botón "Permisos" o "Chmod" en la barra superior y escribe el número mágico.
### ¿Y si uso un plugin de caché o seguridad?
Plugins como Wordfence o W3 Total Cache a veces te piden permisos 777 para funcionar. No lo hagas. Si un plugin te pide 777, está mal diseñado. Busca en su soporte la alternativa segura, que suele ser 755 o 775.
Guía definitiva para PrestaShop: Permisos de archivos y carpetas
PrestaShop es un poco más exigente que WordPress, sobre todo en la carpeta var/cache y config. Vamos a ver la configuración segura y funcional.
### La regla de oro de PrestaShop
- Carpetas: Permisos 755.
- Archivos: Permisos 644.
- Excepción: Las carpetas
var/cache,var/logsyimg/tmpnecesitan permisos 775 (o incluso 755 si tu servidor usa el mismo usuario para todo). Esto permite que PrestaShop genere archivos de caché automáticamente.
### El archivo de configuración config/settings.inc.php
Al igual que wp-config.php, este archivo guarda las credenciales de tu base de datos.
- Permiso recomendado:
600o644. Si tu tienda funciona bien con644, déjalo así. Si quieres máxima seguridad, prueba600y verifica que la tienda siga operativa.
[INFO] No confundas
config/settings.inc.phpcon la carpetaconfig. La carpeta debe ser755, pero el archivo dentro debe ser644o600.
### El problema típico de PrestaShop: La carpeta var/cache
Si tu tienda da error de "No se puede escribir en la carpeta cache", no hagas un chmod 777 masivo.
- Ve a la carpeta
var/cache(ocacheen versiones antiguas). - Cambia el permiso de la carpeta a 775.
- Dentro de esa carpeta, hay subcarpetas como
devyprod. Cambia ambas a 775. - Si aun así falla, cambia los archivos dentro de esas carpetas a 664.
### ¿Cómo cambiar permisos en PrestaShop usando Syspanel?
Como mencionamos, Syspanel es el panel de control que muchos clientes usan (accesible en http://tudominio.com:2106). Es muy intuitivo:
- Entra en Syspanel y ve a Archivos -> Administrador de archivos.
- Navega hasta
public_htmly selecciona la carpetavar. - Haz clic en Permisos (o Chmod).
- Escribe
755para carpetas y644para archivos. - Si necesitas cambiar solo una subcarpeta, entra en
var/cachey repite el proceso.
[WARNING] Nunca, jamás, uses el comando
chmod -R 777 /en la raíz de tu hosting. Esto es el equivalente a abrir todas las puertas de par en par. Si un hacker entra, podrá modificar hasta el kernel del servidor.
Comparativa rápida: WordPress vs PrestaShop
| Elemento | WordPress | PrestaShop |
|---|---|---|
| Carpetas | 755 | 755 (excepto var/cache que es 775) |
| Archivos PHP | 644 | 644 |
| Archivo de configuración | wp-config.php = 600 | config/settings.inc.php = 644 |
| Carpetas de subida | wp-content/uploads = 755 | img = 755 |
| Carpeta de caché | No existe (plugins la gestionan) | var/cache = 775 |
Errores comunes y cómo solucionarlos (FAQ)
Aquí tienes las dudas más frecuentes que resolvemos en soporte.
### 1. "Mi web da error 500 después de cambiar los permisos"
Causa: Probablemente pusiste 600 en un archivo que el servidor necesita leer (como index.php).
Solución: Vuelve a poner el archivo a 644 y las carpetas a 755. Luego prueba de nuevo. Si el error persiste, revisa los logs de error en cPanel o Syspanel.
### 2. "¿Qué pasa si pongo 777 en todo para que funcione rápido?"
Respuesta corta: Te van a hackear.
Respuesta larga: 777 significa que cualquier usuario del servidor (incluidos los de otras webs) puede leer, escribir y ejecutar tus archivos. Es la puerta abierta perfecta para inyectar malware. Nunca uses 777.
### 3. "¿Cómo sé qué permisos tiene un archivo en cPanel?"
En el Administrador de archivos de cPanel, haz clic derecho sobre el archivo y selecciona "Permisos". Verás una ventana con casillas marcadas. Las casillas marcadas te dicen el permiso actual.
### 4. "Mi hosting usa LiteSpeed, ¿cambia algo?"
No. La lógica es la misma. LiteSpeed lee los archivos como Apache. Solo asegúrate de que el grupo de tu usuario sea el correcto (normalmente nobody o www-data). Si tienes dudas, contacta con tu proveedor.
### 5. "¿Puedo usar comandos SSH para hacer esto más rápido?"
Sí, es la forma más eficiente:
# Para WordPress
find /ruta/a/tu/wordpress -type d -exec chmod 755 {} \;
find /ruta/a/tu/wordpress -type f -exec chmod 644 {} \;
chmod 600 /ruta/a/tu/wordpress/wp-config.php
# Para PrestaShop
find /ruta/a/tu/prestashop -type d -exec chmod 755 {} \;
find /ruta/a/tu/prestashop -type f -exec chmod 644 {} \;
chmod 775 /ruta/a/tu/prestashop/var/cache
[TIP] Si usas Syspanel (puerto 2106), también tienes acceso a una terminal SSH integrada. Busca la sección "Terminal" o "Consola" en el menú lateral.
Guía de verificación final: Lista de comprobación
Antes de terminar, ejecuta esta lista para asegurarte de que todo está perfecto:
- Archivos PHP (
.php): Permisos644. - Carpetas (directorios): Permisos
755. - Archivo
wp-config.php(si tienes WordPress): Permisos600. - Archivo
settings.inc.php(si tienes PrestaShop): Permisos644. - Carpeta
uploads(WordPress): Permisos755. - Carpeta
var/cache(PrestaShop): Permisos775. - No existe ningún archivo o carpeta con permisos
777.
Conclusión: La seguridad de archivos es un hábito, no un evento
Configurar los permisos de archivos correctos en WordPress y PrestaShop no es un trámite de una sola vez. Es una rutina que debes revisar después de cada actualización importante, cambio de hosting o instalación de un plugin nuevo.
Recuerda la filosofía del principio de mínimo privilegio: dale a cada archivo solo el permiso que necesita para funcionar, ni uno más. Con esta guía, ya tienes el conocimiento para blindar tu web contra el 80% de los ataques básicos que intentan explotar archivos mal configurados.
Si te surge cualquier duda, abre un ticket con tu proveedor de hosting y menciona que ya has revisado los permisos. Te lo agradecerán porque habrás hecho el trabajo duro.
En resumen:
- 755 para carpetas.
- 644 para archivos.
- 600 para secretos.
- Nunca 777.
Tu web te lo agradecerá con velocidad y seguridad. ¡Manos a la obra!
