Garry's Mod Intermédiaire 11 min de lecture

Installer un serveur Garry's Mod (GMod) avec SteamCMD + Workshop Collection

Guide complet pour installer un serveur Garry's Mod dédié via SteamCMD : srcds_run, configuration, addons Workshop via collection ID, gamemodes (Sandbox, DarkRP, TTT) et FastDL.

Installer un serveur Garry's Mod (GMod) avec SteamCMD + Workshop Collection

Installer un serveur Garry’s Mod (GMod) avec SteamCMD + Workshop Collection

Vous voulez monter votre serveur Garry’s Mod dédié pour héberger du Sandbox, du DarkRP, du TTT ou un gamemode custom ? Ce guide couvre l’installation complète via SteamCMD, le lancement avec srcds_run, et l’intégration des addons via une collection Workshop.

⚡ Raccourci recommandé

Pas envie de gérer SteamCMD et la config Linux ?

Notre offre hébergeur GMod pas cher dès 10,90 €/mois : serveur préinstallé, support des collections Workshop, Anti-DDoS 5 Tbps et support FR 24/7.

Voir l'offre GMod →

Info : Garry’s Mod tourne sur Source Engine. Le serveur dédié (srcds) est gratuit, n’a pas besoin d’une licence Steam, et fonctionne sur Linux x86 (recommandé) ou Windows.


Pré-requis serveur

Système

ComposantMinimumRecommandé
OSUbuntu 20.04+ / Debian 11+ / Windows ServerUbuntu 22.04 LTS
CPU2 cœurs 3 GHz4 cœurs 4+ GHz (Source = single-thread)
RAM2 Go4-8 Go (selon addons)
Stockage10 Go SSD30 Go SSD NVMe (addons gourmands)
Bande passante100 Mbps1 Gbps

Pourquoi un CPU rapide ?

Source Engine est mono-thread sur la simulation. Un CPU haute fréquence (4+ GHz) sera toujours plus performant qu’un CPU avec beaucoup de cœurs lents.

Libs 32 bits sur Linux

srcds_linux est un binaire 32 bits. Sur Ubuntu/Debian 64 bits :

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install lib32gcc-s1 lib32stdc++6 libcurl4-gnutls-dev:i386 -y

Étape 1 : Installer SteamCMD

# Créer utilisateur dédié
sudo useradd -m -s /bin/bash gmod
sudo su - gmod

# Installer SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

Vérifiez le fonctionnement :

./steamcmd.sh +quit

Étape 2 : Télécharger le serveur GMod

./steamcmd.sh \
  +force_install_dir /home/gmod/server \
  +login anonymous \
  +app_update 4020 validate \
  +quit

App ID 4020 = Garry’s Mod Dedicated Server. Le téléchargement fait ~10 Go, comptez 5-15 min selon votre bande passante.

À la fin, vous avez un dossier /home/gmod/server/ contenant srcds_run, srcds_linux, et le dossier garrysmod/.


Étape 3 : Configurer le serveur

server.cfg

Créez /home/gmod/server/garrysmod/cfg/server.cfg :

// Identité
hostname "Mon serveur Garry's Mod"
sv_password ""
rcon_password "ChangeMoiMaintenant"

// Joueurs
maxplayers 32
sv_lan 0

// Réseau
sv_region 3                  // 3 = Europe
sv_loadingurl ""

// Gameplay
sbox_maxprops 200
sbox_maxragdolls 10
sbox_maxnpcs 10
sbox_maxballoons 10
sbox_maxeffects 10
sbox_maxlamps 8

// Logs
log on
sv_logbans 1
sv_logecho 1
sv_logfile 1

// Performance
sv_maxrate 0
sv_minrate 100000
sv_maxupdaterate 66
sv_minupdaterate 33
fps_max 300

Le rcon_password doit être différent du sv_password. RCON permet d’envoyer des commandes admin à distance — protégez-le.


Étape 4 : Créer une collection Workshop (addons)

Plutôt que d’uploader manuellement chaque addon, GMod permet de référencer une collection Workshop que le serveur télécharge automatiquement.

Créer la collection

  1. Ouvrez Steam → Garry’s Mod → Workshop
  2. BrowseCollectionsCreate Collection
  3. Titre, description, choisissez Public ou Unlisted (pas Privé)
  4. Save and Continue
  5. Ajoutez vos addons (maps, weapons, gamemodes, etc.)
  6. Notez l’ID de la collection dans l’URL :
    https://steamcommunity.com/sharedfiles/filedetails/?id=910942406
                                                           ↑↑↑↑↑↑↑↑↑
                                                           Collection ID

Lier la collection au serveur

Vous avez besoin d’un Workshop API Key (gratuit, dispo sur steamcommunity.com/dev/apikey).

Créez /home/gmod/server/garrysmod/cfg/server.cfg (à compléter avec ce qui précède) :

# Workshop API key (obligatoire pour télécharger les addons)
echo "VOTRE_API_KEY_ICI" > /home/gmod/server/garrysmod/lua/menu/your_api_key.txt

Plus simple : ajoutez -authkey VOTRE_API_KEY en paramètre de lancement (voir étape suivante).


Étape 5 : Script de démarrage

Créez /home/gmod/start.sh :

#!/bin/bash
cd /home/gmod/server
./srcds_run \
  -game garrysmod \
  -console \
  -port 27015 \
  +maxplayers 32 \
  +map gm_construct \
  +gamemode sandbox \
  +host_workshop_collection 910942406 \
  -authkey VOTRE_API_KEY \
  +exec server.cfg

Rendez-le exécutable :

chmod +x /home/gmod/start.sh

Paramètres clés

FlagRôle
-game garrysmodSpécifie le mod (toujours garrysmod)
-consoleLancement en mode console (recommandé en serveur dédié)
-port 27015Port d’écoute (default Source)
+map gm_constructMap de démarrage
+gamemode sandboxGamemode (sandbox, darkrp, terrortown, etc.)
+host_workshop_collection IDCollection d’addons à télécharger
-authkey KEYClé API Steam Workshop
+exec server.cfgCharge votre config

Étape 6 : Lancer en arrière-plan (screen)

Pour que le serveur survive à votre déconnexion SSH :

sudo apt install screen -y
screen -S gmod
./start.sh
# Détacher : Ctrl+A puis D

Reprendre la session : screen -r gmod.

Pour un setup propre en production, utilisez systemd :

# /etc/systemd/system/gmod.service
[Unit]
Description=Garry's Mod Dedicated Server
After=network.target

[Service]
Type=simple
User=gmod
WorkingDirectory=/home/gmod/server
ExecStart=/home/gmod/start.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now gmod
sudo systemctl status gmod

Étape 7 : Ouvrir les ports

PortProtocoleRôle
27015UDP + TCPGame
27005UDPClient local (sortant)
27020UDPSourceTV (optionnel)

Sur Ubuntu avec UFW :

sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27020/udp

Étape 8 : Se connecter au serveur

Côté client :

  1. Lancez Garry’s Mod
  2. Multiplayer → onglet FavoritesAdd a server
  3. Adresse : IP_DU_SERVEUR:27015
  4. Rejoindre

Ou directement via la console (~ en jeu) :

connect IP_DU_SERVEUR:27015

Gamemodes populaires

GamemodeCommande launchDescription
Sandbox+gamemode sandboxMode bac à sable, par défaut
DarkRP+gamemode darkrp +map rp_downtown_v4c_v2Roleplay ville
TTT (Trouble in Terrorist Town)+gamemode terrortown +map ttt_minecraft_b5Whodunit
Prop Hunt+gamemode prop_huntCache-cache props
Murder+gamemode murderWhodunit (mécanique différente TTT)

Pour DarkRP : pensez à ajouter les addons DarkRP et les addons de map à votre collection Workshop.


Étape 9 (optionnel) : FastDL

Par défaut, les clients qui rejoignent téléchargent les addons depuis votre serveur (lent, surcharge la BP). FastDL = redirige le téléchargement vers un serveur HTTP externe.

# server.cfg
sv_downloadurl "https://fastdl.monsite.com/gmod/"
sv_allowdownload 0
sv_allowupload 0
net_maxfilesize 64

Sur le serveur HTTP, vous hébergez les fichiers compressés en .bz2 (Source ne télécharge que le bz2). Outils : bzip2 côté serveur.

Pour beaucoup d’addons (>500 Mo), FastDL est obligatoire sinon les joueurs mettent 10+ minutes à rejoindre.


FAQ

srcds_linux ne démarre pas, erreur libs

Libs 32 bits manquantes. Sur Ubuntu/Debian :

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install lib32gcc-s1 lib32stdc++6 -y

Les addons Workshop ne se téléchargent pas

Causes :

  • authkey manquante ou invalide → régénérez sur steamcommunity.com/dev/apikey
  • Collection en mode Private au lieu de Public/Unlisted
  • Workshop ID incorrect (vérifiez l’URL de la collection)

Mes joueurs voient “Missing map” en se connectant

La map utilisée par le gamemode n’est pas dans la collection Workshop. Ajoutez la map (ex: rp_downtown_v4c_v2) à la collection, redémarrez le serveur.

Comment promouvoir un joueur admin ?

Installez ULX + ULib (sur Workshop), puis :

!setrank votre_pseudo superadmin

Ou via RCON :

rcon ulx adduser <pseudo> superadmin

Pourquoi mon serveur lag avec 30 props ?

Source Engine est mono-thread. Limite sbox_maxprops à 100-150, augmente le CPU clock. Ou passe à un CPU 5+ GHz dédié gaming.

Comment activer SourceTV (spectateur) ?

Ajouter au lancement :

+tv_enable 1 +tv_port 27020 +tv_password "spectator"

Joueurs : connect IP:27020;password spectator.

Quelle map de démarrage pour Sandbox ?

gm_construct (par défaut) ou gm_flatgrass. Pour DarkRP : rp_downtown_v4c_v2, rp_evocity_v2d.

Mon serveur n’apparaît pas dans la liste publique

  • Vérifiez sv_lan 0 (mode public, pas LAN)
  • Vérifiez sv_region 3 (Europe — autres régions: 0 USA East, 1 USA West, 2 South America, 4 Asia, etc.)
  • Attendez 5-10 min après le démarrage avant qu’il apparaisse dans Steam server browser

Conclusion

Vous avez maintenant un serveur Garry’s Mod opérationnel avec gamemode, addons Workshop et collection liée. Étapes suivantes :

  1. Installer ULX/ULib pour la gestion admin
  2. Configurer FastDL si vous avez beaucoup d’addons
  3. Backups réguliers (cron quotidien : tar -czf gmod-backup-$(date +%F).tar.gz garrysmod/data/)
  4. Anti-cheat (CAC, ULX features) si vous lancez du PvP sérieux

Pour aller plus loin