✅ ¿Por qué es importante configurar los permisos correctamente?
En un hosting compartido, todos los sitios web están alojados en el mismo servidor. Si los permisos de archivos y directorios no están configurados correctamente, otros usuarios en el mismo servidor podrían acceder o modificar archivos de tu web, lo que representa un gran riesgo de seguridad.
Un mal uso de los permisos puede permitir:
🔹 Acceso no autorizado a archivos sensibles 📂
🔹 Modificación de archivos por atacantes 🛑
🔹 Ejecución de código malicioso 🚨
Por eso, es crucial establecer los permisos adecuados tanto desde el Administrador de Archivos de cPanel como desde la Terminal (SSH).
🖥️ Configurar permisos desde el Administrador de Archivos en cPanel
1️⃣ Accede a cPanel y ve al apartado "Administrador de archivos".
2️⃣ Navega hasta el archivo o directorio que quieres modificar.
3️⃣ Haz clic derecho sobre el archivo o carpeta y selecciona "Cambiar permisos".
4️⃣ Ajusta los permisos según esta configuración recomendada:
Tipo | Permiso recomendado |
Archivos PHP | 644 |
Carpetas | 755 |
5️⃣ Guarda los cambios y verifica que tu sitio sigue funcionando correctamente.
🖥️ Configurar permisos desde la Terminal
Si tu hosting permite acceso a la Terminal, puedes modificar los permisos con comandos.
1️⃣ Abre la terminal desde el cPanel:
2️⃣ Cambia los permisos de archivos y carpetas con estos comandos:
🔹 Archivos PHP (644):
find /home/tu_usuario/public_html -type f -name "*.php" -exec chmod 644 {} \;
Desglose del comando:
find /home/tu_usuario/public_html
→ Busca dentro del directorio especificado.-type f
→ Solo selecciona archivos (f
significa "file").-name "*.php"
→ Filtra solo los archivos con la extensión.php
.-exec chmod 644 {} \;
→ Aplicachmod 644
a cada archivo encontrado.
Por lo que buscará todos los archivos .php
que estén en el directorio especificado y en los subdirectorios, y le cambiará los permisos a todos por los que hemos marcados.
🔹 Carpetas (755):
find /home/tu_usuario/public_html -type d -exec chmod 755 {} \;
Desglose del comando :
find /home/tu_usuario/public_html
→ Busca dentro de/home/tu_usuario/public_html
y sus subdirectorios.-type d
→ Filtra solo directorios (d
= directory).-exec chmod 755 {} \;
→ Aplicachmod 755
a cada directorio encontrado.{}
→ Representa cada directorio encontrado en la búsqueda.\;
→ Indica el fin del comando-exec
.
3️⃣ Verifica los cambios con:
ls -lah
A continuación, os mostraré un ejemplo práctico de los cambios realizados con estos comandos. Fijaros antes de ejecutar ningún comando, estos son los ficheros de mi wordpress y en la primera columna muestra los permisos que tienen actualmente.
Una vez ejecutados los comandos, al volver a mostrar el listado de los ficheros y directorios que hay en mi wordpress, podemos comparar en la captura de pantalla anterior que tanto el fichero "index.php" y la carpeta "wp-content" han cambiado los permisos que tenían establecidos por los correctos.
A continuación, te explico brevemente como funcionan los permisos en linux:
d rwx rwx rwx
Sección | Significado | Explicación |
| Tipo de archivo |
|
| Permisos del usuario (dueño) | El dueño puede leer (r), escribir (w) y ejecutar (x). |
| Permisos del grupo | Los miembros del grupo pueden leer, escribir y ejecutar. |
| Permisos de otros (todos) | Cualquier usuario del sistema puede leer, escribir y ejecutar. |
🔹 Explicación rápida:
Usuario = El propietario del archivo/directorio.
Grupo = Usuarios que pertenecen al mismo grupo que el dueño.
Otros = Todos los demás usuarios del sistema.
rwxrwxrwx
(777) → ⚠ Peligroso, ya que cualquiera puede modificarlo.
💡 Ejemplo:
drwxr-xr-x
(755) → Solo el dueño puede escribir, pero todos pueden leer y acceder.
📌 Conclusión
Configurar los permisos adecuados en archivos y directorios es una de las mejores prácticas de seguridad en un hosting compartido. Si no los ajustas correctamente, tu sitio podría estar en riesgo. Utiliza el Administrador de Archivos de cPanel o la Terminal SSH para proteger tu web de accesos no autorizados. 🚀