O maior portal de MU Online do Brasil — desde 2003
Tutorial Avançado Infraestrutura

Como configurar o Windows Server do zero para MU Online

Configure um Windows Server limpo para MU Online: sistema, runtimes, SQL Server, diretórios, firewall e serviços na ordem correta até o servidor subir estável.

BR Bruno · Atualizado em 10 jul 2024 · ⏱ 16 min de leitura
Resposta rápida

Um Windows Server recém-provisionado é uma folha em branco: sem runtimes, sem banco de dados, com serviços inúteis ligados e um firewall que ou bloqueia tudo ou nada. Transformar essa máquina limpa em uma base sólida para MU Online exige seguir uma ordem específica — sistema, runtimes, SQL Server, d

Um Windows Server recém-provisionado é uma folha em branco: sem runtimes, sem banco de dados, com serviços inúteis ligados e um firewall que ou bloqueia tudo ou nada. Transformar essa máquina limpa em uma base sólida para MU Online exige seguir uma ordem específica — sistema, runtimes, SQL Server, diretórios, arquivos de configuração, firewall e inicialização — porque cada etapa depende da anterior. Pular uma delas costuma resultar no clássico GameServer que abre e fecha em um segundo. Este guia percorre o processo completo, do primeiro acesso RDP até os processos do servidor subindo de forma estável. Caminhos, versões e portas aqui são exemplos e variam conforme o pacote e a versão do MU.

Pré-requisitos

  • VPS ou máquina com Windows Server 2019/2022 limpo e acesso Administrador.
  • Acesso RDP (IP público, usuário e senha do provedor).
  • Instalador do SQL Server compatível (2017 ou 2019 são seguros para servidores modernos).
  • SQL Server Management Studio (SSMS) para administrar o banco.
  • Pacote do MuServer correspondente à versão desejada (ConnectServer, DataServer, GameServer, EventServer) e os scripts .sql de criação/restauração do banco.
  • Pacotes Visual C++ Redistributable (2010, 2013, 2015-2022, x86 e x64).
  • Noção da estrutura geral do servidor — se ainda não a tem, revise o guia de como criar um servidor de MU Online.

Parte 1 — Preparação do sistema operacional

Passo 1: Primeiro acesso e identificação da máquina

Conecte via RDP com o usuário Administrator. Abra o PowerShell como Administrador e renomeie a máquina para facilitar a leitura de logs, além de ajustar o fuso horário:

# Renomear o servidor (reinicia ao final)
Rename-Computer -NewName "MU-PROD-01" -Restart

# Após o reboot, definir fuso horário do Brasil (UTC-3)
Set-TimeZone -Id "E. South America Standard Time"

# Conferir build e versão do Windows
[System.Environment]::OSVersion.Version

Passo 2: Atualizar o Windows antes de instalar qualquer coisa

Aplique as atualizações pendentes primeiro — instalar o SQL Server sobre um sistema desatualizado pode gerar falhas de dependência. Depois, configure o Windows Update para não reiniciar sozinho, evitando que a máquina caia com jogadores online.

# Definir para baixar e notificar, sem reinício automático
# (via Política de Grupo: gpedit.msc → Windows Update)
# Configuração do Computador → Modelos Administrativos →
# Componentes do Windows → Windows Update →
# "Configurar Atualizações Automáticas" = opção 3 (baixar e notificar)

Passo 3: Desabilitar serviços desnecessários

Um servidor de jogo não precisa de indexação de busca, impressão ou pré-carregamento de apps. Desligá-los libera CPU e I/O:

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

# SysMain (Superfetch) — inútil em servidor
Set-Service -Name "SysMain" -StartupType Disabled
Stop-Service -Name "SysMain" -Force

# Print Spooler — sem impressora em VPS
Set-Service -Name "Spooler" -StartupType Disabled
Stop-Service -Name "Spooler" -Force

Passo 4: Instalar os runtimes Visual C++

Os binários do MuServer são compilados esperando runtimes específicos. A ausência deles é a causa número um do GameServer que fecha ao abrir. Instale todos na seguinte cobertura, x86 e x64:

  • Visual C++ 2010 Redistributable
  • Visual C++ 2013 Redistributable
  • Visual C++ 2015-2022 Redistributable
Dica: Mesmo em Windows Server 64 bits, instale sempre as versões x86 dos runtimes: a maioria dos executáveis de MuServer Season 6 é compilada em 32 bits e depende delas.

Passo 5: Adicionar exclusões no Windows Defender

Muitos executáveis de MuServer são detectados como falso positivo. Em vez de desligar o antivírus, exclua apenas as pastas e processos do 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 — Instalação e configuração do SQL Server

Passo 6: Instalar o SQL Server

Execute o instalador escolhendo a instalação Personalizada e marque, no mínimo, Database Engine Services. Configure a instância como Default Instance (MSSQLSERVER), o que dispensa especificar nome de instância nas strings de conexão do MuServer. Durante a instalação, selecione o modo de autenticação mista (SQL Server e Windows) e defina uma senha forte para o usuário sa.

Passo 7: Habilitar TCP/IP e a porta 1433

Abra o SQL Server Configuration Manager:

  1. Expanda SQL Server Network Configuration → Protocols for MSSQLSERVER.
  2. Habilite TCP/IP (botão direito → Enable).
  3. Duplo clique em TCP/IP → aba IP Addresses → em IPAll, defina TCP Port = 1433.
  4. Reinicie o serviço em services.mscSQL Server (MSSQLSERVER).

Passo 8: Limitar a memória do SQL Server

Sem limite, o SQL Server consome quase toda a RAM e deixa o GameServer sem recursos. Ajuste conforme o total da VPS (o exemplo abaixo é para uma máquina de 4 GB):

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

-- Reservar no máximo 2 GB para o SQL em uma VPS de 4 GB
EXEC sp_configure 'max server memory', 2048;
RECONFIGURE;

Passo 9: Criar o banco e o usuário dedicado

Nunca use o sa na string de conexão do servidor. Crie um login exclusivo:

-- Banco principal com a collation esperada pelo MU
CREATE DATABASE MuOnline COLLATE Latin1_General_CI_AS;
GO
CREATE DATABASE MuOnlineLog COLLATE Latin1_General_CI_AS;
GO

-- Login dedicado ao 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

Passo 10: Restaurar ou criar as tabelas do MuServer

Se o pacote traz um arquivo .bak, restaure-o; se traz scripts .sql, execute-os na ordem indicada pelo pacote. O caminho de dados varia por versão do SQL — o exemplo usa SQL Server 2019 (MSSQL15); em 2017 seria 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 — Organização dos arquivos do servidor

Passo 11: Estrutura de diretórios

Mantenha tudo sob uma raiz única, o que simplifica exclusões de antivírus, backups e permissões:

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

Passo 12: Configurar as strings de conexão

Ajuste os arquivos .ini para apontar ao SQL local. Os nomes exatos variam por pacote (DBConfig.ini, DBConnectConfig.ini, DSConfig.ini). Exemplo do GameServer:

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

E do DataServer:

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

Passo 13: Apontar o ConnectServer para o IP público

O cliente conecta o GameServer pelo IP que o ConnectServer informa. Use o IP público da VPS, nunca 127.0.0.1:

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

Parte 4 — Firewall e portas

Passo 14: Criar as regras de entrada

Abra apenas as portas necessárias. As portas exatas variam por pacote — confirme nos .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 abra a porta 1433 (SQL Server) para a internet. Com banco e GameServer na mesma máquina, todo o tráfego é local (127.0.0.1) e dispensa regra de firewall. Expor a 1433 é uma das falhas mais exploradas em servidores de MU.

Lembre-se também do firewall do provedor no painel da VPS, que é separado do firewall do Windows. As mesmas portas precisam estar liberadas lá.

Parte 5 — Inicialização e verificação

Passo 15: Script de inicialização na ordem correta

A ordem é obrigatória: DataServer → EventServer → ConnectServer → GameServer. Crie 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 os servicos iniciados.

Execute sempre como Administrador.

Passo 16: Verificar portas e conexão com o banco

# Confirmar que as portas estão ouvindo
netstat -ano | findstr ":44405 :55901 :55960"
-- Confirmar integridade do banco (a tabela varia por versão)
USE MuOnline;
GO
SELECT * FROM T_CommonServerInfo;
GO

Erros comuns e soluções

ErroCausa provávelSolução
GameServer abre e fechaRuntime VC++ ausenteInstalar todos os Visual C++ (x86 e x64)
GameServer não conecta ao bancoTCP/IP desabilitado ou credenciais erradasHabilitar TCP/IP, revisar os .ini e o login SQL
"Cannot connect to DataServer"Ordem de inicialização erradaSubir DataServer antes do GameServer
Cliente não entra no jogoIP interno no ConnectServerTrocar 127.0.0.1 pelo IP público
SQL consome toda a RAMSem limite de memóriaDefinir max server memory
Falso positivo do antivírusDefender bloqueando .exeAdicionar exclusões de pasta e processo
Portas fechadas externamenteFirewall do provedorLiberar portas no painel da VPS também
Servidor reinicia sozinhoWindows Update automáticoConfigurar para baixar e notificar

Checklist de lançamento

  • Windows Server renomeado e fuso horário ajustado
  • Atualizações aplicadas e reinício automático desativado
  • Serviços desnecessários desabilitados
  • Runtimes Visual C++ (x86 e x64) instalados
  • Exclusões do Windows Defender adicionadas
  • SQL Server instalado em modo de autenticação mista
  • TCP/IP habilitado e porta 1433 definida
  • Memória do SQL Server limitada
  • Banco criado/restaurado e login dedicado configurado
  • Estrutura de diretórios organizada em C:\MuServer
  • Strings de conexão dos .ini ajustadas
  • ConnectServer apontando para o IP público
  • Regras de firewall criadas (Windows e provedor)
  • Script StartAll.bat na ordem correta
  • Portas verificadas com netstat e banco íntegro

Conclusão

Configurar o Windows Server do zero para MU Online é uma sequência de dependências: o sistema precisa dos runtimes, o GameServer precisa do banco, o banco precisa do TCP/IP habilitado, e todo o conjunto precisa iniciar na ordem certa. Seguindo os passos deste guia — preparação do sistema, SQL Server otimizado, arquivos organizados, firewall enxuto e inicialização sequencial — você chega a um servidor que sobe estável e aceita conexões. A partir daqui, o próximo movimento natural é blindar essa base contra ataques com um processo de hardening completo, cobrindo RDP, contas, atualizações e monitoramento.

Perguntas frequentes

Qual versão do Windows Server usar para MU Online?

Windows Server 2019 ou 2022 são as escolhas mais seguras hoje: têm bom suporte, rodam os runtimes modernos e são compatíveis com a maioria dos pacotes MuServer. Versões muito antigas como 2008 R2 ainda funcionam com pacotes legados, mas ficam sem atualizações de segurança. A compatibilidade varia por pacote.

Por que o GameServer fecha assim que abre?

Na esmagadora maioria dos casos é runtime do Visual C++ ausente ou banco de dados inacessível. Instale os pacotes Visual C++ (2010, 2013, 2015-2022) em x86 e x64, confirme que o SQL Server está rodando com TCP/IP habilitado e que a string de conexão nos arquivos .ini está correta. Cheque sempre o log em GameServer\\Logs.

Preciso instalar o SQL Server na mesma máquina do GameServer?

Não é obrigatório, mas em servidores pequenos e médios é o padrão por simplicidade e latência zero entre banco e jogo. Quando o SQL e o GameServer disputam demais os recursos, separar em duas máquinas ajuda. A decisão depende do porte do servidor e da VPS contratada.

Qual a ordem correta de iniciar os serviços do MU?

Primeiro o DataServer, depois o EventServer (se houver), em seguida o ConnectServer e por último o GameServer. Iniciar fora dessa ordem faz o GameServer não encontrar o DataServer e fechar. Um script .bat com pausas entre cada etapa garante a sequência.

Devo desativar o Windows Defender no servidor?

Não. VPS com IP público são varridas por scanners o tempo todo. Em vez de desativar a proteção, adicione exclusões de pasta e de processo para os executáveis do MuServer, evitando falsos positivos sem abrir mão da segurança. Reforce depois com um hardening dedicado.

BR
Editor de eventos, mapas e itens

Bruno é especialista em eventos, mapas, bosses e economia de itens do MU Online. Documenta cada detalhe com base em jogo real.

Continue lendo

Artigos relacionados