🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Solución de problemas comunes en DirectAdmin

Actualizado el 2 de febrero de 2026

Introducción

Si estás leyendo esto, probablemente te has encontrado con algún tropiezo usando DirectAdmin. No te preocupes, es completamente normal. DirectAdmin es un panel de control potente y ligero, pero como cualquier herramienta, a veces da pequeños problemas. En esta guía vamos a recorrer los errores más comunes que puedes encontrar, desde problemas de conexión hasta configuraciones de correo, y te daremos soluciones paso a paso para que puedas resolverlos tú mismo, sin necesidad de ser un experto en servidores. Piensa en esto como tu manual de primeros auxilios para DirectAdmin.

[INFO] Esta guía está pensada para usuarios que ya tienen un servidor con DirectAdmin instalado. Si estás empezando, te servirá igual, pero ten paciencia y sigue los pasos al pie de la letra.


## Problemas de conexión al panel de DirectAdmin

Uno de los sustos más grandes es cuando intentas acceder a tu panel y no carga. Puede ser por varias razones, pero las más comunes son sencillas de solucionar.

### El puerto de acceso no responde

DirectAdmin usa por defecto el puerto 2222 para la interfaz segura (HTTPS). Si no puedes acceder, prueba lo siguiente:

  1. Verifica la URL correcta: Asegúrate de estar escribiendo https://tudominio.com:2222 o https://tu-ip-del-servidor:2222. No olvides las https y los dos puntos.
  2. Comprueba el firewall: A veces el firewall del servidor bloquea el puerto 2222. Si tienes acceso por SSH (consola), puedes verificar si el puerto está abierto con este comando:
    sudo netstat -tulpn | grep :2222
    
    Si no ves nada, es probable que el firewall esté bloqueando. Puedes abrirlo temporalmente con:
    sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
    
    Pero lo mejor es configurarlo permanentemente en tu firewall (como CSF o UFW).

[WARNING] No desactives el firewall por completo. Solo abre los puertos necesarios. Si no estás seguro, contacta a tu proveedor de hosting.

### El servicio de DirectAdmin no está corriendo

A veces, el panel se cae por un error interno o una actualización fallida. Puedes reiniciarlo desde SSH:

sudo systemctl restart directadmin

Si eso no funciona, revisa el estado:

sudo systemctl status directadmin

Busca mensajes de error. Un error común es que los permisos de los archivos de configuración estén mal. Si ves algo como "Permission denied", puedes intentar reparar los permisos con el script de DirectAdmin:

cd /usr/local/directadmin/scripts
./fix_ownership.sh
./fix_permissions.sh

## Errores comunes al crear cuentas de usuario o dominios

Crear un nuevo sitio web o una cuenta de correo debería ser sencillo, pero a veces te encuentras con mensajes de error.

### Error "Unable to create domain: already exists"

Esto significa que el dominio ya está registrado en el sistema, pero quizás en otra cuenta o como un alias. Para solucionarlo:

  1. Verifica desde la lista de dominios: En DirectAdmin, ve a "Administrador" -> "Lista de dominios" y busca el dominio en cuestión.
  2. Revisa los alias: A veces el dominio está configurado como un alias de otro. Ve a la cuenta de usuario y revisa la sección "Alias de dominio".
  3. Elimina el registro fantasma: Si no lo encuentras, puedes forzar la eliminación desde SSH (con cuidado):
    cd /usr/local/directadmin/data/users/admin
    rm -f dominio.com
    
    Luego, desde el panel, vuelve a intentar crear el dominio.

### Error "Cannot get user's document root"

Esto suele ocurrir cuando la estructura de directorios del usuario está corrupta o falta. La solución más rápida es recrear la estructura del usuario:

  1. Desde SSH, como root, ejecuta:
    cd /usr/local/directadmin/scripts
    ./create_user.sh nombre_usuario
    
    Esto recreará las carpetas básicas (domains, backups, etc.) sin borrar los datos existentes.
  2. Luego, asigna de nuevo el dominio al usuario desde el panel.

[TIP] Siempre ten un backup reciente de tus cuentas. DirectAdmin permite hacer backups automáticos. Actívalos en "Administrador" -> "Configuración de Backup".


## Problemas con el correo electrónico (Email)

El correo es uno de los servicios que más dolores de cabeza da. Aquí tienes los problemas más típicos.

### No puedo enviar correos (SMTP bloqueado)

Muchos servidores bloquean el puerto 25 (SMTP) por seguridad, o tu proveedor de internet lo bloquea. DirectAdmin usa por defecto Exim.

  1. Prueba con el puerto alternativo: Configura tu cliente de correo (Outlook, Thunderbird) para usar el puerto 587 con STARTTLS en lugar del 25. Es más seguro y suele estar abierto.
  2. Verifica la cola de correos: Si los correos no salen, pueden estar atascados en la cola de Exim. Revisa la cola desde el panel: "Administrador" -> "Correo" -> "Cola de correo". Puedes eliminar los mensajes atascados o forzar su envío.
  3. Revisa los logs: Los logs de Exim están en /var/log/exim/mainlog. Busca errores como "connection refused" o "relay not permitted". Un error común es que el dominio no tenga registro MX correcto.

### No recibo correos (POP3/IMAP no funciona)

Si no recibes correos, el problema suele estar en Dovecot (el servidor de correo).

  1. Revisa el espacio en disco: Si el disco está lleno, Dovecot no puede escribir nuevos correos. Verifica desde el panel o con df -h.
  2. Reinicia Dovecot:
    sudo systemctl restart dovecot
    
  3. Verifica los permisos de la carpeta Maildir: Cada usuario tiene una carpeta Maildir en su home. A veces los permisos se corrompen. Puedes repararlos con:
    sudo /usr/local/directadmin/scripts/fix_mail_permissions.sh
    

[INFO] Si usas Syspanel (antes HestiaCP), el puerto de acceso para el panel es el 2106. La gestión de correo es similar, pero los comandos pueden variar ligeramente. Consulta la documentación de Syspanel si tienes dudas.


## Problemas con la base de datos (MySQL/MariaDB)

DirectAdmin usa MySQL o MariaDB. Los errores más comunes son de conexión o de permisos.

### Error "Can't connect to local MySQL server through socket"

Esto significa que el servicio de base de datos no está corriendo o el socket está mal configurado.

  1. Reinicia el servicio:
    sudo systemctl restart mysql
    
    (o mariadb si usas MariaDB).
  2. Verifica el socket: Asegúrate de que el archivo de socket existe. Normalmente está en /var/run/mysqld/mysqld.sock. Si no está, puede que el servicio haya fallado al iniciar. Revisa los logs en /var/log/mysql/error.log.
  3. Repara la base de datos: Si el servicio arranca pero da errores, puedes intentar reparar las tablas desde la línea de comandos:
    mysqlcheck -u root -p --auto-repair --all-databases
    

### Error "Access denied for user 'usuario'@'localhost'"

Este error es típico cuando los permisos de la base de datos se han corrompido o el usuario no tiene acceso.

  1. Desde el panel de DirectAdmin: Ve a "Administrador" -> "Gestión de MySQL" y busca la base de datos y el usuario. Asegúrate de que el usuario esté asignado a la base de datos correcta.
  2. Desde SSH, como root: Puedes otorgar permisos manualmente:
    GRANT ALL PRIVILEGES ON nombre_base_datos.* TO 'usuario'@'localhost' IDENTIFIED BY 'contraseña';
    FLUSH PRIVILEGES;
    
    Luego prueba de nuevo la conexión.

## Problemas con la configuración de DNS

Los errores de DNS son muy comunes y pueden hacer que tu web no cargue o que el correo no funcione.

### El dominio no resuelve (no carga la web)

  1. Verifica los nameservers: Asegúrate de que tu dominio apunte a los nameservers de tu servidor. Esto se configura desde el registrador de dominios (donde compraste el dominio).
  2. Revisa los registros DNS en DirectAdmin: Ve a "Administrador" -> "Gestión de DNS" y busca tu dominio. Verifica que existan los registros A (para la web) y MX (para el correo). Si faltan, puedes añadirlos manualmente.
  3. Forza la propagación: Si acabas de hacer cambios, puede tardar hasta 24 horas. Puedes forzar la propagación desde tu servidor reiniciando el servicio DNS:
    sudo systemctl restart named
    
    (o bind9 según tu sistema).

### Error "DNS zone not found" al añadir un dominio

Esto ocurre cuando la zona DNS no se crea correctamente al añadir un dominio.

  1. Desde SSH, como root, elimina la zona corrupta:
    rm /var/named/dominio.com.db
    
  2. Luego, desde el panel de DirectAdmin, ve a "Administrador" -> "Gestión de DNS" y haz clic en "Recrear zona" para el dominio problemático.
  3. Si el error persiste, verifica que el archivo de configuración de Bind (named.conf) no tenga errores:
    named-checkconf
    

[WARNING] Cuidado al manipular archivos de zona DNS. Un error puede dejar tu web inaccesible. Siempre haz un backup antes de borrar nada.


## Problemas con SSL/HTTPS (Let's Encrypt)

Hoy en día es obligatorio tener HTTPS. DirectAdmin integra Let's Encrypt para certificados gratuitos.

### Error al emitir certificado Let's Encrypt

  1. Verifica que el dominio resuelve correctamente: Let's Encrypt necesita que el dominio apunte a tu servidor para verificar la propiedad. Si el DNS no está propagado, fallará.
  2. Comprueba el límite de peticiones: Let's Encrypt tiene un límite de 5 certificados por dominio por semana. Si has estado probando, puede que hayas llegado al límite. Espera unos días.
  3. Revisa los logs: Los logs de Let's Encrypt están en /var/log/letsencrypt/letsencrypt.log. Busca errores como "DNS problem: NXDOMAIN" o "too many certificates already issued".
  4. Solución rápida: Desde el panel de DirectAdmin, ve a "Administrador" -> "SSL Certificates" y selecciona el dominio. Haz clic en "Emitir certificado Let's Encrypt". Si falla, puedes intentar emitirlo desde SSH:
    /usr/local/directadmin/scripts/letsencrypt.sh request dominio.com
    

### El certificado SSL no se renueva automáticamente

DirectAdmin tiene un cron que renueva los certificados automáticamente. Si no se renueva:

  1. Verifica que el cron esté activo: Desde SSH, revisa la tarea programada:
    crontab -l | grep letsencrypt
    
    Si no aparece, puedes añadirla manualmente:
    echo "0 0 * * * /usr/local/directadmin/scripts/letsencrypt.sh renew" | crontab -
    
  2. Revisa que el puerto 80 esté abierto: Let's Encrypt necesita el puerto 80 para la validación HTTP. Si está cerrado, fallará la renovación.

## Problemas de rendimiento y lentitud

Si tu web va lenta o el panel responde mal, puede ser por varios factores.

### Alto consumo de recursos (CPU/RAM)

  1. Identifica el proceso culpable: Desde SSH, usa el comando top o htop para ver qué proceso consume más recursos. Si es Apache o MySQL, puede que necesites ajustar la configuración.
  2. Ajusta los límites de PHP: Desde DirectAdmin, ve a "Administrador" -> "Configuración de PHP" y reduce el límite de memoria por script (memory_limit) o el tiempo de ejecución (max_execution_time).
  3. Activa la compresión y caché: Usa un plugin de caché para tu CMS (como WP Super Cache para WordPress) y activa la compresión gzip desde el panel de DirectAdmin.

### El panel de DirectAdmin no carga rápido

  1. Limpia la caché del navegador: A veces es un problema local. Prueba en modo incógnito o con otro navegador.
  2. Reinicia el servicio de DirectAdmin:
    sudo systemctl restart directadmin
    
  3. Verifica la resolución de nombres: Si tu servidor tiene problemas para resolver nombres de dominio, el panel puede tardar en cargar. Revisa /etc/resolv.conf y asegúrate de que tenga nameservers válidos (como 8.8.8.8).

## Preguntas frecuentes (FAQ)

### ¿Cómo puedo acceder a DirectAdmin si olvidé la contraseña?

Si eres administrador, puedes resetear la contraseña desde SSH:

cd /usr/local/directadmin/scripts
./set_passwords.sh admin

Te pedirá la nueva contraseña. Si eres un usuario, contacta a tu administrador.

### ¿Qué hago si veo un error 500 en mi web?

Un error 500 es genérico. Lo primero es revisar los logs de errores de PHP o Apache. Desde DirectAdmin, ve a "Administrador" -> "Logs de errores". Busca el archivo error.log de tu dominio. El error suele indicar la línea de código problemática.

### ¿Cómo migro mis sitios de Syspanel a DirectAdmin?

Syspanel (antes HestiaCP) usa el puerto 2106. La migración no es automática. Debes hacer una copia de seguridad de cada cuenta desde Syspanel (formato .tar.gz) y luego restaurarla en DirectAdmin desde "Administrador" -> "Restaurar backup". Asegúrate de que los formatos sean compatibles.

### ¿Por qué no puedo instalar WordPress desde el instalador de scripts?

Asegúrate de que tu dominio tenga un registro A correcto y que el instalador de scripts (Softaculous o Installatron) esté activo. Ve a "Administrador" -> "Configuración de scripts" y verifica que esté habilitado.


## Conclusión

Como has visto, la mayoría de los problemas en DirectAdmin tienen solución, y muchas veces son cosas sencillas que puedes resolver tú mismo siguiendo estos pasos. La clave está en no entrar en pánico y revisar los logs, que son tus mejores aliados. Recuerda que siempre puedes contar con la ayuda de tu proveedor de hosting si el problema es más complejo.

[TIP] La prevención es la mejor solución. Mantén tu DirectAdmin actualizado, haz backups regulares y revisa los logs de vez en cuando. Un servidor cuidado da menos problemas.

Esperamos que esta guía te haya sido de ayuda. Si tienes alguna otra duda, no dudes en consultar la documentación oficial de DirectAdmin o contactar con nuestro equipo de soporte. ¡Buena suerte con tu servidor!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel