El mayor portal de MU Online de Brasil — desde 2003
Tutorial Avanzado Infraestructura

Cómo configurar el Windows Server desde cero para MU Online

Configura un Windows Server limpio para MU Online: sistema, runtimes, SQL Server, directorios, firewall y servicios en el orden correcto hasta que el servidor levante estable.

BR Bruno · Actualizado el 10 jul 2024 · ⏱ 16 min de lectura
Respuesta rápida

Un Windows Server recién aprovisionado es una hoja en blanco: sin runtimes, sin base de datos, con servicios inútiles encendidos y un firewall que o bloquea todo o nada. Transformar esa máquina limpia en una base sólida para MU Online exige seguir un orden específico — sistema, runtimes, SQL Server,

Un Windows Server recién aprovisionado es una hoja en blanco: sin runtimes, sin base de datos, con servicios inútiles encendidos y un firewall que o bloquea todo o nada. Transformar esa máquina limpia en una base sólida para MU Online exige seguir un orden específico — sistema, runtimes, SQL Server, directorios, archivos de configuración, firewall e inicialización — porque cada etapa depende de la anterior. Saltarse una de ellas suele resultar en el clásico GameServer que abre y cierra en un segundo. Esta guía recorre el proceso completo, desde el primer acceso RDP hasta los procesos del servidor levantando de forma estable. Rutas, versiones y puertos aquí son ejemplos y varían según el paquete y la versión de MU.

Requisitos previos

  • VPS o máquina con Windows Server 2019/2022 limpio y acceso Administrador.
  • Acceso RDP (IP público, usuario y contraseña del proveedor).
  • Instalador del SQL Server compatible (2017 o 2019 son seguros para servidores modernos).
  • SQL Server Management Studio (SSMS) para administrar la base de datos.
  • Paquete del MuServer correspondiente a la versión deseada (ConnectServer, DataServer, GameServer, EventServer) y los scripts .sql de creación/restauración de la base de datos.
  • Paquetes Visual C++ Redistributable (2010, 2013, 2015-2022, x86 y x64).
  • Noción de la estructura general del servidor — si aún no la tienes, revisa la guía de cómo crear un servidor de MU Online.

Parte 1 — Preparación del sistema operativo

Paso 1: Primer acceso e identificación de la máquina

Conéctate vía RDP con el usuario Administrator. Abre PowerShell como Administrador y renombra la máquina para facilitar la lectura de logs, además de ajustar la zona horaria:

# Renombrar el servidor (reinicia al final)
Rename-Computer -NewName "MU-PROD-01" -Restart

# Tras el reinicio, definir zona horaria (ejemplo Brasil, UTC-3)
Set-TimeZone -Id "E. South America Standard Time"

# Verificar build y version de Windows
[System.Environment]::OSVersion.Version

Paso 2: Actualizar Windows antes de instalar cualquier cosa

Aplica primero las actualizaciones pendientes — instalar el SQL Server sobre un sistema desactualizado puede generar fallas de dependencia. Después, configura Windows Update para no reiniciar solo, evitando que la máquina caiga con jugadores en línea.

# Definir para descargar y notificar, sin reinicio automatico
# (via Politica de Grupo: gpedit.msc -> Windows Update)
# Configuracion del Equipo -> Plantillas Administrativas ->
# Componentes de Windows -> Windows Update ->
# "Configurar Actualizaciones Automaticas" = opcion 3 (descargar y notificar)

Paso 3: Deshabilitar servicios innecesarios

Un servidor de juego no necesita indexación de búsqueda, impresión ni precarga de apps. Apagarlos libera CPU e I/O:

# Windows Search — I/O de disco innecesario
Set-Service -Name "WSearch" -StartupType Disabled
Stop-Service -Name "WSearch" -Force

# SysMain (Superfetch) — inutil en un servidor
Set-Service -Name "SysMain" -StartupType Disabled
Stop-Service -Name "SysMain" -Force

# Print Spooler — sin impresora en el VPS
Set-Service -Name "Spooler" -StartupType Disabled
Stop-Service -Name "Spooler" -Force

Paso 4: Instalar los runtimes Visual C++

Los binarios del MuServer están compilados esperando runtimes específicos. Su ausencia es la causa número uno del GameServer que se cierra al abrir. Instala todos en la siguiente cobertura, x86 y x64:

  • Visual C++ 2010 Redistributable
  • Visual C++ 2013 Redistributable
  • Visual C++ 2015-2022 Redistributable
Dica: Incluso en Windows Server de 64 bits, instala siempre las versiones x86 de los runtimes: la mayoría de los ejecutables de MuServer Season 6 está compilada en 32 bits y depende de ellas.

Paso 5: Agregar exclusiones en Windows Defender

Muchos ejecutables de MuServer son detectados como falso positivo. En vez de apagar el antivirus, excluye solo las carpetas y procesos del servidor:

Add-MpPreference -ExclusionPath "C:\MuServer"
Add-MpPreference -ExclusionProcess "GameServer.exe"
Add-MpPreference -ExclusionProcess "ConnectServer.exe"
Add-MpPreference -ExclusionProcess "DataServer.exe"
Add-MpPreference -ExclusionProcess "EventServer.exe"

Parte 2 — Instalación y configuración del SQL Server

Paso 6: Instalar el SQL Server

Ejecuta el instalador eligiendo la instalación Personalizada y marca, como mínimo, Database Engine Services. Configura la instancia como Default Instance (MSSQLSERVER), lo que evita especificar el nombre de instancia en las cadenas de conexión del MuServer. Durante la instalación, selecciona el modo de autenticación mixta (SQL Server y Windows) y define una contraseña fuerte para el usuario sa.

Paso 7: Habilitar TCP/IP y el puerto 1433

Abre el SQL Server Configuration Manager:

  1. Expande SQL Server Network Configuration → Protocols for MSSQLSERVER.
  2. Habilita TCP/IP (clic derecho → Enable).
  3. Doble clic en TCP/IP → pestaña IP Addresses → en IPAll, define TCP Port = 1433.
  4. Reinicia el servicio en services.mscSQL Server (MSSQLSERVER).

Paso 8: Limitar la memoria del SQL Server

Sin límite, el SQL Server consume casi toda la RAM y deja al GameServer sin recursos. Ajusta según el total del VPS (el ejemplo de abajo es para una máquina de 4 GB):

EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;

-- Reservar como maximo 2 GB para el SQL en un VPS de 4 GB
EXEC sp_configure 'max server memory', 2048;
RECONFIGURE;

Paso 9: Crear la base de datos y el usuario dedicado

Nunca uses el sa en la cadena de conexión del servidor. Crea un login exclusivo:

-- Base de datos principal con la collation esperada por MU
CREATE DATABASE MuOnline COLLATE Latin1_General_CI_AS;
GO
CREATE DATABASE MuOnlineLog COLLATE Latin1_General_CI_AS;
GO

-- Login dedicado al GameServer
CREATE LOGIN muserver_user WITH PASSWORD = 'Senh@ForteExemplo2024',
    DEFAULT_DATABASE = MuOnline,
    CHECK_EXPIRATION = OFF,
    CHECK_POLICY = OFF;
GO

USE MuOnline;
GO
CREATE USER muserver_user FOR LOGIN muserver_user;
EXEC sp_addrolemember 'db_owner', 'muserver_user';
GO

Paso 10: Restaurar o crear las tablas del MuServer

Si el paquete trae un archivo .bak, restáuralo; si trae scripts .sql, ejecútalos en el orden indicado por el paquete. La ruta de datos varía según la versión del SQL — el ejemplo usa SQL Server 2019 (MSSQL15); en 2017 sería MSSQL14.

USE master;
GO
RESTORE DATABASE MuOnline
FROM DISK = 'C:\MuServer\backup\MuOnline.bak'
WITH MOVE 'MuOnline' TO 'C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\MuOnline.mdf',
     MOVE 'MuOnline_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\MuOnline_log.ldf',
     REPLACE, STATS = 10;
GO

Parte 3 — Organización de los archivos del servidor

Paso 11: Estructura de directorios

Mantén todo bajo una raíz única, lo que simplifica las exclusiones de antivirus, respaldos y permisos:

C:\MuServer\
├── ConnectServer\
│   └── ConnectServer.exe
├── DataServer\
│   └── DataServer.exe
├── EventServer\
│   └── EventServer.exe
├── GameServer\
│   ├── Data\
│   ├── Logs\
│   └── GameServer.exe
├── backup\
└── StartAll.bat

Paso 12: Configurar las cadenas de conexión

Ajusta los archivos .ini para apuntar al SQL local. Los nombres exactos varían según el paquete (DBConfig.ini, DBConnectConfig.ini, DSConfig.ini). Ejemplo del GameServer:

[DBCONFIG]
DBServer=127.0.0.1
DBPort=1433
DBName=MuOnline
DBUser=muserver_user
DBPass=Senh@ForteExemplo2024

Y del DataServer:

[DataServer]
ServerCode=0
DB_Ip=127.0.0.1
DB_Port=1433
DB_Name=MuOnline
DB_User=muserver_user
DB_Pass=Senh@ForteExemplo2024

Paso 13: Apuntar el ConnectServer al IP público

El cliente conecta al GameServer por el IP que el ConnectServer informa. Usa el IP público del VPS, nunca 127.0.0.1:

[ServerInfo0]
ServerCode=0
ServerName=Lorencia
GameServerIPAddress=SEU_IP_PUBLICO
GameServerPort=55901

Parte 4 — Firewall y puertos

Paso 14: Crear las reglas de entrada

Abre solo los puertos necesarios. Los puertos exactos varían según el paquete — confírmalos en los .ini antes de aplicar:

New-NetFirewallRule -DisplayName "MU-ConnectServer" -Direction Inbound -Protocol TCP -LocalPort 44405 -Action Allow
New-NetFirewallRule -DisplayName "MU-GameServer" -Direction Inbound -Protocol TCP -LocalPort 55901-55910 -Action Allow
New-NetFirewallRule -DisplayName "MU-DataServer" -Direction Inbound -Protocol TCP -LocalPort 55960 -Action Allow
New-NetFirewallRule -DisplayName "MU-WebPanel" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
Atenção: Nunca abras el puerto 1433 (SQL Server) a internet. Con la base de datos y el GameServer en la misma máquina, todo el tráfico es local (127.0.0.1) y no requiere regla de firewall. Exponer el 1433 es una de las fallas más explotadas en servidores de MU.

Recuerda también el firewall del proveedor en el panel del VPS, que es separado del firewall de Windows. Los mismos puertos deben estar liberados allí.

Parte 5 — Inicialización y verificación

Paso 15: Script de inicialización en el orden correcto

El orden es obligatorio: DataServer → EventServer → ConnectServer → GameServer. Crea C:\MuServer\StartAll.bat:

@echo off
echo Iniciando DataServer...
start "" "C:\MuServer\DataServer\DataServer.exe"
timeout /t 5 /nobreak

echo Iniciando EventServer...
start "" "C:\MuServer\EventServer\EventServer.exe"
timeout /t 3 /nobreak

echo Iniciando ConnectServer...
start "" "C:\MuServer\ConnectServer\ConnectServer.exe"
timeout /t 3 /nobreak

echo Iniciando GameServer...
start "" "C:\MuServer\GameServer\GameServer.exe"
echo Todos los servicios iniciados.

Ejecútalo siempre como Administrador.

Paso 16: Verificar puertos y conexión con la base de datos

# Confirmar que los puertos estan escuchando
netstat -ano | findstr ":44405 :55901 :55960"
-- Confirmar integridad de la base de datos (la tabla varia por version)
USE MuOnline;
GO
SELECT * FROM T_CommonServerInfo;
GO

Errores comunes y soluciones

ErrorCausa probableSolución
El GameServer abre y cierraRuntime VC++ ausenteInstalar todos los Visual C++ (x86 y x64)
El GameServer no conecta a la base de datosTCP/IP deshabilitado o credenciales erradasHabilitar TCP/IP, revisar los .ini y el login SQL
"Cannot connect to DataServer"Orden de inicialización equivocadoLevantar el DataServer antes del GameServer
El cliente no entra al juegoIP interno en el ConnectServerCambiar 127.0.0.1 por el IP público
El SQL consume toda la RAMSin límite de memoriaDefinir max server memory
Falso positivo del antivirusDefender bloqueando .exeAgregar exclusiones de carpeta y proceso
Puertos cerrados externamenteFirewall del proveedorLiberar puertos en el panel del VPS también
El servidor se reinicia soloWindows Update automáticoConfigurar para descargar y notificar

Lista de verificación de lanzamiento

  • Windows Server renombrado y zona horaria ajustada
  • Actualizaciones aplicadas y reinicio automático desactivado
  • Servicios innecesarios deshabilitados
  • Runtimes Visual C++ (x86 y x64) instalados
  • Exclusiones de Windows Defender agregadas
  • SQL Server instalado en modo de autenticación mixta
  • TCP/IP habilitado y puerto 1433 definido
  • Memoria del SQL Server limitada
  • Base de datos creada/restaurada y login dedicado configurado
  • Estructura de directorios organizada en C:\MuServer
  • Cadenas de conexión de los .ini ajustadas
  • ConnectServer apuntando al IP público
  • Reglas de firewall creadas (Windows y proveedor)
  • Script StartAll.bat en el orden correcto
  • Puertos verificados con netstat y base de datos íntegra

Conclusión

Configurar el Windows Server desde cero para MU Online es una secuencia de dependencias: el sistema necesita los runtimes, el GameServer necesita la base de datos, la base de datos necesita el TCP/IP habilitado, y todo el conjunto necesita iniciar en el orden correcto. Siguiendo los pasos de esta guía — preparación del sistema, SQL Server optimizado, archivos organizados, firewall escueto e inicialización secuencial — llegas a un servidor que levanta estable y acepta conexiones. A partir de aquí, el próximo movimiento natural es blindar esa base contra ataques con un proceso de hardening completo, cubriendo RDP, cuentas, actualizaciones y monitoreo.

Preguntas frecuentes

¿Qué versión de Windows Server usar para MU Online?

Windows Server 2019 o 2022 son las opciones más seguras hoy: tienen buen soporte, corren los runtimes modernos y son compatibles con la mayoría de los paquetes MuServer. Versiones muy antiguas como 2008 R2 aún funcionan con paquetes legados, pero quedan sin actualizaciones de seguridad. La compatibilidad varía según el paquete.

¿Por qué el GameServer se cierra apenas se abre?

En la aplastante mayoría de los casos es un runtime de Visual C++ ausente o base de datos inaccesible. Instala los paquetes Visual C++ (2010, 2013, 2015-2022) en x86 y x64, confirma que el SQL Server esté corriendo con TCP/IP habilitado y que la cadena de conexión en los archivos .ini sea correcta. Revisa siempre el log en GameServer\\Logs.

¿Necesito instalar el SQL Server en la misma máquina del GameServer?

No es obligatorio, pero en servidores pequeños y medianos es el estándar por simplicidad y latencia cero entre base de datos y juego. Cuando el SQL y el GameServer se disputan demasiado los recursos, separarlos en dos máquinas ayuda. La decisión depende del tamaño del servidor y del VPS contratado.

¿Cuál es el orden correcto de iniciar los servicios de MU?

Primero el DataServer, después el EventServer (si lo hay), en seguida el ConnectServer y por último el GameServer. Iniciar fuera de ese orden hace que el GameServer no encuentre el DataServer y se cierre. Un script .bat con pausas entre cada etapa garantiza la secuencia.

¿Debo desactivar el Windows Defender en el servidor?

No. Los VPS con IP público son barridos por escáneres todo el tiempo. En vez de desactivar la protección, agrega exclusiones de carpeta y de proceso para los ejecutables del MuServer, evitando falsos positivos sin renunciar a la seguridad. Refuérzalo después con un hardening dedicado.

BR
Editor de eventos, mapas e ítems

Bruno es especialista en eventos, mapas, bosses y economía de ítems de MU Online. Documenta cada detalle basándose en el juego real.

Sigue leyendo

Artículos relacionados