Configurar permisos de archivos seguros en DirectAdmin
Introducción: ¿Por qué son importantes los permisos de archivos en DirectAdmin?
Si tienes un sitio web alojado en un servidor con DirectAdmin, una de las tareas más importantes para mantener tu proyecto seguro es configurar correctamente los permisos de archivos. Aunque pueda sonar técnico, es un concepto sencillo: los permisos definen quién puede leer, escribir o ejecutar cada archivo y carpeta de tu cuenta de hosting. Un error común es dejarlos demasiado abiertos (como 777), lo que permite que cualquier persona —incluyendo atacantes— pueda modificar o borrar tus archivos. En esta guía aprenderás, paso a paso, cómo configurar permisos seguros en DirectAdmin, entender qué significan los números (como 644 o 755) y evitar vulnerabilidades comunes.
¿Qué son los permisos de archivos en DirectAdmin?
En sistemas Linux (que es el que usa la mayoría de servidores con DirectAdmin), cada archivo y carpeta tiene tres niveles de permisos:
- Propietario (user): normalmente eres tú, el dueño de la cuenta.
- Grupo (group): un conjunto de usuarios, a menudo el grupo del desarrollador o del sistema.
- Otros (others): cualquier persona que acceda al servidor (incluyendo visitantes web).
Y tres tipos de acciones:
- Lectura (r): ver el contenido.
- Escritura (w): modificar o borrar.
- Ejecución (x): ejecutar si es un programa.
Los permisos se representan con números (octales):
- 4 = lectura
- 2 = escritura
- 1 = ejecución
Se suman para cada nivel. Por ejemplo:
- 644: propietario puede leer y escribir (4+2=6), grupo y otros solo leer (4).
- 755: propietario todo (4+2+1=7), grupo y otros leer y ejecutar (4+1=5).
[INFO] En DirectAdmin, la mayoría de archivos de tu sitio web deben tener permisos 644 (archivos) y 755 (carpetas). Los archivos ejecutables (como scripts PHP) pueden necesitar 755, pero nunca 777.
Paso 1: Acceder al administrador de archivos de DirectAdmin
Para cambiar permisos desde el panel, sigue estos pasos:
- Inicia sesión en tu panel de DirectAdmin (normalmente en
tudominio.com:2222). - Ve a la sección "Administrador de archivos" (File Manager). Está en el menú principal, a menudo bajo "Cuenta" o "Archivos".
- Se abrirá una ventana con la estructura de carpetas de tu cuenta. Verás
public_html(donde va tu sitio web) y otras carpetas comobackups,domains, etc.
[TIP] Si tienes varios dominios, cada uno tendrá su propia carpeta dentro de
domains. Allí encontraráspublic_htmlespecífico de cada sitio.
Paso 2: Cambiar permisos de un archivo o carpeta
- Dentro del administrador de archivos, navega hasta el archivo o carpeta que deseas modificar.
- Haz clic derecho sobre el elemento (o usa el menú de acciones) y selecciona "Cambiar permisos" o "Permissions".
- Se abrirá un cuadro con casillas de verificación para propietario, grupo y otros. También un campo numérico.
- Introduce el número (por ejemplo, 644 para archivos, 755 para carpetas) y haz clic en "Guardar".
[WARNING] No marques "Ejecución" para archivos que no sean scripts o programas (como imágenes, CSS o HTML). Solo los archivos PHP, CGI o binarios necesitan el bit de ejecución.
Paso 3: Permisos recomendados para cada tipo de archivo
Aquí tienes una tabla práctica que puedes seguir:
| Tipo de archivo | Permisos | Explicación |
|---|---|---|
| Archivos PHP, HTML, CSS, JS | 644 | Lectura para todos, escritura solo para ti. |
| Archivos de configuración (wp-config.php, .env) | 640 o 600 | Solo tú puedes leer y escribir; grupo solo lectura (640) o nada (600). |
| Carpetas (directorios) | 755 | Lectura y ejecución para todos, escritura solo para ti. |
| Archivos ejecutables (scripts CGI, binarios) | 755 | Ejecución para todos, pero solo tú puedes escribir. |
| Archivos de log (logs) | 644 o 640 | Lectura para todos, pero sin escritura pública. |
| Archivos temporales o de caché | 755 (carpetas) / 644 (archivos) | A veces requieren escritura del servidor, pero nunca 777. |
[INFO] Nunca uses 777 (todos pueden leer, escribir y ejecutar). Es una puerta abierta a ataques. Si un plugin o script te pide 777, busca alternativas más seguras o ajusta el propietario correctamente.
Paso 4: Corregir permisos de forma masiva con comandos SSH (opcional)
Si tienes acceso SSH, puedes cambiar permisos de miles de archivos en segundos. Esto es útil cuando migras un sitio o después de un ataque.
- Conéctate a tu servidor por SSH (usa un cliente como PuTTY o Terminal).
- Navega a la carpeta de tu sitio:
cd /home/usuario/domains/tudominio.com/public_html - Para cambiar todos los archivos a 644:
find . -type f -exec chmod 644 {} \; - Para cambiar todas las carpetas a 755:
find . -type d -exec chmod 755 {} \;
[TIP] Si no tienes SSH, puedes pedirle a tu proveedor de hosting que ejecute estos comandos. Muchos lo hacen sin costo.
Paso 5: Verificar que los permisos sean correctos
Después de aplicar los cambios, comprueba que tu sitio funcione correctamente:
- Visita tu página web en el navegador. Debe cargar sin errores.
- Prueba a subir un archivo (por ejemplo, una imagen) desde el administrador de archivos de DirectAdmin.
- Revisa los logs de error (en
domains/tudominio.com/logs) por si hay mensajes de "Permission denied".
Si algo falla, ajusta los permisos de carpetas específicas (como wp-content/uploads en WordPress) a 755, y archivos a 644.
[WARNING] No bajes los permisos de archivos críticos (como
wp-config.php) a 644 si tu servidor usa PHP como módulo de Apache. En ese caso, 640 o 600 es más seguro. Consulta con tu hosting.
Preguntas frecuentes (FAQ)
¿Qué permisos debe tener wp-config.php en WordPress?
Debe ser 640 o 600. Nunca 644 o superior. Si tu servidor usa PHP-FPM, 600 es ideal.
¿Por qué no puedo subir archivos después de cambiar permisos?
Probablemente la carpeta de destino (como wp-content/uploads) tiene permisos demasiado restrictivos. Cámbiala a 755. Si el problema persiste, el propietario de la carpeta podría no ser tu usuario; revisa en DirectAdmin la sección "Propietario de archivos".
¿Los permisos 777 son necesarios alguna vez?
En teoría, no. En la práctica, algunos scripts antiguos o mal diseñados los piden, pero siempre es mejor usar 755 para carpetas y 644 para archivos, y ajustar el propietario. Si tu hosting usa Syspanel (antes HestiaCP, accesible por puerto 2106), verifica que el usuario del sitio sea el correcto.
¿Cómo sé si un archivo tiene permisos inseguros?
En el administrador de archivos de DirectAdmin, los permisos aparecen como una cadena (ej: -rw-r--r--). Si ves -rwxrwxrwx (777) o -rw-rw-rw- (666), es inseguro.
¿Afectan los permisos al rendimiento del sitio?
No directamente, pero permisos incorrectos pueden causar errores 500, páginas en blanco o imposibilidad de cargar plugins. La seguridad sí se ve afectada.
Consejos adicionales para mantener la seguridad
- Actualiza tu panel: Mantén DirectAdmin y todos los scripts (WordPress, Joomla, etc.) actualizados.
- Usa contraseñas fuertes: Tanto para tu cuenta de hosting como para las bases de datos.
- Revisa periódicamente: Cada mes, comprueba que no haya archivos con permisos 777.
- Audita los usuarios: En DirectAdmin, ve a "Usuarios" y elimina los que no uses.
- Backups automáticos: Configura copias de seguridad desde el panel para restaurar en caso de ataque.
[INFO] Si migraste desde Syspanel (HestiaCP, puerto 2106) a DirectAdmin, los permisos pueden heredar configuraciones antiguas. Siempre es recomendable resetearlos siguiendo esta guía.
Conclusión
Configurar permisos de archivos seguros en DirectAdmin es una de las medidas más efectivas y sencillas para proteger tu sitio web. Recuerda la regla de oro: archivos 644, carpetas 755, nunca 777. Con el administrador de archivos del panel puedes hacerlo fácilmente, y si te animas con SSH, el proceso es aún más rápido. Dedica 10 minutos a revisar tus permisos hoy y evitarás dolores de cabeza mañana.
Si tienes dudas, tu proveedor de hosting o el soporte de DirectAdmin pueden ayudarte. ¡La seguridad de tu web está en tus manos!
