Configurar permisos de archivos en DirectAdmin para seguridad
¿Sabías que configurar mal los permisos de archivos en tu hosting puede dejar tu web expuesta a ataques? En esta guía completa y fácil de seguir, aprenderás paso a paso cómo ajustar los permisos de archivos en DirectAdmin para proteger tu sitio. No necesitas ser un experto en servidores; aquí te lo explicamos de forma clara y práctica.
¿Por qué son importantes los permisos de archivos?
Los permisos de archivos definen quién puede leer, escribir o ejecutar un archivo en tu servidor. Si están mal configurados, cualquier persona (o un script malicioso) podría modificar tu página web, robar datos o incluso tomar el control de tu cuenta.
Ejemplo de un riesgo común: Si le das permisos de escritura a un archivo que no debería tenerlos, un atacante podría subir un script malicioso y ejecutarlo en tu servidor. Por eso, en seguridad archivos es clave aplicar el principio de "mínimo privilegio": solo dar los permisos necesarios para que funcione tu web.
Conceptos básicos: ¿Cómo funcionan los permisos en Linux?
En DirectAdmin (y en cualquier servidor Linux), los permisos se representan con tres grupos de tres letras:
- Usuario (u): el dueño del archivo (normalmente tu cuenta de hosting).
- Grupo (g): un grupo de usuarios (por ejemplo, el grupo del servidor web).
- Otros (o): cualquier otro usuario del sistema.
Cada grupo puede tener tres permisos:
- r (lectura): ver el contenido.
- w (escritura): modificar o eliminar.
- x (ejecución): ejecutar el archivo (para scripts o programas).
Ejemplo práctico: Un archivo con permisos 644 significa: dueño puede leer y escribir (6), grupo puede solo leer (4), otros solo leer (4). Esto es seguro para la mayoría de archivos de tu web.
Herramientas para configurar permisos en DirectAdmin
1. El Administrador de Archivos (File Manager)
Es la forma más visual y fácil para principiantes. Accede desde tu panel DirectAdmin:
- Inicia sesión en tu cuenta de DirectAdmin.
- Ve a Administrador de Archivos (suele estar en la sección "Archivos" o "Files").
- Selecciona la carpeta que quieras modificar (por ejemplo,
public_html). - Marca los archivos o carpetas (puedes seleccionar varios con Ctrl+clic).
- Haz clic en Permisos (o "Change Permissions").
- Verás una ventana con casillas para marcar permisos. Usa los valores numéricos que te explicamos más abajo.
Ventaja: No necesitas comandos. Desventaja: Para muchos archivos, puede ser tedioso.
2. La terminal (SSH) – Para usuarios avanzados
Si tienes acceso SSH, puedes usar comandos como chmod y chown. Es más rápido para cambios masivos.
# Ejemplo: cambiar permisos de todos los archivos a 644
find /home/tu_usuario/public_html -type f -exec chmod 644 {} \;
# Ejemplo: cambiar permisos de todas las carpetas a 755
find /home/tu_usuario/public_html -type d -exec chmod 755 {} \;
[WARNING] Si no estás seguro, usa primero el Administrador de Archivos. Un error en SSH puede dejar tu web inaccesible.
Guía paso a paso para configurar permisos seguros
Sigue estos pasos para configurar permisos correctamente en DirectAdmin:
Paso 1: Identifica la estructura de tu sitio
Tu web suele estar en la carpeta public_html (o domains/tudominio.com/public_html). Dentro encontrarás:
- Archivos PHP, HTML, CSS, JS.
- Carpeta
wp-content(si usas WordPress). - Archivos de configuración como
wp-config.php.
Paso 2: Aplica permisos estándar seguros
Usa estos valores como regla general:
| Tipo de archivo | Permisos recomendados | Explicación |
|---|---|---|
| Archivos PHP, HTML, CSS, JS | 644 | Dueño escribe, resto solo lee. |
| Carpetas (directorios) | 755 | Dueño escribe y ejecuta, resto solo ejecuta (para navegar). |
| Archivos de configuración (wp-config.php, .htaccess) | 600 | Solo el dueño puede leer y escribir. |
| Archivos de log o caché | 644 o 755 (si son carpetas) | Depende de la aplicación. |
Paso 3: Protege archivos sensibles
Archivos como wp-config.php (en WordPress) contienen claves de bases de datos. Deben tener permisos 600 para que solo el dueño pueda leerlos.
- En el Administrador de Archivos, busca
wp-config.php. - Selecciona el archivo y haz clic en Permisos.
- Marca solo Lectura y escritura para el Usuario (dueño). Desmarca todo lo demás.
- Haz clic en Guardar.
[TIP] Si tu web deja de funcionar después de cambiar permisos, vuelve a 644. Algunos plugins necesitan permisos de escritura temporal.
Paso 4: Ajusta permisos de carpetas de subida
Las carpetas donde los usuarios suben archivos (como wp-content/uploads en WordPress) necesitan permisos de escritura para el servidor web. Normalmente 755 es suficiente. Si tu web requiere que el servidor escriba (por ejemplo, plugins de caché), puedes usar 777 temporalmente, pero es un riesgo.
[WARNING] Evita permisos 777 a menos que sea estrictamente necesario y solo por el tiempo mínimo. Un atacante podría subir archivos maliciosos.
Paso 5: Verifica la propiedad (dueño y grupo)
Además de los permisos, la propiedad del archivo debe ser correcta. En DirectAdmin, el dueño suele ser tu usuario de hosting y el grupo también. Si ves que algún archivo pertenece a otro usuario (como root), puede dar problemas.
- Ve a Administrador de Archivos.
- Haz clic derecho en un archivo y selecciona Propiedades.
- Verifica que el Dueño y Grupo sean tu nombre de usuario.
Errores comunes y cómo solucionarlos
Error 1: "Permiso denegado" al subir archivos
Causa: La carpeta de destino tiene permisos demasiado restrictivos (por ejemplo, 700).
Solución: Cambia los permisos de la carpeta a 755.
Error 2: "Error 500" después de cambiar permisos
Causa: Archivos PHP con permisos incorrectos (por ejemplo, 600 en lugar de 644).
Solución: Vuelve a poner 644 en todos los archivos PHP.
Error 3: No puedo instalar plugins o temas en WordPress
Causa: La carpeta wp-content o sus subcarpetas tienen permisos 755 pero el dueño no es el usuario del servidor web.
Solución: Asegúrate de que el dueño sea tu usuario y el grupo sea www-data (o el grupo del servidor web). Puedes pedir a tu soporte que lo ajuste.
FAQ: Preguntas frecuentes sobre permisos en DirectAdmin
1. ¿Qué permisos debe tener la carpeta public_html?
Respuesta: 755 es el estándar. El dueño puede escribir y ejecutar, los demás solo ejecutar (para navegar). Si pones 750, el servidor web no podrá acceder a los archivos.
2. ¿Cómo cambio los permisos de todos los archivos de una carpeta a la vez?
Respuesta: En el Administrador de Archivos, selecciona la carpeta raíz, haz clic en Permisos y marca "Aplicar a todos los archivos y subcarpetas". O usa SSH con el comando chmod -R 755 carpeta.
3. ¿Es seguro usar permisos 777?
Respuesta: Solo en casos muy concretos y temporales (por ejemplo, al instalar un plugin que necesita escribir en una carpeta). Después, vuelve a 755. 777 es una puerta abierta para atacantes.
4. ¿Qué hago si mi web usa Syspanel (HestiaCP)?
Respuesta: Si tu hosting usa Syspanel (antes HestiaCP), el proceso es similar. Accede al panel por el puerto 2106 (ejemplo: tudominio.com:2106). En el Administrador de Archivos de Syspanel, también puedes cambiar permisos de forma visual. Las reglas de seguridad son las mismas.
5. ¿Los permisos afectan al SEO?
Respuesta: Indirectamente, sí. Si los permisos están mal configurados, el servidor web no podrá leer tus archivos y tu web mostrará errores (404, 500). Los motores de búsqueda penalizan sitios con errores frecuentes. Además, si un atacante modifica tu web gracias a permisos inseguros, puede inyectar malware que dañe tu posicionamiento.
Conclusión: Mantén tus archivos seguros con permisos correctos
Configurar los permisos archivos en DirectAdmin es una de las tareas más importantes para la seguridad archivos de tu sitio. No te compliques: usa 644 para archivos y 755 para carpetas, protege archivos sensibles con 600 y evita a toda costa los permisos 777.
Recuerda: Si usas Syspanel (HestiaCP), el acceso es por el puerto 2106 y el proceso es idéntico. La clave está en aplicar el mínimo privilegio posible.
¿Tienes dudas? Pregunta en los comentarios. ¡Tu web te lo agradecerá!
