Comment configurer un serveur FiveM sur Linux : artifacts, systemd et ufw
Exécutez un serveur FiveM sur Ubuntu ou Debian : téléchargez l'artifact, extrayez-le, démarrez run.sh avec txAdmin ou server.cfg, maintenez-le actif avec screen ou systemd, ouvrez les ports avec ufw.
Vous avez un VPS Linux (Ubuntu ou Debian) et vous voulez un serveur FiveM dessus. Le processus est court : obtenez les fichiers du serveur, démarrez-les, gardez-les en fonctionnement, et ouvrez les ports. Ce guide couvre chaque étape avec des commandes que vous pouvez copier.
Avant de commencer
Vous avez besoin d'une clé de licence de portal.cfx.re, consultez l'erreur de clé de licence si vous ne l'avez pas encore créée. Installez les outils que vous allez utiliser :
sudo apt update
sudo apt install -y wget git xz-utils screenCréez un utilisateur séparé, pour que le serveur ne s'exécute pas en tant que root :
sudo adduser fivem
sudo su - fivemTout ce qui suit est fait en tant qu'utilisateur.
Télécharger l'artifact
Le programme serveur (« artifacts ») pour Linux provient de Cfx.re :
https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/Ouvrez cette page, choisissez la version recommandée, et copiez le lien vers fx.tar.xz. Ensuite :
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.xzRemplacez <build> par le chemin que vous avez copié. Après extraction, vous devriez voir un run.sh dans le dossier.
Obtenir les données du serveur
Les « données du serveur » c'est où votre server.cfg et vos ressources vivent. Les ressources de base Cfx.re sont sur GitHub :
cd ~/fivem
git clone https://github.com/citizenfx/cfx-server-data.git server-dataCréez la config dans server-data/server.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 hardcapDémarrer : txAdmin ou simple
Avec txAdmin (recommandé). Exécutez run.sh sans arguments. txAdmin démarre, imprime un PIN et une adresse web, et vous finissez la configuration dans le navigateur sur le port 40120 :
cd ~/fivem/server
bash run.shtxAdmin garde ses données dans un dossier txData, généralement dans le dossier à partir duquel vous l'avez démarré, alors démarrez-le toujours à partir du même endroit. Dans le panneau, vous pouvez utiliser une recette pour déployer un serveur de base, ou le pointer vers le dossier server-data que vous avez cloné.
Sans txAdmin. Démarrez à partir du dossier server-data et passez la config :
cd ~/fivem/server-data
bash ../server/run.sh +exec server.cfgVous obtenez la console simple dans votre terminal. Appuyez sur Ctrl+C pour l'arrêter.
Si vous perdez votre mot de passe txAdmin plus tard, consultez txAdmin mot de passe oublié.
Le garder en fonctionnement avec screen
Le moyen rapide de garder le serveur actif après la déconnexion de SSH est screen :
screen -S fivem
cd ~/fivem/server
bash run.shDétachez avec Ctrl+A, puis D. Le serveur continue à fonctionner. Réattachez plus tard :
screen -r fivemCela fonctionne, mais rien ne redémarre le serveur si la machine redémarre ou si le processus meurt.
Le garder en fonctionnement avec systemd
Un service systemd démarre le serveur au boot et le redémarre après un crash. Créez le fichier en tant que root (ou avec sudo) :
sudo nano /etc/systemd/system/fivem.service[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.targetCela démarre txAdmin, qui gère le serveur de jeu lui-même. Ensuite, activez-le et démarrez-le :
sudo systemctl daemon-reload
sudo systemctl enable fivem
sudo systemctl start fivemCommandes utiles :
sudo systemctl status fivem
sudo journalctl -u fivem -f
sudo systemctl restart fivemLa ligne journalctl affiche la sortie en direct, c'est où vous lisez le PIN txAdmin au premier démarrage.
Conseil : avec systemd il n'y a pas de console interactive. Exécutez-le avec txAdmin et utilisez la console en direct txAdmin, c'est la raison de préférer txAdmin sur Linux.
Ouvrir les ports avec ufw
sudo ufw allow OpenSSH
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw allow 40120/tcp
sudo ufw enableAutorisez SSH avant d'activer ufw, sinon vous vous verrouillez vous-même. La règle 40120 est pour txAdmin : si vous gérez le serveur uniquement à partir du VPS via un tunnel SSH, vous pouvez la laisser de côté. Vérifiez aussi le panneau de pare-feu de votre fournisseur d'hébergement. La vérification complète du réseau, y compris le test avec F8 connect, est dans Le serveur FiveM ne s'affiche pas : port forwarding et pare-feu.
Mise à jour plus tard
Pour mettre à jour, arrêtez le service, remplacez le contenu de ~/fivem/server par un nouvel artifact, et redémarrez-le. Votre txData et server-data restent en place. Les détails sont dans mise à jour des artifacts serveur FiveM.
Liste de contrôle
| Symptôme | Solution |
|---|---|
Pas de run.sh après téléchargement |
Extrayez avec tar xf fx.tar.xz dans le dossier du serveur |
| Besoin du panneau txAdmin | Exécutez bash run.sh sans arguments, ouvrez le port 40120 |
| Démarrer sans txAdmin | bash ../server/run.sh +exec server.cfg à partir de server-data |
| Le serveur s'arrête quand SSH se ferme | Utilisez screen -S fivem ou un service systemd |
| Devrait démarrer au boot | systemctl enable fivem |
| Les joueurs ne peuvent pas se connecter | Autorisez 30120 tcp et udp dans ufw et dans le pare-feu de l'hôte |
Réponses rapides
Comment exécuter un serveur FiveM sur Linux ?
Téléchargez l'artifact Linux depuis runtime.fivem.net, extrayez-le avec tar xf fx.tar.xz, et démarrez run.sh. Exécutez-le sans arguments pour txAdmin, ou avec +exec server.cfg pour démarrer le serveur directement.
Comment garder le serveur FiveM en fonctionnement après fermeture de SSH ?
Exécutez-le dans screen ou tmux, ou mieux, comme un service systemd qui démarre au boot et redémarre après un crash.
Dois-je exécuter FiveM en tant que root ?
Non. Créez un utilisateur normal pour cela. Cela limite les dégâts si une ressource est compromise, et txAdmin vous avertira quand il s'exécute en tant que root.
Des scripts sans ce problème
Mic PhoneUn téléphone pliable qui se déplie en tablette et se prolonge jusqu’au vrai téléphone du joueur.Voir le script →
Advanced BoostingDu boosting de véhicules piloté par tablette : contrats de classe D à S+, crews et file d’attente en direct.Voir le script →
Crypto MiningAchetez un entrepôt, montez vos rigs pièce par pièce et minez sur un marché qui bouge.Voir le script →