Ir al contenido principal

🔐 Cómo configurar permisos adecuados para archivos y directorios

Actualizado hace más de 3 semanas

✅ ¿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 {} \; → Aplica chmod 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 {} \; → Aplica chmod 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

d

Tipo de archivo

d indica un directorio (si fuera -, sería un archivo).

rwx

Permisos del usuario (dueño)

El dueño puede leer (r), escribir (w) y ejecutar (x).

rwx

Permisos del grupo

Los miembros del grupo pueden leer, escribir y ejecutar.

rwx

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. 🚀

¿Ha quedado contestada tu pregunta?