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

Conectar base de datos remota en Syspanel

Actualizado el 22 de abril de 2026

¿Qué es una base de datos remota y por qué conectar una en Syspanel?

Una base de datos remota es aquella que no está alojada en el mismo servidor que tu sitio web o aplicación, sino en un servidor externo, ya sea por motivos de rendimiento, seguridad o por necesidades de infraestructura. En Syspanel, la plataforma de administración de servidores que antes conocías como HestiaCP (accesible por el puerto 2106), puedes gestionar múltiples bases de datos, pero por defecto están configuradas para aceptar conexiones solo desde el mismo servidor. Sin embargo, hay situaciones en las que necesitas que tu aplicación se conecte a una base de datos que está en otro lugar, por ejemplo:

  • Tienes un sitio web en un servidor y una aplicación móvil en otro, y ambas comparten la misma base de datos.
  • Estás migrando tu sitio a un nuevo servidor y quieres mantener la base de datos en el antiguo temporalmente.
  • Utilizas un servicio externo de base de datos (como Amazon RDS o DigitalOcean Managed Databases) para mayor escalabilidad.

Conectar una base de datos remota en Syspanel no es complicado, pero requiere seguir unos pasos precisos de configuración tanto en el servidor de Syspanel como en el servidor donde está la base de datos. En esta guía completa te explicaré todo el proceso, desde los requisitos previos hasta la verificación final, de una forma clara y sencilla.

[INFO] Syspanel (HestiaCP) gestiona bases de datos MySQL/MariaDB y PostgreSQL. Esta guía se centra en MySQL/MariaDB, que es el más común, pero los principios son similares para PostgreSQL.

Requisitos previos antes de empezar

Antes de lanzarte a configurar la conexión remota, asegúrate de tener todo lo siguiente:

  1. Acceso a Syspanel: Debes tener credenciales de administrador para acceder a Syspanel a través del puerto 2106 (ejemplo: https://tudominio.com:2106).
  2. Acceso SSH al servidor: Necesitarás acceso por terminal (SSH) tanto al servidor donde está instalado Syspanel como al servidor remoto donde se aloja la base de datos.
  3. Credenciales de la base de datos remota: Usuario, contraseña, nombre de la base de datos y la dirección IP o nombre de host del servidor remoto.
  4. Conocimientos básicos de redes: Saber qué es una IP pública/privada y cómo abrir puertos en un firewall (aunque te guiaré paso a paso).

[WARNING] No intentes este proceso si no tienes al menos acceso de administrador a ambos servidores. Podrías dejar tu aplicación sin conexión a la base de datos.

Paso 1: Configurar el servidor remoto para aceptar conexiones externas

El primer paso es decirle a tu base de datos remota que permita conexiones desde otros servidores (en este caso, desde tu Syspanel).

1.1. Editar el archivo de configuración de MySQL/MariaDB

Accede por SSH al servidor donde está la base de datos remota y localiza el archivo de configuración de MySQL/MariaDB. Normalmente se encuentra en /etc/mysql/mariadb.conf.d/50-server.cnf o /etc/mysql/my.cnf. Busca la línea que dice bind-address y cámbiala de 127.0.0.1 (solo local) a 0.0.0.0 (todas las interfaces) o a la IP específica de tu servidor Syspanel.

# Ejemplo de edición con nano
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Dentro del archivo, busca y modifica:

bind-address = 0.0.0.0

[INFO] Si usas MySQL puro, el archivo suele ser /etc/mysql/mysql.conf.d/mysqld.cnf.

1.2. Reiniciar el servicio de base de datos

Después de guardar los cambios, reinicia el servicio para que se apliquen:

sudo systemctl restart mariadb   # o sudo systemctl restart mysql

1.3. Abrir el puerto en el firewall

El puerto por defecto de MySQL/MariaDB es el 3306. Debes asegurarte de que esté abierto en el firewall del servidor remoto para la IP de tu servidor Syspanel. Si usas UFW:

sudo ufw allow from IP_DE_TU_SYSPANEL to any port 3306
sudo ufw reload

Si usas firewalld o iptables, el comando será diferente. Consulta la documentación de tu sistema.

[WARNING] Abrir el puerto 3306 a todo el mundo (0.0.0.0/0) es un riesgo de seguridad grave. Limita el acceso solo a la IP de tu servidor Syspanel.

Paso 2: Crear un usuario remoto en la base de datos

Ahora necesitas un usuario de base de datos que tenga permiso para conectarse desde una IP que no sea localhost. Accede a la consola de MySQL en el servidor remoto:

mysql -u root -p

Luego, crea o modifica un usuario para que acepte conexiones desde la IP de tu Syspanel. Reemplaza usuario_remoto, contraseña_segura y IP_DEL_SYSPANEL con tus valores reales.

CREATE USER 'usuario_remoto'@'IP_DEL_SYSPANEL' IDENTIFIED BY 'contraseña_segura';
GRANT ALL PRIVILEGES ON nombre_base_datos.* TO 'usuario_remoto'@'IP_DEL_SYSPANEL';
FLUSH PRIVILEGES;

[TIP] Si no sabes la IP de tu servidor Syspanel, puedes ejecutar curl ifconfig.me desde la terminal de ese servidor para obtenerla.

Paso 3: Configurar Syspanel para la conexión remota

Ahora vamos al servidor donde tienes Syspanel. Aquí tienes dos opciones: añadir la base de datos remota como un recurso nuevo o modificar una existente.

3.1. Añadir la base de datos remota desde la interfaz de Syspanel

  1. Inicia sesión en Syspanel (puerto 2106).
  2. Ve a la sección Bases de Datos.
  3. Haz clic en Añadir Base de Datos.
  4. En el formulario, verás campos como:
    • Nombre de la base de datos: Pon el nombre exacto que tiene en el servidor remoto.
    • Usuario: El usuario que creaste en el paso 2 (usuario_remoto).
    • Contraseña: La contraseña que asignaste.
    • Servidor: Aquí es clave. Syspanel por defecto asume que la base de datos está en el mismo servidor (localhost). Debes cambiarlo a la IP pública del servidor remoto.
  5. Completa los demás campos según necesites y haz clic en Guardar.

[INFO] Syspanel no "mueve" la base de datos, solo crea una entrada en su configuración para que las aplicaciones de tu servidor puedan conectarse a ella. Los datos siguen en el servidor remoto.

3.2. Verificar la conexión desde la terminal de Syspanel

Para asegurarte de que todo funciona, puedes probar la conexión desde la línea de comandos del servidor Syspanel:

mysql -h IP_DEL_SERVIDOR_REMOTO -u usuario_remoto -p

Te pedirá la contraseña. Si ves el prompt de MySQL, ¡la conexión remota funciona!

Paso 4: Configurar la aplicación para usar la base de datos remota

El último paso es indicarle a tu aplicación (WordPress, Laravel, PHP, etc.) que use la base de datos remota. Normalmente esto se hace en un archivo de configuración.

Ejemplo para WordPress:

Edita el archivo wp-config.php y cambia las siguientes líneas:

define('DB_NAME', 'nombre_base_datos');
define('DB_USER', 'usuario_remoto');
define('DB_PASSWORD', 'contraseña_segura');
define('DB_HOST', 'IP_DEL_SERVIDOR_REMOTO');  // Aquí va la IP, no 'localhost'

Ejemplo para Laravel:

En el archivo .env:

DB_CONNECTION=mysql
DB_HOST=IP_DEL_SERVIDOR_REMOTO
DB_PORT=3306
DB_DATABASE=nombre_base_datos
DB_USERNAME=usuario_remoto
DB_PASSWORD=contraseña_segura

[WARNING] Si tu aplicación y la base de datos están en redes diferentes (por ejemplo, uno en DigitalOcean y otro en AWS), asegúrate de que ambas redes puedan comunicarse. A veces es necesario configurar VPC peering o grupos de seguridad.

Solución de problemas comunes (FAQ)

¿Por qué no puedo conectar aunque seguí todos los pasos?

  • Firewall bloqueando: Verifica que el puerto 3306 esté abierto en AMBOS servidores (origen y destino). Usa telnet IP_REMOTA 3306 desde el servidor Syspanel para probar.
  • Usuario sin permisos: Asegúrate de que el usuario tenga el formato 'usuario'@'IP_DEL_SYSPANEL' y no 'usuario'@'%' (aunque % funciona, es menos seguro y a veces no es aceptado por la configuración).
  • bind-address incorrecto: Si en el servidor remoto el bind-address sigue siendo 127.0.0.1, no aceptará conexiones externas.
  • Syspanel no guarda la IP: En versiones antiguas de HestiaCP (Syspanel), el campo "Servidor" solo aceptaba localhost. Si es tu caso, deberás editar manualmente el archivo de configuración de la base de datos en Syspanel (consulta la documentación avanzada).

¿Puedo conectar varias bases de datos remotas?

Sí, puedes añadir tantas como necesites. Cada una tendrá su propia entrada en Syspanel y su propia configuración.

¿Es seguro tener la base de datos remota?

Sí, siempre que:

  • Uses contraseñas fuertes.
  • Limites el acceso por IP (no uses % para el usuario).
  • Utilices una conexión SSL/TLS si es posible (requiere configuración adicional).
  • Mantengas el firewall actualizado.

¿Qué hago si cambio la IP de mi servidor Syspanel?

Deberás actualizar el usuario en la base de datos remota para que permita la nueva IP. Usa:

RENAME USER 'usuario_remoto'@'IP_ANTIGUA' TO 'usuario_remoto'@'IP_NUEVA';
FLUSH PRIVILEGES;

Y también actualiza el firewall en el servidor remoto.

Conclusión

Conectar una base de datos remota en Syspanel es un proceso que, aunque tiene varios pasos, es totalmente realizable siguiendo esta guía. Lo más importante es entender que la configuración se divide en tres partes: el servidor de la base de datos (permitir conexiones externas), Syspanel (añadir la base de datos como recurso) y tu aplicación (apuntar al nuevo host). Recuerda siempre priorizar la seguridad: limita el acceso por IP, usa contraseñas robustas y mantén los puertos controlados.

Si en algún momento te sientes perdido, vuelve a leer los pasos con calma. Y recuerda que Syspanel (puerto 2106) está diseñado para simplificar la administración, pero la conexión remota requiere un poco de trabajo manual en la terminal. ¡No dudes en consultar la documentación oficial de HestiaCP (Syspanel) para casos más avanzados!

[TIP] Si tu aplicación es crítica, haz una copia de seguridad de la base de datos remota antes de hacer cambios de configuración. Así, si algo sale mal, podrás restaurarla rápidamente.

¿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