Project-Zomboid-Ubuntu-Server

Servidor Dedicado de Project Zomboid no Ubuntu — Guia Completo

Guia passo a passo para instalar, configurar e rodar um servidor dedicado de Project Zomboid no Ubuntu 22.04 / 24.04 LTS com SteamCMD. Cobre configuração de firewall, RAM, instalação de mods, recuperação e os erros mais comuns. Funciona em qualquer provedor de VPS (Hostinger, DigitalOcean, Hetzner, Vultr, AWS, Linode, etc.).

Stars Forks License: MIT Ubuntu Linux


🇺🇸 English version


Índice

  1. Por que este guia?
  2. Pré-requisitos
  3. Instalação
  4. Configuração
  5. Rodando o Servidor
  6. Instalando Mods
  7. Gerenciamento do Servidor
  8. Solução de Problemas
  9. Perguntas Frequentes (FAQ)
  10. Créditos
  11. Licença

Por que este guia?

A maioria dos tutoriais para hospedar um servidor de Project Zomboid no Linux pula detalhes importantes como alocação de RAM, regras de firewall e gerenciamento de mods. Este guia foi feito com experiência real hospedando servidores e cobre tudo o que você precisa:


Pré-requisitos

Antes de começar, certifique-se de ter:


Instalação

1. Atualizar o sistema e configurar o firewall

sudo apt-get update && sudo apt-get upgrade -y

Ativar o UFW (firewall):

sudo ufw enable

⚠️ Importante: Se você está conectado via SSH, libere a porta SSH antes de ativar o firewall, senão você perderá o acesso:

sudo ufw allow 22        # SSH (porta padrão — altere se você usa outra porta)

Liberar as portas do servidor de Project Zomboid:

sudo ufw allow 16261/udp  # Porta principal do jogo (UDP)
sudo ufw allow 16262/udp  # Porta de conexão direta (UDP)
sudo ufw reload

Verificar se as regras estão ativas:

sudo ufw status

Você deve ver 16261 e 16262 listados como ALLOW.


2. Criar um usuário dedicado para o Steam

É uma boa prática rodar servidores de jogos com um usuário separado (não root):

sudo adduser steam
sudo usermod -aG sudo steam
sudo chown steam:steam /home/steam/ -R
sudo chmod -R 755 /home/steam/

3. Ativar suporte a 32-bit e instalar o SteamCMD

Ir para o diretório do usuário steam:

cd /home/steam

Ativar o repositório multiverse e suporte a 32-bit (necessário para o SteamCMD):

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install steamcmd -y

4. Baixar o Servidor Dedicado de Project Zomboid

Trocar para o usuário steam:

su - steam
cd ~
steamcmd

Dentro do SteamCMD, execute:

force_install_dir /home/steam/pzsteam
login anonymous
app_update 380870 validate
exit

380870 é o App ID do Project Zomboid Dedicated Server na Steam. É gratuito e pode ser baixado anonimamente, sem precisar ter o jogo.


Configuração

1. Definir a quantidade de RAM

Navegar até o diretório do servidor:

cd /home/steam/pzsteam

Editar o arquivo de configuração da JVM:

nano ProjectZomboid64.json

Encontre o parâmetro -Xmx e defina a quantidade de RAM desejada:

Exemplo de configuração de RAM


2. Importar configurações do servidor local (opcional mas recomendado)

A forma mais fácil de configurar as opções do servidor (mapa, loot, dificuldade, sandbox) é:

  1. Abra o Project Zomboid no seu PC Windows local
  2. Crie e configure um servidor pelo menu “Hospedar” do jogo
  3. Navegue até a pasta de configurações no Windows:
    C:\Users\<SeuUsuario>\Zomboid\Server\
    
  4. Copie estes três arquivos:
    • <nomeservidor>.ini
    • <nomeservidor>_SandboxVars.lua
    • <nomeservidor>_spawnregions.lua
  5. Faça upload deles para o servidor Linux em:
    /home/steam/Zomboid/Server/
    

    Usando SCP:

    scp C:\Users\<SeuUsuario>\Zomboid\Server\<nomeservidor>* steam@<ip-da-sua-vps>:/home/steam/Zomboid/Server/
    

    Ou use o FileZilla via SFTP (porta 22).


Rodando o Servidor

1. Iniciar uma sessão screen persistente

O screen mantém o servidor rodando mesmo depois de você desconectar do SSH:

screen -S zomboid

2. Iniciar o servidor

cd /home/steam/pzsteam
./start-server.sh -servername <nomeservidor>

Substitua <nomeservidor> pelo nome do seu arquivo .ini (sem a extensão).

3. Sair do screen (deixar o servidor rodando em background)

Pressione Ctrl + A, depois D.

4. Reconectar para ver o console do servidor

screen -r zomboid

5. Parar o servidor de forma segura

Reconecte com screen -r zomboid e digite:

quit

Aguarde o save do mundo completar antes de fechar.


Instalando Mods

Método 1: Upload dos arquivos de mod via SCP / SFTP

  1. Baixe os mods da Steam Workshop no seu PC local
  2. Localize a pasta dos mods no Windows:
    C:\Users\<SeuUsuario>\Zomboid\mods\
    
  3. Envie a pasta do mod para a VPS:
    scp -r "C:\Users\<SeuUsuario>\Zomboid\mods\<NomeMod>" steam@<ip-da-sua-vps>:/home/steam/Zomboid/mods/
    

    Ou use o FileZilla via SFTP.

  4. Adicione os IDs dos mods no arquivo .ini do servidor:
    Mods=<ModID>;<OutroModID>
    WorkshopItems=<WorkshopID>;<OutroWorkshopID>
    

Os IDs do mod e da Workshop estão na URL da página do mod na Steam e no arquivo mod.info do mod.

Método 2: Baixar mods via SteamCMD

Dentro do SteamCMD (logado como anônimo):

workshop_download_item 108600 <WorkshopID>

Os mods são baixados em /home/steam/.steam/steamapps/workshop/content/108600/<WorkshopID>/.
Copie ou crie um link simbólico para /home/steam/Zomboid/mods/.


Gerenciamento do Servidor

Verificar se o servidor está rodando

screen -ls

Atualizar o servidor para a versão mais recente

steamcmd
login anonymous
app_update 380870 validate
exit

Depois reinicie o servidor.

Ver logs do servidor

ls -lt /home/steam/Zomboid/Logs/     # encontrar o log mais recente
cat /home/steam/Zomboid/Logs/<arquivo>.txt | tail -100

Fazer backup do mundo do servidor

cp -r /home/steam/Zomboid/Saves/ /home/steam/Zomboid/Saves_backup_$(date +%Y%m%d)/

Solução de Problemas

❌ “Falha na conexão” / Não consigo conectar ao servidor

❌ O servidor cai na inicialização

❌ Aviso “Failed to set thread priority”

É um aviso inofensivo em ambientes VPS Linux. O servidor roda normalmente.

❌ Mods não estão carregando

❌ Erro do SteamCMD: 0x202 ou 0x212

Timeout de rede da Steam. Aguarde alguns minutos e tente novamente. Se persistir:

rm -rf /home/steam/.steam/steamcmd/appcache
steamcmd +login anonymous +app_update 380870 +quit

❌ A porta 16261 está aberta no UFW mas jogadores ainda não conseguem conectar

Seu provedor de VPS provavelmente tem um firewall próprio no painel (Hostinger hPanel, DigitalOcean Firewall, AWS Security Groups). Acesse o painel do seu provedor e adicione as regras UDP para as portas 16261 e 16262 lá também.


Perguntas Frequentes (FAQ)

P: Preciso ter o Project Zomboid para rodar o servidor?
R: Não. O servidor dedicado (App ID 380870) é gratuito e pode ser baixado anonimamente via SteamCMD. Apenas os jogadores que vão se conectar precisam ter o jogo.

P: Quantos jogadores o servidor suporta?
R: Oficialmente até 32 jogadores. Com 8 GB de RAM e uma CPU moderna, 8–16 jogadores simultâneos funciona muito bem.

P: Qual versão do Ubuntu usar?
R: Ubuntu 22.04 LTS ou 24.04 LTS. Evite versões não-LTS para servidores em produção.

P: Posso rodar em Raspberry Pi ou ARM?
R: Não. O servidor dedicado do Project Zomboid é apenas para arquitetura x86-64.

P: Como definir a senha de administrador do servidor?
R: O servidor pede para você definir na primeira inicialização. Para redefinir depois, edite o arquivo <nomeservidor>.ini e atualize o campo AdminPassword=.

P: Qual provedor de VPS é recomendado?
R: Hetzner (Europa/EUA) e Vultr oferecem ótimo custo-benefício. Hostinger é mais econômico. DigitalOcean tem excelente documentação. Escolha o datacenter mais próximo dos seus jogadores para menor ping.

P: O servidor inicia mas ninguém consegue entrar — o que verificar primeiro?
R: Em ordem: (1) Firewall no painel do seu provedor de VPS, (2) regras UFW com sudo ufw status, (3) IP correto do servidor, (4) console do servidor para erros via screen -r zomboid.


Créditos


💖 Apoie este projeto

Se este guia te ajudou, considere dar uma ⭐ no repositório — isso ajuda outras pessoas a encontrá-lo!

PayPal Donate with PayPal


Contato e Contribuições

Encontrou um erro no guia ou tem uma dica para adicionar?
👉 Abra uma issue — todo feedback é bem-vindo.

Pull requests também são bem-vindos!


Licença

Este projeto é open-source sob a Licença MIT.