Aller au contenu
Counter-Strike 1.6

Installer un serveur Counter-Strike 1.6

Le serveur Counter-Strike 1.6 est un HLDS (Half-Life Dedicated Server, application SteamCMD 90) avec le mod cstrike. Il est léger : quelques centaines de Mo, un petit VPS suffit. Sources consultées : guides Vultr, Gentoo, hébergeurs et œufs Pterodactyl ; le wiki Valve n'était pas accessible, à recouper.

Dernière mise à jour : 09/10/2026

Le serveur Counter-Strike 1.6 est un HLDS (Half-Life Dedicated Server, application SteamCMD 90) avec le mod cstrike. Il est léger : quelques centaines de Mo, un petit VPS suffit. Sources consultées : guides Vultr, Gentoo, hébergeurs et œufs Pterodactyl ; le wiki Valve n'était pas accessible, à recouper.

Installation pas à pas

  1. Préparez une machine Linux (Ubuntu/Debian) ou Windows ; le serveur est très léger.

  2. Créez un utilisateur non-root (steam) et installez SteamCMD avec les bibliothèques 32 bits.

  3. Installez HLDS avec app_set_config 90 mod cstrike puis app_update 90 validate.

  4. Relancez app_update 90 validate plusieurs fois jusqu'à ce qu'il ne télécharge plus rien (bug connu de HLDS).

  5. Éditez cstrike/server.cfg (outil « Générateur de server.cfg CS 1.6 ») et cstrike/mapcycle.txt (outil « Éditeur de mapcycle.txt »).

  6. Lancez hlds_run -game cstrike (ou hlds.exe sous Windows) avec la carte et les slots voulus.

  7. Ouvrez 27015 UDP et TCP (et 27020 UDP pour HLTV) dans ufw, chez le fournisseur et sur la box.

  8. Testez en local (connect 127.0.0.1 dans la console du jeu), puis depuis une autre connexion.

  9. Créez un service systemd et planifiez mises à jour et sauvegardes.

Prérequis

  • Système : Linux (Ubuntu/Debian) ou Windows. HLDS est un programme 32 bits.
  • Ressources : non fixées officiellement dans les sources consultées. Une machine d'1 vCPU et 1 Go de RAM suffit en général pour 16 à 32 slots sans plugins lourds (estimation, à valider).
  • Comptes : installation en connexion anonyme. Aucun jeton GSLT n'est mentionné pour HLDS dans les sources consultées.
  • Variante communautaire : ReHLDS (non officiel) est une alternative largement utilisée ; ce guide couvre le HLDS de Valve.

Installation locale sous Windows

Décompressez SteamCMD dans C:\steamcmd, installez HLDS (répétez la mise à jour jusqu'à ce qu'elle ne télécharge plus rien), puis lancez hlds.exe. Testez avec connect 127.0.0.1 dans la console de Counter-Strike 1.6.

cd C:\steamcmd
steamcmd +force_install_dir C:\hlds +login anonymous +app_set_config 90 mod cstrike +app_update 90 validate +quit
steamcmd +force_install_dir C:\hlds +login anonymous +app_update 90 validate +quit

cd C:\hlds
hlds.exe -console -game cstrike +maxplayers 32 +map de_dust2

VPS Linux : utilisateur et dépendances

sudo adduser steam
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 steamcmd
su - steam

VPS Linux : installation de HLDS

Plusieurs guides (Vultr, Gentoo, hébergeurs) indiquent que HLDS doit être mis à jour plusieurs fois : la deuxième et la troisième commande répètent app_update 90 validate. Le mod est choisi par app_set_config 90 mod cstrike.

steamcmd +force_install_dir /home/steam/hlds +login anonymous +app_set_config 90 mod cstrike +app_update 90 validate +quit
steamcmd +force_install_dir /home/steam/hlds +login anonymous +app_update 90 validate +quit
steamcmd +force_install_dir /home/steam/hlds +login anonymous +app_update 90 validate +quit

VPS Linux : premier démarrage

Lancez hlds_run depuis le dossier d'installation. Le serveur lit cstrike/server.cfg à chaque changement de carte et cstrike/mapcycle.txt pour la rotation ; cstrike/liblist.gam décrit le mod (voir l'outil « Éditeur de liblist.gam » pour charger Metamod).

cd /home/steam/hlds
./hlds_run -console -game cstrike +ip 0.0.0.0 +port 27015 +maxplayers 32 +map de_dust2

Ports à ouvrir et pare-feu Linux (ufw)

Ces ports sont les valeurs usuelles de HLDS (non confirmées par une page officielle consultée). Pour changer le port, utilisez +port N sur la ligne de lancement et ouvrez-le à la place de 27015.

Ouvrez uniquement ce dont vous avez besoin, puis testez depuis une autre connexion (pas depuis le serveur lui-même).

  • 27015/udp : jeu (port HLDS par défaut)
  • 27015/tcp : RCON
  • 27020/udp : HLTV (optionnel)
sudo ufw allow OpenSSH
sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27020/udp
sudo ufw enable
sudo ufw status

Pare-feu Windows (netsh)

Dans une invite de commandes administrateur, créez une règle entrante par port (ou ouvrez « Pare-feu Windows Defender avec fonctions avancées de sécurité »).

netsh advfirewall firewall add rule name="Counter-Strike 1.6 27015 UDP" dir=in action=allow protocol=UDP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 1.6 27015 TCP" dir=in action=allow protocol=TCP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 1.6 27020 UDP" dir=in action=allow protocol=UDP localport=27020

Pare-feu du fournisseur et redirection de ports (box)

Chez un hébergeur (OVH, Hetzner, Scaleway…), ouvrez aussi les mêmes ports dans le pare-feu ou le « security group » du fournisseur : ufw ne suffit pas s'il existe un pare-feu en amont. Pour un serveur à la maison, créez dans votre box une redirection (NAT) de chaque port vers l'adresse IP locale de la machine (fixez-la ou réservez-la par DHCP).

Test : depuis une autre connexion, ajoutez le serveur par « IP:port » dans le navigateur de serveurs de Counter-Strike 1.6 ou en console. Si cela échoue, vérifiez dans l'ordre : service démarré, pare-feu local, pare-feu du fournisseur, redirection NAT.

Démarrage automatique : service systemd

Créez /etc/systemd/system/cs16.service (en root), puis activez-le. Adaptez l'utilisateur et les chemins ; consultez les journaux avec journalctl -u cs16 -f.

[Unit]
Description=Counter-Strike 1.6 dedicated server
After=network-online.target
Wants=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam/hlds
ExecStart=/home/steam/hlds/hlds_run -console -game cstrike +ip 0.0.0.0 +port 27015 +maxplayers 32 +map de_dust2
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

# then:
# sudo systemctl daemon-reload
# sudo systemctl enable --now cs16

Windows : tâche planifiée au démarrage

Sous Windows, une tâche planifiée lance votre script .bat à l'ouverture du système (exécutez la commande dans une invite administrateur).

schtasks /Create /TN "Counter-Strike 1.6 server" /TR "C:\hlds\start-cs16.bat" /SC ONSTART /RU SYSTEM /RL HIGHEST

Mises à jour, sauvegardes et redémarrages planifiés

Arrêtez le service avant de mettre à jour (même commande SteamCMD que pour l'installation), sauvegardez régulièrement les fichiers de configuration et de données, et planifiez un redémarrage quotidien si le serveur dégrade avec le temps.

sudo systemctl stop cs16
steamcmd +force_install_dir /home/steam/hlds +login anonymous +app_update 90 validate +quit
sudo systemctl start cs16

# backup
tar czf ~/cs16-$(date +%F).tar.gz -C /home/steam/hlds cstrike/server.cfg cstrike/mapcycle.txt cstrike/liblist.gam cstrike/addons cstrike/banned.cfg cstrike/listip.cfg

# daily restart at 05:00 (root crontab: sudo crontab -e)
0 5 * * * systemctl restart cs16

Déclarer et trouver son serveur

Ajoutez votre serveur sur https://game-rank.com/jeux/counter-strike-1-6 pour le rendre visible à la communauté. Pour le retrouver dans le jeu, utilisez le navigateur de serveurs ou connectez-vous directement avec son adresse IP:port.

Dépannage : erreurs fréquentes

  • Fichiers manquants ou serveur qui ne démarre pas après l'installation : HLDS est connu pour une première installation incomplète. Solution : relancez app_update 90 validate (avec app_set_config 90 mod cstrike) deux ou trois fois.
  • Le serveur reste bloqué au changement de carte : une carte listée dans mapcycle.txt est absente de cstrike/maps/. Solution : vérifiez que chaque .bsp existe ou retirez la ligne.
  • Serveur invisible depuis l'extérieur : le service tourne mais personne ne peut se connecter. Cause : port fermé (ufw, pare-feu du fournisseur ou redirection NAT manquante). Solution : ouvrez les ports listés plus haut aux trois niveaux et testez depuis une autre connexion.
  • Port déjà utilisé au démarrage : une autre instance occupe le port. Solution : listez les processus avec ss -lunp | grep 27015, arrêtez l'ancienne instance, ou donnez un port différent avec -port à chaque serveur.
  • SteamCMD « Failed to install app » ou téléchargement bloqué : cause fréquente, disque plein ou droits insuffisants sur le dossier. Solution : vérifiez df -h et le propriétaire du dossier, puis relancez la commande avec validate (plusieurs fois si nécessaire).
  • srcds_run : « No such file or directory » ou bibliothèque 32 bits manquante : le serveur Source est un programme 32 bits. Solution : activez l'architecture i386 (dpkg --add-architecture i386) et installez lib32gcc-s1 et lib32stdc++6.

Questions fréquentes

Quel est l'identifiant SteamCMD du serveur CS 1.6 ?
Le HLDS est l'application 90 ; on choisit le mod avec +app_set_config 90 mod cstrike avant +app_update 90 validate.
Où mettre Metamod ou AMX Mod X ?
Ces modules communautaires se placent dans cstrike/addons/ et Metamod se charge via la ligne gamedll_linux (ou gamedll) de cstrike/liblist.gam. Suivez la documentation de la distribution choisie ; l'outil « Éditeur de liblist.gam » modifie cette ligne.
Puis-je lancer le serveur en root ?
Déconseillé : créez un utilisateur dédié (par exemple steam) sans droits administrateur, installez et lancez le serveur avec lui. Une faille du serveur ou d'un plugin ne compromet alors pas toute la machine.
Mon serveur Counter-Strike 1.6 n'apparaît pas dans la liste : que vérifier ?
Vérifiez d'abord que les ports sont ouverts à tous les niveaux, que le serveur n'est pas en mode LAN (sv_lan 0) et, si le jeu l'exige, qu'un jeton de serveur (GSLT) valide est fourni. La liste Steam peut mettre quelques minutes à se rafraîchir ; en attendant, connectez-vous par IP:port.

Outils pour votre serveur Counter-Strike 1.6

Counter-Strike 1.6
Counter-Strike 1.6Accès libre
Créez le server.cfg de votre serveur Counter-Strike 1.6 (HLDS) : manches, argent, C4, friendly fire, physique et débit réseau.
ConfigurationHLDSOuvrir
Documentation
Counter-Strike 1.6
Counter-Strike 1.6Accès libre
Composez la rotation de cartes de votre serveur Counter-Strike 1.6 : nettoyage, doublons supprimés, première carte au choix.
CartesConfigurationOuvrir
Documentation
Counter-Strike 1.6
Counter-Strike 1.6Accès libre
Générez le liblist.gam de Counter-Strike 1.6 : importez votre fichier, changez la DLL de jeu (ex. Metamod) et les URL.
MetamodConfigurationOuvrir
Documentation