Krak Server
O Krak Server é o agente de servidor do Krak Multiplayer: um programa pequeno para servidor dedicado ou VPS que hospeda pelo Krak Multiplayer, o tempo todo, os servidores de Minecraft que rodam ali. Você o controla pelo app no celular ou no PC.
Configure em 6 passos
Você precisa da máquina onde o seu servidor de Minecraft roda (uma VPS, um servidor dedicado ou um PC de casa) e do Krak Multiplayer no celular ou no PC. Você digita um comando na máquina; todo o resto acontece no app.
- Inicie seu servidor de Minecraft nessa máquina como de costume: um Bedrock Dedicated Server, um servidor Java ou Java com Geyser.
- Abra um terminal nessa máquina como administrador. Windows: clique com o botão direito no botão Iniciar e escolha Terminal (Admin) ou Windows PowerShell (Admin). Linux: abra um terminal ou conecte-se por SSH.
- Copie abaixo o comando de instalação do seu sistema (botão Copiar), cole no terminal e aperte Enter. No Linux, digite sua senha se o sudo pedir.
- Espere até um minuto. O comando baixa o Krak Server, confere, instala e mostra um código de pareamento grande como 7Q4M-X2PA e um link. Você não precisa digitar mais nada ali.
- No celular ou no PC, abra o Krak Multiplayer, toque no botão + e depois em Hospedar um servidor remoto, e digite o código (ou abra o link). Confira o nome do servidor e aprove.
- Escolha qual servidor de Minecraft da máquina compartilhar e como qual mundo, e toque em Salvar. Seu mundo fica online para os amigos sempre que a máquina estiver ligada.
Instalar no Linux
Cole isto em um terminal e aperte Enter (o sudo pode pedir sua senha):
curl -fsSL https://krak-mp.cc/download/server/install.sh | sudo sh
O script escolhe a versão para o seu processador, confere o SHA-256, instala o Krak Server como o serviço de sistema krak-server, inicia o serviço e mostra o código de pareamento. Depois, sudo krak-server status mostra o código de novo. Manualmente: baixe o arquivo para o seu processador na página de download, compare o SHA-256, descompacte com tar xzf e execute sudo ./krak-server install. Rodar o instalador de novo atualiza o Krak Server.
Instalar no Windows
Abra o PowerShell como administrador (clique com o botão direito no botão Iniciar, Terminal (Admin)), cole isto e aperte Enter:
irm https://krak-mp.cc/download/server/install.ps1 | iex
Isso instala o serviço do Windows Krak Server, que inicia com o Windows e reinicia depois de uma falha, adiciona o krak-server.exe ao PATH e mostra o código de pareamento. Depois, krak-server.exe status em qualquer terminal de administrador novo mostra o código de novo; o programa fica em C:\Program Files\Krak Server.
Para testar antes sem instalar: baixe o zip, descompacte e execute o krak-server.exe em um console. Ele pareia e hospeda até você fechá-lo.
O que ele faz
O Krak Server entra com um código de pareamento, nunca com a sua senha. Ele encontra os servidores Bedrock e Java na mesma máquina e compartilha os que você escolher no app como mundos do Krak. Os jogadores entram neles pelo Krak Multiplayer como em qualquer outro mundo: o servidor aparece na própria lista de LAN do Minecraft.
O tráfego do jogo passa pelo relay do Krak. Os jogadores nunca veem o endereço IP do servidor, e o servidor nunca vê o deles. O Krak Server não abre portas nem precisa de redirecionamento de portas: ele só se conecta para fora, a krak-mp.cc.
Você controla o servidor pelo app: toque em + e depois em Hospedar um servidor remoto, ou abra Meus mundos, onde seus servidores aparecem. Ali você escolhe o que hospedar, inicia e para, e vê os jogadores, os pedidos para entrar, as expulsões, os banimentos e a saúde dele. Essa tela diz Controle remoto, para nunca ser confundida com hospedar no seu próprio dispositivo.
Requisitos
- Linux em x86_64 ou ARM64 (systemd para o serviço que roda o tempo todo), ou Windows 10, 11 ou Server 2019 e mais recentes em x64.
- Um Bedrock Dedicated Server, um servidor Java (Paper, Fabric e outros) ou um servidor Java com Geyser na mesma máquina.
- Uma conta Krak Multiplayer com e-mail confirmado ou login com o Google, e o app 0.8.5 ou mais recente para parear e controlar o servidor (o botão + a partir da 0.8.6).
- Cerca de 15 MB de disco e 40 MB de memória. Ao lado do servidor de jogo, o Krak Server usa muito pouca CPU.
Pareie com sua conta
- O comando de instalação mostra o código de pareamento no final. Depois, ou quando o código expirar, execute sudo krak-server status na máquina (no Windows: krak-server.exe status em um terminal de administrador).
- No Krak Multiplayer, toque em + e depois em Hospedar um servidor remoto, e digite o código, ou abra o link no seu celular. No app 0.8.5: Perfil, Meus servidores, Adicionar um servidor.
- Confira o nome, o sistema e a rede do servidor e aprove. O código vale por 10 minutos; depois, o servidor mostra um novo.
Só aprove um código mostrado por um servidor que você controla. Quem pede um código para você quer hospedar em seu nome.
Escolha o que hospedar
Abra o servidor (em Meus mundos, ou + e depois Hospedar um servidor remoto) e toque em Hospedar neste servidor. Escolha um servidor encontrado na máquina e depois um dos seus Mundos locais ou um novo. Nome, descrição, ícone, acesso e as outras configurações do mundo são editados no app como de costume.
Uma conta hospeda um mundo por vez, com ou sem Krak Plus: um mundo no seu celular ou PC, um servidor hospedado pelo app ou um mundo em um Krak Server. Um servidor crossplay (Paper com Geyser) é um mundo com as duas edições. Você pode parear até 2 servidores, ou 7 com o Krak Plus, e manter um mundo em cada: ative a hospedagem naquele que você quiser agora. Com o Krak Plus, seu servidor externo pode continuar listado enquanto isso, a menos que seja o mesmo servidor.
A aprovação de entrada funciona, mas os pedidos expiram depois de 2 minutos. Para um servidor que roda enquanto você dorme, desative a aprovação e use as configurações de acesso e os banimentos do mundo.
Configurações do Bedrock Dedicated Server
Jogadores do Krak entram pela lista de LAN, então o servidor precisa aceitar jogadores de LAN. No server.properties, defina:
enable-lan-visibility=true
online-mode=false
allow-list=false
Com online-mode=false, o servidor não verifica o login do Xbox. Se a porta do próprio servidor também estiver aberta para a internet, jogadores que se conectam direto a ele podem entrar com qualquer nome, até o de um operador. Mantenha a porta Bedrock fechada para a internet ou aceite jogadores diretos não verificados.
Só um servidor Bedrock por máquina pode ficar visível na LAN: ele ocupa a porta UDP 7551. O Minecraft 1.26.52 e mais recentes só deixam jogadores do Krak entrarem desse jeito, então um segundo servidor Bedrock na mesma máquina não pode ser compartilhado: o Krak Server não o hospeda e o app diz por quê. Pare o outro servidor ou ative o RakNet no segundo. Reinicie o servidor depois de mudar essas configurações.
Servidores Java
Um servidor Java não precisa de nada especial: o Krak Server se conecta à porta do servidor na mesma máquina. Em um servidor com online-mode, os jogadores precisam do Minecraft: Java Edition, como sempre.
Geyser: jogadores Bedrock em um servidor Java
Com o Geyser no Paper, no Spigot ou em um proxy, os jogadores Bedrock entram pela porta Bedrock do Geyser, e o Krak Server compartilha essa porta como um servidor Bedrock. Um Geyser padrão recusa todo jogador Bedrock que chega pelo Krak: aparece “Please log into Xbox”, porque ele entra como um jogo em LAN, sem a verificação de login do Xbox que o Geyser espera. O Krak Server não vê essa recusa, então o app não consegue avisar você. Configure isto no config.yml do Geyser (plugins/Geyser-Spigot/config.yml no Paper e no Spigot):
validate-bedrock-login: false
Depois reinicie o servidor. O Geyser deixa de verificar o login do Xbox dos jogadores Bedrock: mantenha a porta Bedrock dele (19132 por padrão) fechada para a internet, senão jogadores que se conectam direto a ela podem entrar com qualquer nome Bedrock. O Krak não precisa de porta aberta.
Os jogadores Java não são afetados, e o servidor Java pode manter online-mode=true. Com o Floodgate, jogadores Bedrock entram sem conta Java; sem o Floodgate, o Geyser pede que cada jogador Bedrock entre com uma conta Java.
O Krak chega ao Geyser pelo RakNet. A expectativa é que o Minecraft 26.60 acabe com as entradas por RakNet, então jogadores Bedrock na 26.60 podem não conseguir entrar pelo Krak até o Geyser dar suporte a eles.
Docker
Rode o contêiner do servidor de jogo com a rede do host (--network host), para que o Krak Server, instalado no host, veja a descoberta de LAN e as portas dele.
Configurações
O Krak Server lê /etc/krak-server/config.json no Linux e %ProgramData%\Krak Server\config.json no Windows. Todas as chaves são opcionais, e chaves desconhecidas são recusadas. Verifique o arquivo com krak-server config check e reinicie o serviço depois de uma mudança.
Atualizações
O Krak Server procura atualizações assinadas a cada 6 horas e as instala sozinho: na janela de atualização, ou assim que ninguém estiver jogando ou a atualização for obrigatória. O mundo hospedado reinicia e os jogadores voltam pela lista de LAN. No app, Atualizar agora instala uma atualização na hora.
No Linux, o serviço instala a atualização ao reiniciar, em segundos. No Windows, quem a instala em até 15 minutos é a tarefa agendada Krak Server\Apply update: ela roda como SYSTEM, para o serviço, troca o programa, inicia de novo e confere se a nova versão está funcionando. Se a nova versão não iniciar, a anterior volta. O krak-server status mostra uma atualização pendente e quando a tarefa rodou pela última vez.
Para instalar uma atualização na hora no Linux:
sudo krak-server update
No Windows, no PowerShell como administrador (com o caminho completo funciona em qualquer janela):
& "C:\Program Files\Krak Server\krak-server.exe" update
Executar o comando de instalação de novo também atualiza o Krak Server. Ele mantém o pareamento e as configurações e cria de novo a tarefa de atualização do Windows, por exemplo depois de uma instalação com --no-auto-update.
Status e logs
krak-server status mostra a qual conta o servidor está pareado, o código de pareamento enquanto ele espera, a conexão, cada mundo hospedado e os jogadores. No Linux, os logs ficam no journal:
sudo krak-server status
journalctl -u krak-server -f
No Windows, eles ficam em %ProgramData%\Krak Server\logs. Os logs nunca contêm tokens, chaves ou endereços dos jogadores.
Remover um servidor
No app: abra o servidor (Meus mundos), o menu dele, Remover servidor. O servidor para de hospedar na hora e não consegue entrar de novo. Depois, ele mostra sozinho um novo código de pareamento, para esta conta ou para outra.
Na máquina: sudo krak-server unpair remove o pareamento; sudo krak-server uninstall remove o serviço e, com --purge, também as configurações e os dados dele.
Trocar ou redefinir sua senha, sair de todos os lugares e um banimento também desconectam todos os servidores da conta.
Solução de problemas
O código expirou
Um código vale por 10 minutos. O servidor mostra um novo sozinho: execute krak-server status de novo.
O relógio está errado (diferença de horário)
O Krak Server entra usando o horário da máquina. Ative a sincronização de horário: timedatectl set-ntp true no Linux, o serviço Horário do Windows no Windows.
O servidor de jogo não é encontrado
Inicie o servidor de jogo primeiro e confira se ele responde na máquina (para Bedrock: enable-lan-visibility=true). Depois toque em Buscar de novo no app.
A porta não é permitida
O servidor de jogo roda em uma porta fora de allow. Adicione a porta a allow no arquivo de configuração na máquina e reinicie o Krak Server.
Jogadores são recusados
Confira online-mode e allow-list no server.properties. A saúde do servidor no app mostra as recusas e o motivo delas.
Jogadores Bedrock veem “Please log into Xbox”
É o Geyser recusando jogadores que chegam pelo Krak. Defina validate-bedrock-login: false no config.yml do Geyser e reinicie o servidor (veja Geyser acima). O app não consegue mostrar essa recusa.
krak-server.exe não é reconhecido
O Krak Server adiciona a pasta dele ao PATH na instalação: abra um terminal novo. Ou execute com o caminho completo: "C:\Program Files\Krak Server\krak-server.exe" status (no PowerShell, coloque & na frente). Instalou antes da 0.8.6? Execute o comando de instalação de novo.
Ninguém consegue entrar em um segundo servidor Bedrock
Dois servidores Bedrock rodam em uma máquina e o outro está com a visibilidade na LAN (porta UDP 7551). A partir do Minecraft 1.26.52, um servidor Bedrock só recebe jogadores do Krak pela visibilidade na LAN, então o app mostra este servidor como parado. Compartilhe um servidor Bedrock por máquina: pare o outro e reinicie este, ou ative o RakNet neste.
O app diz que outro mundo já está sendo hospedado
Uma conta hospeda um mundo por vez, com ou sem Krak Plus. Enquanto um mundo roda no seu celular, no seu PC ou em outro Krak Server, este servidor espera e começa sozinho em segundos quando aquele mundo parar. Para trocar, pare o outro mundo (o app oferece Parar) ou desative a hospedagem do mundo deste servidor no app.
A instalação diz que o servidor já está pareado
O Krak Server continua pareado com a conta que aprovou o código dele, mesmo quando o comando de instalação roda de novo. Para passar o servidor para outra conta, o dono o remove no app (Meus mundos ou o controle remoto dele, Remover servidor): o servidor então mostra sozinho um novo código de pareamento, veja com krak-server status. Ou na máquina: sudo krak-server unpair (no Windows: krak-server.exe unpair em um terminal de administrador).
Uma atualização foi baixada, mas não instalada
No Windows, uma tarefa agendada instala as atualizações, mas o Krak Server antes da 0.8.9.1 nunca pedia isso a ela, então um servidor Windows ficava na versão com que foi instalado. Instale a atualização uma vez, no PowerShell como administrador: & "C:\Program Files\Krak Server\krak-server.exe" update (ou execute o comando de instalação de novo); depois as atualizações se instalam sozinhas. Se uma atualização esperar mais de 30 minutos, o krak-server status diz por quê e qual comando a instala. No Linux: sudo krak-server update.
O Krak Server está parado (NOT RUNNING)
Inicie-o: no PowerShell como administrador, sc.exe start KrakServer (no PowerShell, sc sozinho é outro comando); no Linux, sudo systemctl start krak-server. Um minuto depois, o krak-server status deve mostrar online. Se ele parar de novo, o log diz por quê: %ProgramData%\Krak Server\logs no Windows, journalctl -u krak-server no Linux. Desde a 0.8.9.1, se a nova versão de uma atualização não iniciar, a anterior volta sozinha.
Minecraft é uma marca registrada da Mojang Synergies AB. O Krak Multiplayer não é um produto oficial do Minecraft e não é aprovado pela Mojang ou pela Microsoft nem associado a elas.