Como configurar um servidor dedicado de Valheim na VPS com backups automáticos e gerenciamento de mods

Servidores de jogos · Por · Publicado em · Atualizado em · 8 min de leitura

Pessoa com notebook junto a racks de servidores refletidos em vidro
Sala de servidores e profissional com notebook, ilustrando configuração de VPS. Foto: Christina Morillo / Pexels

Quer hospedar seu próprio servidor de Valheim na VPS com segurança, backups automáticos e suporte a mods? Neste guia, você aprende como configurar um servidor dedicado de Valheim na VPS, preparar o firewall, automatizar backups e instalar mods via BepInEx, tudo passo a passo e com comandos prontos para copiar e colar.

1. Pré-requisitos e planejamento da VPS

Você precisa de uma VPS Linux atualizada (Ubuntu ou Debian) e um usuário com privilégios de sudo. As etapas exigem acesso root/sudo. Planeje diretórios de dados, retenção de backups e horários de tarefas.

:

Recomendações úteis:

- Escolha um tamanho de VPS proporcional a jogadores e mods. Veja critérios em como escolher o tamanho certo de VPS.

- Tenha o sistema base pronto. Se necessário, siga como instalar o Ubuntu Server.

- Anote nome do mundo, nome do servidor, porta e senha. A senha deve ser forte.

- Abra as portas somente necessárias. Se usar UFW, veja como configurar firewall no Ubuntu com UFW.

  • Sistema: Ubuntu/Debian atualizados com sudo
  • Portas UDP 2456–2458 liberadas no firewall e na VPS
  • Espaço em disco para mundos e backups
  • Nome do mundo, porta e senha do servidor definidos

2. Instalar dependências e SteamCMD no Linux

Instale SteamCMD e utilitários. Em algumas distros, é necessário habilitar arquitetura i386. Crie um usuário dedicado para isolar o serviço e o diretório do servidor.

sudo apt update
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd lib32gcc-s1 unzip

# Usuário dedicado e diretório do servidor
sudo useradd -r -m -d /home/steam -s /bin/bash steam || true
sudo mkdir -p /opt/valheim
sudo chown -R steam:steam /opt/valheim

3. Baixar e organizar o servidor dedicado de Valheim

Use o SteamCMD para baixar o servidor dedicado. Em seguida, crie um script de inicialização com as opções do Valheim e aponte o diretório de saves para um caminho separado (facilita backups). Altere a senha no script antes de iniciar.

Caminho Descrição
/opt/valheim Binários do servidor Valheim
/opt/valheim/data Mundos e saves (definidos por -savedir)
/opt/valheim/BepInEx Pasta de mods e configurações (após instalar BepInEx)
/opt/valheim/backups Arquivos .tgz de backup
/etc/systemd/system/valheim.service Serviço systemd do servidor
# Baixar/atualizar servidor dedicado (AppID 896660)
sudo -u steam /usr/games/steamcmd +login anonymous \
  +force_install_dir /opt/valheim \
  +app_update 896660 validate +quit

# Script de inicialização
sudo -u steam bash -lc 'cat > /opt/valheim/start.sh <<"EOF" 
#!/bin/bash
set -euo pipefail
export LD_LIBRARY_PATH=/opt/valheim/linux64:$LD_LIBRARY_PATH
export SteamAppId=892970
NAME="Servidor Valheim"
WORLD="mundo1"
PASSWORD="TroqueEstaSenha"
PORT=2456
SAVEDIR="/opt/valheim/data"
mkdir -p "$SAVEDIR"
cd /opt/valheim
./valheim_server.x86_64 -name "$NAME" -port $PORT -world "$WORLD" -password "$PASSWORD" -savedir "$SAVEDIR" -public 1
EOF'
sudo chmod +x /opt/valheim/start.sh
sudo chown steam:steam /opt/valheim/start.sh

4. Criar serviço systemd para iniciar automaticamente

Crie um serviço systemd para iniciar o servidor ao boot, reiniciar em falhas e facilitar o gerenciamento. Guarde o nome do serviço para consultar logs.

sudo bash -c 'cat > /etc/systemd/system/valheim.service <<"EOF"
[Unit]
Description=Valheim Dedicated Server
After=network-online.target
Wants=network-online.target

[Service]
User=steam
Group=steam
WorkingDirectory=/opt/valheim
ExecStart=/opt/valheim/start.sh
Restart=on-failure
RestartSec=15
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target
EOF'

sudo systemctl daemon-reload
sudo systemctl enable --now valheim
sudo systemctl status --no-pager valheim || true

5. Abrir firewall e testar conectividade

Libere as portas padrão do Valheim (UDP 2456–2458). Depois, verifique se a porta está escutando e os logs do serviço. Se a VPS estiver atrás de NAT, ajuste o redirecionamento no provedor.

Como confirmar que funcionou: abra o Valheim no cliente e conecte pelo IP público da VPS e porta 2456. Se não aparecer, tente "Conectar a IP" manualmente.

  • Se usar outro firewall além do UFW, replique as regras.
  • Portas devem ser UDP. TCP não é necessário nas portas 2456–2458.
  • Verifique se a senha atende aos requisitos do jogo.
# UFW (Ubuntu)
sudo ufw allow 2456:2458/udp
sudo ufw reload

# Checar porta e logs
sudo ss -lunp | grep 2456 || true
sudo journalctl -u valheim -n 50 --no-pager

6. Backups automáticos com rotação (local e opcional nuvem)

Vamos criar um script que compacta os mundos e remove backups antigos. Em seguida, um timer systemd executa o backup periodicamente. Testar a restauração é parte essencial do backup. Para cópia externa, adicione ao script uma etapa com ferramenta de nuvem (ex.: AWS CLI) conforme sua conta.

  • Defina a retenção conforme a frequência de jogo.
  • Armazene backups em disco separado quando possível.
  • Para offsite, adicione sincronização cifrada para um bucket.
# Pastas e script
sudo install -d -o steam -g steam /opt/valheim/scripts /opt/valheim/backups
sudo tee /opt/valheim/scripts/backup.sh >/dev/null <<'EOF'
#!/bin/bash
set -euo pipefail
SAVEDIR="/opt/valheim/data"
DEST="/opt/valheim/backups"
RETENTION_DAYS=7
TS=$(date +%F-%H%M)
mkdir -p "$DEST"
# Arquiva somente os dados do mundo
tar -czf "$DEST/world-$TS.tgz" -C "$SAVEDIR" .
# Remove backups antigos conforme retenção
find "$DEST" -type f -name "world-*.tgz" -mtime +$RETENTION_DAYS -delete
EOF
sudo chmod +x /opt/valheim/scripts/backup.sh

# Unidade e timer do systemd
sudo tee /etc/systemd/system/valheim-backup.service >/dev/null <<'EOF'
[Unit]
Description=Backup Valheim worlds

[Service]
Type=oneshot
User=steam
Group=steam
ExecStart=/opt/valheim/scripts/backup.sh
EOF

sudo tee /etc/systemd/system/valheim-backup.timer >/dev/null <<'EOF'
[Unit]
Description=Schedule Valheim backups

[Timer]
OnCalendar=hourly
Persistent=true

[Install]
WantedBy=timers.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now valheim-backup.timer
sudo systemctl list-timers --all | grep valheim-backup || true

7. Gerenciamento de mods com BepInEx (servidor)

Para rodar mods, instale o BepInEx Pack para Valheim no servidor. Baixe o pacote em sua máquina, envie o .zip para a VPS e extraia na pasta do servidor. Pare o serviço antes de alterar mods. Após o primeiro start com BepInEx, a pasta de plugins será criada.

Instalação geral:

- Envie o arquivo ZIP do BepInEx para /tmp da VPS.

- Extraia no diretório do servidor.

- Inicie o servidor uma vez para gerar pastas.

- Coloque os mods em BepInEx/plugins. Clientes precisam dos mesmos mods.

# Supondo o pacote em /tmp/BepInExPack_Valheim_x64.zip
sudo systemctl stop valheim
sudo -u steam unzip -o /tmp/BepInExPack_Valheim_x64.zip -d /opt/valheim

# Inicie uma vez para gerar BepInEx/ e configs
sudo systemctl start valheim
sleep 10
sudo systemctl stop valheim

# Exemplo: instalar um mod (ZIP contendo pastas do BepInEx)
sudo -u steam unzip -o /tmp/AlgumMod.zip -d /opt/valheim
sudo systemctl start valheim

8. Atualizações, logs e solução de problemas

Mantenha o servidor atualizado pelo SteamCMD. Veja logs no journalctl e em BepInEx. Se algo falhar, reverta com um backup recente. Atualizações de jogo e mods devem ser coordenadas para evitar incompatibilidades.

Dicas rápidas de diagnóstico:

- Porta não aparece: confirme UFW, regras no provedor e porta 2456/UDP em escuta.

- Quedas: revise recursos da VPS e mods recentes.

- Mismatch de versão: alinhe versão do cliente, servidor e mods.

- Senha inválida: use uma senha forte sem caracteres estranhos.

# Atualizar servidor dedicado
sudo -u steam /usr/games/steamcmd +login anonymous \
  +force_install_dir /opt/valheim \
  +app_update 896660 validate +quit

# Reiniciar e acompanhar logs
sudo systemctl restart valheim
sudo journalctl -u valheim -f

Perguntas frequentes

Quais portas preciso liberar para o servidor de Valheim?

O servidor usa, por padrão, as portas UDP 2456 a 2458. Libere essas portas no firewall da VPS e, se houver, no painel do provedor. Se alterar a porta no script, ajuste o intervalo correspondente. Use ferramentas como ss ou netstat para confirmar que a porta está em escuta.

Onde ficam os arquivos do mundo e como restaurar um backup?

No exemplo do guia, os saves ficam em /opt/valheim/data (definido por -savedir). Para restaurar, pare o serviço, descompacte o .tgz do backup nessa pasta e reinicie. É recomendável testar a restauração regularmente em um ambiente de teste para garantir a integridade dos dados.

Como atualizar o servidor sem perder progresso?

Pare o servidor, rode o SteamCMD para atualizar, e inicie novamente. Faça um backup antes de qualquer atualização. Se usar mods, verifique se há versões compatíveis com a atualização do jogo. Em caso de problemas, restaure o backup mais recente e teste os mods individualmente.

Posso usar mods? Os jogadores precisam instalar também?

Sim. Instale o BepInEx no servidor e coloque os mods em BepInEx/plugins. Na maioria dos casos, os jogadores precisam ter os mesmos mods e versões compatíveis no cliente. Mantenha uma lista clara de mods e versões para o seu grupo, e atualize de forma coordenada.

Como mover o servidor para outra VPS?

Copie a pasta de instalação (/opt/valheim) e, principalmente, o diretório de dados (-savedir) para a nova VPS. Recrie o serviço systemd, libere as portas e teste. Se você já usa backups versionados, a migração se resume a restaurar o backup e ajustar o DNS, quando aplicável.

Precisa de ajuda para manter seu servidor estável?

Posso auxiliar na automação de backups, monitoramento e manutenção contínua do seu servidor Valheim na VPS.

Falar sobre automação e manutenção

Veja também