Come configurare un server FiveM su Linux: artifact, systemd e ufw

Esegui un server FiveM su Ubuntu o Debian: scarica l'artifact, estrailo, avvia run.sh con txAdmin o server.cfg, mantienilo attivo con screen o systemd, apri le porte con ufw.

Hai un VPS Linux (Ubuntu o Debian) e vuoi un server FiveM su di esso. Il processo è breve: ottieni i file del server, avviali, mantienili in esecuzione e apri le porte. Questa guida copre ogni passaggio con comandi che puoi copiare.

Prima di iniziare

Hai bisogno di una chiave di licenza da portal.cfx.re, vedi l'errore della chiave di licenza se non l'hai ancora creata. Installa gli strumenti che utilizzerai:

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

Crea un utente separato, in modo che il server non venga eseguito come root:

bash
sudo adduser fivem
sudo su - fivem

Tutto ciò che segue viene fatto come quell'utente.

Scarica l'artifact

Il programma del server ("artifact") per Linux viene da Cfx.re:

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

Apri quella pagina, scegli la build consigliata e copia il link a fx.tar.xz. Poi:

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

Sostituisci <build> con il percorso che hai copiato. Dopo l'estrazione dovresti vedere un run.sh nella cartella.

Ottieni i dati del server

I "dati del server" sono dove vivono il tuo server.cfg e le tue risorse. Le risorse di base Cfx.re sono su GitHub:

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

Crea la configurazione in 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

Avvialo: txAdmin o semplice

Con txAdmin (consigliato). Esegui run.sh senza argomenti. txAdmin si avvia, stampa un PIN e un indirizzo web, e finisci la configurazione nel browser sulla porta 40120:

bash
cd ~/fivem/server
bash run.sh

txAdmin mantiene i suoi dati in una cartella txData, solitamente nella cartella da cui l'hai avviato, quindi avvialo sempre dallo stesso posto. Nel pannello puoi usare una ricetta per distribuire un server di base, o indicargli la cartella server-data che hai clonato.

Senza txAdmin. Avvia dalla cartella server-data e passa la configurazione:

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

Ottieni la console semplice nel tuo terminale. Premi Ctrl+C per fermarla.

Se perdi la tua password di txAdmin più tardi, vedi password dimenticata di txAdmin.

Mantienilo in esecuzione con screen

Il modo veloce per mantenere il server attivo dopo la disconnessione da SSH è screen:

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

Scollega con Ctrl+A, poi D. Il server continua a funzionare. Ricollega più tardi:

bash
screen -r fivem

Funziona, ma niente riavvia il server se la macchina si riavvia o il processo muore.

Mantienilo in esecuzione con systemd

Un servizio systemd avvia il server all'avvio e lo riavvia dopo un arresto anomalo. Crea il file come root (o con 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

Questo avvia txAdmin, che gestisce il server di gioco stesso. Poi abilitalo e avvialo:

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

Comandi utili:

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

La riga journalctl mostra l'output live, dove leggi il PIN di txAdmin al primo avvio.

Suggerimento: con systemd non c'è una console interattiva. Eseguilo con txAdmin e usa la console live di txAdmin, che è il motivo per preferire txAdmin su Linux.

Apri le porte con ufw

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

Consenti SSH prima di abilitare ufw, o ti bloccherai fuori. La regola 40120 è per txAdmin: se gestisci il server solo dal VPS tramite un tunnel SSH, puoi ometterla. Controlla anche il pannello firewall del tuo provider di hosting. Il controllo di rete completo, incluso il test con F8 connect, è in server FiveM non visibile: port forwarding e firewall.

Aggiornamento più tardi

Per aggiornare, ferma il servizio, sostituisci il contenuto di ~/fivem/server con un nuovo artifact, e avvialo di nuovo. Il tuo txData e server-data rimangono al loro posto. I dettagli sono in aggiornamento dei server FiveM artifacts.

Elenco di controllo

Sintomo Soluzione
Nessun run.sh dopo il download Estrai con tar xf fx.tar.xz nella cartella del server
Ho bisogno del pannello txAdmin Esegui bash run.sh senza argomenti, apri la porta 40120
Avvia senza txAdmin bash ../server/run.sh +exec server.cfg da server-data
Il server si ferma quando SSH chiude Usa screen -S fivem o un servizio systemd
Dovrebbe avviarsi al boot systemctl enable fivem
I giocatori non riescono a connettersi Consenti 30120 tcp e udp in ufw e nel firewall dell'host

Risposte rapide

Come eseguo un server FiveM su Linux?

Scarica l'artifact Linux da runtime.fivem.net, estrailo con tar xf fx.tar.xz, e avvia run.sh. Eseguilo senza argomenti per txAdmin, o con +exec server.cfg per avviare il server direttamente.

Come mantengo il server FiveM in esecuzione dopo aver chiuso SSH?

Eseguilo dentro screen o tmux, o meglio ancora, come servizio systemd che si avvia all'avvio e si riavvia dopo un arresto anomalo.

Dovrei eseguire FiveM come root?

No. Crea un utente normale per esso. Limita il danno se una risorsa è compromessa, e txAdmin stesso ti avvertirà quando viene eseguito come root.

Script senza questo problema

Mic PhoneUn telefono pieghevole che si apre in un tablet e arriva sul telefono vero del giocatore.Vedi script →Advanced BoostingBoosting di veicoli dal tablet: contratti dalla classe D alla S+, crew e coda in tempo reale.Vedi script →Crypto MiningCompra un magazzino, costruisci rig pezzo per pezzo e mina monete su un mercato che si muove.Vedi script →

Continua a leggere