Héberger un serveur CS:GO legacy auquel tes amis peuvent vraiment se connecter par internet est plus compliqué qu'il n'y paraît. Valve a figé CS:GO au lancement de CS2, puis a désactivé le matchmaking officiel et le navigateur de serveurs en jeu. Un serveur lancé de la manière habituelle démarre bien, mais chaque ami qui tente de se connecter voit juste "connect failed after 30 retries". Ce guide explique pourquoi, et la configuration exacte qui fonctionne. Chaque étape ici a été testée sur un vrai serveur public.
Pourquoi la connexion directe échoue
Deux choses bloquent un serveur CS:GO legacy sur internet :
- Pas de GSLT. Un serveur CS:GO public a besoin d'un Game Server Login Token. Sans lui, la console indique "No Steam account token was specified. Connections will be restricted to LAN only."
- La barrière de réservation de lobby. Même avec un token, CS:GO fait passer les connexions directes par son système de réservation de matchmaking. Valve l'a désactivé pour la version figée, donc le serveur crée une réservation qui n'aboutit jamais. C'est le "30 retries" que tu vois.
Ce qu'il te faut
- Une machine avec une vraie IP publique (un VPS, pas un PC domestique derrière un routeur).
- Les fichiers du serveur dédié CS:GO (steamcmd app 740).
- Un GSLT pour app 730, depuis steamcommunity.com/dev/managegameservers.
- MetaMod:Source, SourceMod et le plugin NoLobbyReservation.
La configuration qui marche
- Installe avec steamcmd :
+login anonymous +app_update 740 validate - Supprime le bin/libgcc_s.so.1 fourni. La version figée embarque une vieille copie qui casse sur un Linux moderne (le serveur boucle en plantant au chargement de libtier0.so). Le supprimer laisse la bibliothèque système se charger à la place.
- Installe MetaMod:Source et SourceMod dans le dossier de mod csgo/, puis ajoute NoLobbyReservation. NoLobbyReservation est ce qui lève la barrière de réservation, sans lui les clients ne peuvent pas se connecter du tout. C'est la pièce la plus importante.
- Mets ton GSLT dans server.cfg :
sv_setsteamaccount YOUR_TOKEN - Lance en écoutant sur toutes les interfaces sur le vrai port :
-ip 0.0.0.0 -port 27015 +sv_lan 0. Sans -ip 0.0.0.0 le serveur peut s'attacher à localhost et personne ne l'atteint. - Les amis se connectent depuis la console en jeu :
connect YOUR_IP:27015
Pièges fréquents
- "STEAM validation rejected" signifie que la version de ton client et l'app id du serveur ne correspondent pas. Si tu joues à la réédition autonome de 2026, c'est une app distincte ; garde le serveur sur 730 et utilise le client de la branche bêta csgo_legacy de CS2.
- Un .smx NoLobbyReservation précompilé venant d'un dépôt au hasard ne se charge souvent pas (il est compilé pour une autre version de SourceMod). Recompile-le à neuf contre ton SourceMod.
- Tester depuis le même réseau domestique que le serveur échouera même quand la configuration est correcte, parce que la connexion fait un aller-retour (hairpin) sur ton routeur. Teste depuis une vraie connexion extérieure.
Ou saute tout ça
Ça fait beaucoup de pièces à maintenir en état de marche sur un jeu que Valve ne met plus à jour. Sur 2hours.gg un serveur CS:GO arrive avec le token, les plugins et la config déjà intégrés. Tu déploies, choisis une carte, et tes amis se connectent à l'IP. Aucun plugin à compiler, aucun token à gérer. Déployer un serveur CS:GO.