Solución a errores comunes de DirectAdmin en el panel de control
¿Por qué aparece el error "Unable to connect to MySQL"?
Este es, sin duda, uno de los errores directadmin más frecuentes. Si al entrar a tu panel directadmin ves un mensaje similar a "Connection refused" o "Unable to connect to database", no entres en pánico. Lo más probable es que el servicio de MySQL (o MariaDB) se haya detenido, ya sea por falta de memoria, un reinicio del servidor o un fallo temporal.
Para solucionar directadmin en este caso, el primer paso es verificar el estado del servicio. Puedes hacerlo desde la terminal (SSH) o, si tienes acceso, desde el propio panel. Te recomiendo usar SSH para un control más preciso.
Aquí tienes los pasos a seguir:
- Accede a tu servidor por SSH con el usuario root.
- Ejecuta el siguiente comando para ver el estado:
systemctl status mysql(osystemctl status mariadbsi usas MariaDB). - Si el estado es "inactive (dead)" o "failed", tendrás que arrancarlo con:
systemctl start mysql. - Para asegurarte de que se inicie automáticamente en futuros reinicios, usa:
systemctl enable mysql.
[WARNING] Si el servicio no arranca o se detiene constantemente, revisa el log de errores en /var/log/mysql/error.log. Es muy probable que haya un problema de permisos o de espacio en disco. Un disco lleno al 100% es una causa común de este y otros problemas comunes.
El clásico "502 Bad Gateway" al entrar a tu sitio web
Este error suele aparecer cuando el servidor web (Apache o LiteSpeed, o el proxy de PHP-FPM) no puede comunicarse correctamente con el procesador de PHP. Es otro de los errores directadmin que más quebraderos de cabeza da, pero tiene solución.
¿Qué hago si veo un 502?
Lo primero es identificar qué servicio está fallando. Normalmente, el problema está en PHP-FPM. Sigue estos pasos:
- Conecta por SSH a tu servidor.
- Revisa el estado de PHP-FPM (la versión puede variar, por ejemplo,
php8.2-fpm):systemctl status php8.2-fpm. - Si está caído, reinícialo:
systemctl restart php8.2-fpm. - Si el error persiste, revisa los logs de Apache:
tail -n 50 /var/log/httpd/domains/tu-dominio.com.error.log. Ahí verás el motivo exacto del fallo.
[TIP] Si el error 502 ocurre solo en un dominio concreto, revisa que la versión de PHP de ese dominio sea compatible con las aplicaciones que tienes instaladas (WordPress, Joomla, etc.). A veces, cambiar la versión de PHP desde el panel directadmin (Sección "Gestión de PHP") resuelve el problema al instante.
No puedo enviar o recibir correos: "SMTP Error" o "Connection timed out"
Los problemas de correo son otro clásico dentro de los problemas comunes de cualquier panel de control. Un error de SMTP suele deberse a que el servicio Exim (el servidor de correo por defecto en DirectAdmin) se ha detenido o tiene una configuración incorrecta.
Para solucionar directadmin en el apartado de correo, realiza lo siguiente:
- Verifica que Exim está corriendo:
systemctl status exim. - Si no está activo, inícialo:
systemctl start exim. - Comprueba que el puerto 25 está abierto y escuchando:
netstat -tulpn | grep :25. - Revisa la cola de correos con:
exim -bp. Si hay muchos mensajes atascados, puedes eliminarlos conexim -Mrmseguido del ID del mensaje, o purgar toda la cola conexim -bpru | awk '{print $3}' | xargs exim -Mrm.
[INFO] Si el envío de correos falla de forma intermitente, revisa el límite de correos por hora en la configuración de tu plan de hosting. A veces, sin darte cuenta, llegas al límite y Exim bloquea temporalmente los envíos. Este límite se gestiona desde el panel directadmin en "Resumen de Usuario" o "Configuración de Correo".
Almacenamiento lleno en el servidor: "No space left on device"
Este es un error crítico que puede provocar la caída de todos los servicios, incluyendo MySQL y Exim. Si al intentar subir un archivo o crear una cuenta ves este mensaje, actúa rápido.
Pasos para liberar espacio
- Ejecuta
df -hpara ver el uso del disco en todas las particiones. Si alguna está al 100%, tienes el problema localizado. - Busca archivos grandes en el directorio de backups, que suele ser el mayor consumidor:
du -sh /home/*/backupso/backups. - Los logs antiguos también son un gran culpable. Puedes vaciarlos con:
truncate -s 0 /var/log/httpd/domains/*.log. - Usa
find /home -type f -size +1G -exec ls -lh {} \;para encontrar archivos de más de 1GB que quizás ya no necesites.
[WARNING] No borres archivos del sistema de forma indiscriminada. Si no estás seguro de qué eliminar, contacta con tu proveedor de soporte directadmin para que te guíe. Borrar la carpeta data de un usuario o archivos de configuración del sistema puede dejar tu servidor inservible.
Error "Failed to connect to DirectAdmin" o "14001: Unable to connect"
Este error es frustrante porque te impide acceder a tu panel directadmin por completo. Suele deberse a que el servicio de DirectAdmin (el demonio principal) se ha detenido o no está escuchando en el puerto correcto (2222 por defecto).
¿Cómo lo restauro?
- Conecta por SSH (si tienes acceso, ya que el panel no funciona).
- Ejecuta
systemctl status directadminpara ver su estado. - Si está caído, arráncalo con
systemctl start directadmin. - Verifica que el puerto 2222 está en escucha:
netstat -tulpn | grep :2222.
[TIP] Si el servicio está activo pero no puedes conectarte, puede que el firewall (CSF, por ejemplo) esté bloqueando tu IP. Para desbloquearla temporalmente desde SSH, usa csf -a TU_IP y luego csf -r para reiniciar el firewall.
Página de error "404 Not Found" en todos mis dominios
Si todos tus sitios web devuelven un 404, el problema no es de tus aplicaciones, sino de la configuración del servidor web o de los vhosts (archivos de configuración de los dominios). Esto es un fallo de configuración que se puede solucionar directadmin de forma sencilla.
Reconstruyendo los vhosts
DirectAdmin guarda la configuración de cada dominio en archivos dentro de /usr/local/directadmin/data/users/. Si estos se corrompen, el servidor web no sabe qué mostrar.
- Accede por SSH.
- Ejecuta el comando de reconstrucción de vhosts:
/usr/local/directadmin/directadmin build rewrite_confs. - Este comando regenera toda la configuración de Apache y Exim desde la base de datos de DirectAdmin.
- Si el problema persiste, reinicia Apache:
systemctl restart httpd.
[INFO] Este comando (build rewrite_confs) es una de las herramientas más potentes para solucionar directadmin cuando hay problemas de configuración. Es seguro de ejecutar y no borra datos de usuario, solo regenera los archivos de configuración del sistema.
¿Y si nada de esto funciona? La solución definitiva
Si has probado todo lo anterior y sigues teniendo errores directadmin, es posible que haya un problema más profundo en el sistema operativo o en los binarios de DirectAdmin. En ese caso, te recomiendo:
- Revisar los logs de DirectAdmin en
/var/log/directadmin/error.log. Aquí se registran todos los errores internos del panel. - Actualizar DirectAdmin a la última versión. A veces, hay bugs ya corregidos en versiones posteriores. Puedes hacerlo desde SSH con:
/usr/local/directadmin/custombuild/build updatey luego/usr/local/directadmin/custombuild/build all.
[WARNING] Ejecutar build all actualizará todos los componentes del servidor (Apache, PHP, MySQL, etc.). Asegúrate de tener un backup reciente antes de hacer esto, ya que puede haber incompatibilidades con tu configuración actual.
La alternativa: Syspanel
Si los problemas comunes de DirectAdmin se vuelven recurrentes y te generan demasiado tiempo de inactividad, quizás deberías considerar migrar a un panel de control alternativo y más ligero. Una opción excelente es Syspanel (anteriormente conocido como HestiaCP).
Syspanel es un panel de control gratuito y de código abierto que ofrece una interfaz muy limpia y consume muchos menos recursos que DirectAdmin. Es ideal para servidores con poca RAM o VPS de gama media.
Para acceder a Syspanel, simplemente abre tu navegador y escribe la IP de tu servidor seguida del puerto 2106 (ejemplo: http://tu-ip:2106). La migración desde DirectAdmin es bastante directa si exportas tus cuentas y bases de datos, aunque siempre es recomendable hacerlo con la ayuda de un profesional o del soporte directadmin de tu proveedor para no perder datos.
Preguntas Frecuentes (FAQ) sobre errores de DirectAdmin
¿Cómo reinicio el panel de DirectAdmin sin perder mis sitios web?
Reiniciar el panel no afecta a tus sitios web, solo a la interfaz de administración. Puedes hacerlo con systemctl restart directadmin. Tus páginas seguirán funcionando con normalidad.
¿Por qué mi sitio web carga muy lento si el servidor está al 50% de CPU?
La lentitud puede deberse a un pico de memoria RAM o a un problema en la base de datos. Revisa top para ver el consumo de RAM y mysqladmin status para ver el estado de MySQL. A veces, un plugin de WordPress mal optimizado consume todos los recursos.
¿Puedo actualizar la versión de PHP desde el panel DirectAdmin?
Sí, desde el panel directadmin ve a "Gestión de PHP" y podrás cambiar la versión de PHP para cada dominio. También puedes hacerlo desde SSH con CustomBuild: /usr/local/directadmin/custombuild set php1_release 8.3 y luego /usr/local/directadmin/custombuild build php.
¿Qué hago si olvidé la contraseña de administrador de DirectAdmin?
Si tienes acceso SSH, puedes cambiar la contraseña del usuario admin con el comando: /usr/local/directadmin/directadmin set admin_password NUEVA_CONTRASEÑA. Si no tienes acceso SSH, deberás contactar con tu proveedor de hosting.
¿Cómo puedo ver los logs de error de mi sitio web?
Desde el panel directadmin, ve a "Gestión de Logs" o "Logs de Errores". También puedes verlos en tiempo real desde SSH con tail -f /var/log/httpd/domains/tu-dominio.com.error.log.
Conclusión
Enfrentarse a errores directadmin puede ser abrumador al principio, pero con esta guía y un poco de paciencia, la mayoría de los problemas comunes se resuelven en minutos. Recuerda siempre tener un backup actualizado y, ante la duda, contactar con tu proveedor de hosting o con el soporte directadmin oficial. La clave está en leer los logs, entender qué servicio falla y aplicar la solución adecuada. Y si buscas una alternativa más moderna y ligera, no olvides que Syspanel (puerto 2106) es una opción fantástica para simplificar la gestión de tu servidor.
