Como configurar um servidor FiveM no Linux: artifacts, systemd e ufw

Execute um servidor FiveM no Ubuntu ou Debian: baixe o artifact, extraia-o, inicie run.sh com txAdmin ou server.cfg, mantenha-o vivo com screen ou systemd, abra portas com ufw.

Você tem um VPS Linux (Ubuntu ou Debian) e quer um servidor FiveM nele. O processo é curto: obter os arquivos do servidor, iniciá-los, mantê-los rodando, e abrir as portas. Este guia cobre cada etapa com comandos que você pode copiar.

Antes de começar

Você precisa de uma chave de licença de portal.cfx.re, veja o erro de chave de licença se você ainda não criou uma. Instale as ferramentas que você usará:

bash
sudo apt update
sudo apt install -y wget git xz-utils screen

Crie um usuário separado, para que o servidor não seja executado como root:

bash
sudo adduser fivem
sudo su - fivem

Tudo abaixo é feito como esse usuário.

Baixe o artifact

O programa do servidor ("artifacts") para Linux vem de Cfx.re:

text
https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/

Abra essa página, escolha a build recomendada, e copie o link para fx.tar.xz. Então:

bash
mkdir -p ~/fivem/server
cd ~/fivem/server
wget https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/<build>/fx.tar.xz
tar xf fx.tar.xz
rm fx.tar.xz

Substitua <build> pelo caminho que você copiou. Depois de extrair você deve ver um run.sh na pasta.

Obtenha os dados do servidor

Os "dados do servidor" são onde sua server.cfg e seus recursos vivem. Os recursos base de Cfx.re estão no GitHub:

bash
cd ~/fivem
git clone https://github.com/citizenfx/cfx-server-data.git server-data

Crie a configuração em server-data/server.cfg:

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_hostname "My FiveM server"
sv_maxclients 32
sv_licenseKey "cfxk_your_key_here"

ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure basic-gamemode
ensure hardcap

Inicie: txAdmin ou simples

Com txAdmin (recomendado). Execute run.sh sem argumentos. txAdmin inicia, imprime um PIN e um endereço web, e você termina a configuração no navegador na porta 40120:

bash
cd ~/fivem/server
bash run.sh

txAdmin mantém seus dados em uma pasta txData, geralmente na pasta onde você iniciou, então sempre inicie de lá. No painel você pode usar uma recipe para implementar um servidor base, ou apontá-lo para a pasta server-data que você clonou.

Sem txAdmin. Comece na pasta server-data e passe a configuração:

bash
cd ~/fivem/server-data
bash ../server/run.sh +exec server.cfg

Você obtém o console simples em seu terminal. Pressione Ctrl+C para interromper.

Se você perder sua senha txAdmin mais tarde, veja txAdmin esqueceu a senha.

Mantenha vivo com screen

A maneira rápida de manter o servidor vivo após desconectar de SSH é screen:

bash
screen -S fivem
cd ~/fivem/server
bash run.sh

Desconecte com Ctrl+A, depois D. O servidor continua rodando. Reconecte mais tarde:

bash
screen -r fivem

Isso funciona, mas nada reinicia o servidor se a máquina reinicializar ou o processo morrer.

Mantenha vivo com systemd

Um serviço systemd inicia o servidor no boot e o reinicia após uma falha. Crie o arquivo como root (ou com sudo):

bash
sudo nano /etc/systemd/system/fivem.service
ini
[Unit]
Description=FiveM server
After=network.target

[Service]
Type=simple
User=fivem
WorkingDirectory=/home/fivem/fivem/server
ExecStart=/bin/bash /home/fivem/fivem/server/run.sh
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Isso inicia txAdmin, que gerencia o próprio servidor de jogo. Em seguida, habilite e inicie:

bash
sudo systemctl daemon-reload
sudo systemctl enable fivem
sudo systemctl start fivem

Comandos úteis:

bash
sudo systemctl status fivem
sudo journalctl -u fivem -f
sudo systemctl restart fivem

A linha journalctl mostra a saída ao vivo, é onde você lê o PIN do txAdmin no primeiro início.

Dica: com systemd não há console interativo. Execute com txAdmin e use o console ao vivo do txAdmin, que é a razão de preferir txAdmin no Linux.

Abra as portas com ufw

bash
sudo ufw allow OpenSSH
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw allow 40120/tcp
sudo ufw enable

Permita SSH antes de habilitar ufw, ou você se bloqueia. A regra 40120 é para txAdmin: se você apenas gerencia o servidor do VPS através de um túnel SSH, pode deixá-la de fora. Também verifique o painel de firewall da sua provedora. A verificação completa de rede, incluindo teste com F8 connect, está em servidor FiveM não mostrando: port forwarding e firewall.

Atualizando depois

Para atualizar, interrompa o serviço, substitua o conteúdo de ~/fivem/server com um novo artifact, e inicie novamente. Seu txData e server-data permanecem no lugar. Os detalhes estão em atualizando artifacts do servidor FiveM.

Lista de verificação

Sintoma Solução
Sem run.sh após download Extraia com tar xf fx.tar.xz dentro da pasta do servidor
Preciso do painel txAdmin Execute bash run.sh sem argumentos, abra porta 40120
Inicie sem txAdmin bash ../server/run.sh +exec server.cfg de server-data
Servidor para quando SSH fecha Use screen -S fivem ou um serviço systemd
Deve iniciar no boot systemctl enable fivem
Jogadores não conseguem conectar Permita 30120 tcp e udp em ufw e no firewall do host

Respostas rápidas

Como executo um servidor FiveM no Linux?

Baixe o artifact do Linux de runtime.fivem.net, extraia-o com tar xf fx.tar.xz, e inicie run.sh. Execute sem argumentos para txAdmin, ou com +exec server.cfg para iniciar o servidor diretamente.

Como mantenho o servidor FiveM rodando após fechar SSH?

Execute-o dentro de screen ou tmux, ou melhor, como um serviço systemd que inicia no boot e reinicia após uma falha.

Devo executar FiveM como root?

Não. Crie um usuário normal para isso. Limita o dano se um recurso for comprometido, e o próprio txAdmin avisará quando for executado como root.

Scripts sem esse problema

Mic PhoneUm celular dobrável que abre em tablet e chega ao celular de verdade do jogador.Ver script →Advanced BoostingBoosting de veículos pelo tablet: contratos da classe D à S+, crews e fila ao vivo.Ver script →Crypto MiningCompre um galpão, monte rigs peça por peça e minere moedas num mercado que se mexe.Ver script →

Continue lendo