Configurar txAdmin pra FiveM no Windows Server do zero
Instale e configure o txAdmin pra gerenciar seu servidor FiveM em VPS Windows do zero — chave Cfx.re, recipe, firewall, persistência como serviço e acesso web.
txAdmin é o painel oficial pro FiveM desde 2022 — administra o servidor pelo navegador, controla start/stop, monitora crashes, gerencia jogadores e dá acesso multi-admin sem precisar deixar RDP aberto. Quem ainda roda FXServer “na mão” via FXServer.exe num CMD perde reinício automático em crash, backup de banco e logs estruturados.
Este tutorial cobre a instalação do zero numa VPS Windows: download oficial, geração da chave Cfx.re, criação do servidor via recipe, liberação no firewall e persistência como serviço do Windows pra subir no boot. No final, o painel responde em http://seu-ip:40120 e o servidor de jogo na porta 30120.
Tempo estimado: 25 a 35 minutos do zero, dependendo da velocidade de download dos artefatos e do banco MySQL (se for usar recipe ESX ou QBCore que baixa schemas).
Pré-requisitos
Windows Server 2019, 2022 ou 2025 com acesso RDP de administrador, mínimo 4 GB de RAM livre, ~5 GB de disco e conexão internet estável. Conta gratuita em keymaster.fivem.net pra gerar a chave Cfx.re. PowerShell aberto como administrador e Visual C++ Redistributable 2019/2022 instalado (vem por padrão em VPS Windows Server da Hostini).
30120 (UDP + TCP) 40120 (TCP) Latest Recommended 4 GB livres Antes de prosseguir, confirme que o servidor tem IP público acessível e que você consegue resolver runtime.fivem.net de dentro dele — a primeira execução do servidor baixa artefatos adicionais e bloqueio de DNS quebra o setup.
Baixe o FXServer (txAdmin já vem junto)
Desde 2022 o txAdmin é distribuído dentro do mesmo zip oficial do FXServer. Não baixe txAdmin separado de releases antigas — a versão correta sempre vem do servidor de artefatos oficial da Cfx.re.
Crie a estrutura de diretórios e baixe o artefato mais recente pelo PowerShell:
New-Item -ItemType Directory -Force -Path C:\FXServer\server, C:\FXServer\server-data
cd C:\FXServer\server
$artifactsPage = Invoke-WebRequest -Uri "https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/" -UseBasicParsing
$latestLink = ($artifactsPage.Links | Where-Object { $_.href -match '\d+-[a-f0-9]+/server\.zip$' } | Select-Object -First 1).href
$downloadUrl = "https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/$latestLink"
Invoke-WebRequest -Uri $downloadUrl -OutFile server.zip
Expand-Archive -Path server.zip -DestinationPath . -Force
Remove-Item server.zipEsse script pega o link “Latest Recommended” automaticamente — não precisa copiar à mão. O resultado fica em C:\FXServer\server\ com FXServer.exe na raiz.
Confirme que o binário roda e mostra a versão:
C:\FXServer\server\FXServer.exe -vSaída esperada: algo como FXServer master 12345 win32-x64. Se aparecer erro de DLL ausente, instale Visual C++ Redistributable 2019 (vc_redist.x64.exe do site da Microsoft) e tente de novo.
A pasta server\ contém o binário (atualiza com cada release nova). A pasta server-data\ contém recursos, banco e configurações (persistente, você não toca quando atualiza). Misturar os dois força você a reconfigurar tudo a cada update do FXServer — não vale a pena.
Gere a chave Cfx.re
Toda instância pública de FiveM precisa de uma chave de licença gerada em keymaster.fivem.net. A chave amarra o IP do servidor e a porta — sem ela, o servidor sobe mas não aparece na lista pública e jogadores recebem erro de conexão.
Acesse keymaster.fivem.net no navegador, faça login com sua conta Cfx.re (ou crie uma gratuita), clique em “New” e preencha:
- Server hostname: nome do seu servidor (ex:
MeuFiveM BR) - IP: IP público da VPS
- Server type: “FXServer (recommended)”
Copie a chave gerada — formato cfxk_XXXXXXXXX_XXXXXXXXX. Você vai colar no server.cfg no próximo passo.
Configure o servidor via txAdmin
A primeira execução do FXServer dispara o txAdmin em modo “setup” — ele abre o painel web num PIN único, e você escolhe um recipe (template) que monta o server.cfg, instala recursos base e provisiona o banco MySQL (se necessário).
Inicie o txAdmin pela primeira vez:
cd C:\FXServer\server
.\FXServer.exe +set serverProfile default +set txAdminPort 40120No console vai aparecer uma linha tipo:
[txAdmin] PIN for first-time setup: 1234
[txAdmin] Web Panel: http://localhost:40120Anote o PIN. Ele expira em 5 minutos.
Acesse o painel pelo navegador. Em VPS, use o IP público:
http://SEU-IP-PUBLICO:40120Cole o PIN, crie usuário master (login + senha — anote, é a credencial admin do painel) e siga o wizard:
- Server data folder:
C:\FXServer\server-data - Recipe: escolha “ESX Legacy”, “QBCore” ou “Default” conforme seu projeto
- License key: cole a chave Cfx.re do passo 03
- Database: se o recipe pedir MySQL, preencha host
127.0.0.1, usuário, senha e database (precisa ter MySQL instalado na VPS antes)
O painel em http://seu-ip:40120 fica exposto pra qualquer um que escanear a porta. Pra produção, restrinja a porta 40120 no Windows Firewall apenas ao seu IP de administração — jogadores não precisam acessar o painel, só você. A porta 30120 (jogo) fica liberada pra todos.
Libere as portas no Windows Firewall
O Windows Firewall vem bloqueando portas inbound por padrão. Sem regras explícitas, o servidor sobe mas ninguém conecta.
Crie as regras inbound pelo PowerShell (substitua SEU-IP-ADMIN pelo seu IP residencial pra restringir o painel):
New-NetFirewallRule -DisplayName "FiveM Game UDP" -Direction Inbound -Protocol UDP -LocalPort 30120 -Action Allow
New-NetFirewallRule -DisplayName "FiveM Game TCP" -Direction Inbound -Protocol TCP -LocalPort 30120 -Action Allow
New-NetFirewallRule -DisplayName "txAdmin Panel" -Direction Inbound -Protocol TCP -LocalPort 40120 -RemoteAddress SEU-IP-ADMIN -Action AllowSe você não quer restringir o painel (acesso de qualquer IP), remova -RemoteAddress SEU-IP-ADMIN da última linha. Não é recomendado em produção.
Persista o servidor como serviço do Windows
Rodar FXServer.exe num PowerShell aberto via RDP funciona pra teste, mas o servidor morre quando você desconecta. Em produção, registre como serviço usando NSSM — ele sobe no boot, reinicia em crash e roda sem sessão interativa.
Baixe NSSM e descompacte em C:\Tools\nssm\:
New-Item -ItemType Directory -Force -Path C:\Tools\nssm
Invoke-WebRequest -Uri "https://nssm.cc/release/nssm-2.24.zip" -OutFile C:\Tools\nssm.zip
Expand-Archive -Path C:\Tools\nssm.zip -DestinationPath C:\Tools\nssm -Force
Remove-Item C:\Tools\nssm.zip
$env:Path += ";C:\Tools\nssm\nssm-2.24\win64"Registre o servidor como serviço Windows:
nssm install FiveM "C:\FXServer\server\FXServer.exe" "+set serverProfile default +set txAdminPort 40120"
nssm set FiveM AppDirectory "C:\FXServer\server"
nssm set FiveM AppStdout "C:\FXServer\server-data\logs\stdout.log"
nssm set FiveM AppStderr "C:\FXServer\server-data\logs\stderr.log"
nssm set FiveM AppRotateFiles 1
nssm set FiveM AppRotateBytes 10485760
nssm set FiveM Start SERVICE_AUTO_START
nssm start FiveMO serviço vai subir e ficar com status Running. A partir daqui, ele sobe no boot da VPS automaticamente.
Se você deixou o FXServer.exe rodando num PowerShell e iniciar o serviço NSSM, vai ter dois processos disputando a porta 30120 — o segundo crasha em loop. Feche o PowerShell ou rode Stop-Process -Name FXServer -Force antes do nssm start.
Verificação
Confirme que o servidor está respondendo nas duas portas e aparecendo pra jogadores.
Cheque o status do serviço e teste a porta:
Get-Service FiveM
Test-NetConnection -ComputerName localhost -Port 40120
Test-NetConnection -ComputerName localhost -Port 30120Status esperado: Running no serviço, TcpTestSucceeded: True na porta 40120 e resposta ICMP/TCP na 30120.
Abra o cliente FiveM no seu PC, vá em “Servers > Direct Connect” e digite:
SEU-IP-PUBLICO:30120Se conectar e carregar o mundo, o setup está completo. Se aparecer “couldn’t connect”, confirme as regras de firewall e que o serviço está Running.
Resolução de problemas
”Server is using an invalid license key”
A chave Cfx.re foi gerada com IP errado ou hostname incompatível. Volte em keymaster.fivem.net, edite a chave existente colocando o IP atual da VPS e salve. A mudança propaga em ~30 segundos. Reinicie o serviço com nssm restart FiveM.
txAdmin não abre no navegador (timeout)
Provavelmente a porta 40120 não está liberada no Windows Firewall, ou o -RemoteAddress da regra está restringindo de um IP que não é o seu. Rode Get-NetFirewallRule -DisplayName "txAdmin Panel" | Get-NetFirewallAddressFilter pra ver o IP autorizado e ajuste se necessário.
Servidor crasha em loop logo após o boot
Quase sempre é resource quebrado. Pare o serviço, rode manualmente .\FXServer.exe +set serverProfile default e leia o erro no console — geralmente aponta o resource exato no +exec server.cfg. Comente a linha do recurso problemático no server-data\server.cfg e reinicie.
Próximos passos
- Backup automático do banco: agende
mysqldumpvia Task Scheduler — perder o banco MySQL com 200 jogadores cadastrados é o pior dia da sua semana. - Reverse proxy com HTTPS: coloque Caddy ou Nginx na frente do painel txAdmin pra acesso via
painel.seudominio.comcom TLS válido. - Monitoramento de RAM/CPU: FiveM com 32+ slots e mods pesados sobe consumo facilmente — use o próprio painel txAdmin ou ferramenta externa.
- Whitelist de admins: configure usuários adicionais no painel com permissões granulares (kick, ban, restart) sem dar a senha master.
Se você está colocando em produção, uma VPS Windows Hostini já vem com porta 30120 liberada por padrão na proteção DDoS e clock alto otimizado pra game servers single-threaded como FiveM — economiza o tuning de rede inicial e mantém latência abaixo de 30 ms na maioria da rota brasileira.
Perguntas frequentes
Preciso de chave Cfx.re separada pra cada servidor FiveM?
Sim. Cada servidor (cada instância txAdmin rodando em porta diferente) precisa da própria chave gerada em keymaster.fivem.net. A chave amarra IP + porta — rodar duas instâncias com a mesma chave faz o segundo subir mas ele não aparece na lista pública do FiveM. Geração é gratuita e instantânea pela conta Cfx.re.
Qual a diferença entre txAdmin e FXServer puro?
FXServer é o binário que roda o servidor FiveM em si. txAdmin é um wrapper escrito em Node.js que sobe junto, expõe um painel web (porta 40120 por padrão), gerencia start/stop, monitora crash, faz backup do banco e dá acesso multiusuário ao servidor. Desde 2022 a Cfx.re distribui os dois juntos no mesmo zip — txAdmin não é opcional pra setup novo.
Posso rodar txAdmin sem porta 30120 aberta?
Não pra servidor jogável. A porta 30120 (UDP + TCP) é a porta de jogo do FiveM — jogadores conectam diretamente nela. txAdmin usa a 40120 (TCP) só pro painel web, que pode ficar restrito ao seu IP. Mas se você fechar a 30120, ninguém conecta no servidor. Em VPS Hostini, libere ambas no Windows Firewall.
txAdmin pede senha master no primeiro acesso e eu perdi — como reseto?
Pare o serviço, abra PowerShell no diretório do servidor e rode `FXServer.exe +set txAdmin-resetPassword 1`. Ele imprime um PIN de 4 dígitos no console. Volte no painel web, use o PIN pra criar nova senha. Esse comando só funciona com o serviço parado — txAdmin não permite reset com instância ativa.
O painel web roda em HTTP — como coloco HTTPS?
Coloque um reverse proxy na frente. Nginx ou Caddy em outra VPS (ou na mesma) com Let's Encrypt resolve em 5 minutos. Aponte o proxy_pass pra http://127.0.0.1:40120 e configure os headers X-Forwarded-For / X-Forwarded-Proto. txAdmin respeita esses headers e gera links absolutos com https://. Não tente terminar TLS direto no Node — não é suportado.
Quanto de RAM um servidor FiveM com txAdmin consome?
Servidor vazio em loop padrão: ~600 MB. Com 32 slots ativos, mapa cidade completo e 40-60 resources típicos (ESX/QBCore): 4-6 GB de RAM. txAdmin em si consome ~150 MB. Pra produção com 64+ slots, dimensione 8 GB de RAM e CPU com clock alto — FiveM é single-threaded no script main, clock vence núcleo.