🎮 Guide Complet - Serveur Enemy Territory

Bienvenue dans le guide complet pour créer, configurer et gérer votre propre serveur Wolfenstein: Enemy Territory !

Que vous souhaitiez héberger sur un VPS, un serveur dédié ou un NAS, ce tutoriel vous accompagnera pas à pas.

📋 Table des Matières

  1. Prérequis
  2. Méthodes d'hébergement
  3. Installation du serveur
  4. Configuration de base
  5. Mods populaires
  6. Installation des maps
  7. Maintenance et gestion

🔧 Prérequis

Connaissances requises

Matériel minimum

Composant Minimum Recommandé
CPU 1 Core @ 1 GHz 2 Cores @ 2 GHz
RAM 512 MB 1 GB+
Stockage 2 GB 5 GB+
Bande passante 10 Mbps 100 Mbps

🖥️ Méthodes d'hébergement

1. VPS / Serveur Dédié (Recommandé)

Populaire Facile

✅ Avantages

  • IP fixe publique
  • Bande passante illimitée
  • Disponibilité 24/7
  • Performances optimales
  • Facile à configurer

❌ Inconvénients

  • Coût mensuel (5-20€/mois)
  • Nécessite des connaissances Linux

Hébergeurs recommandés :

  • OVH - VPS à partir de 5.00€/mois
  • IONOS - Excellent rapport qualité/prix
  • LWS - Simple et rapide
  • HOSTINGER - Pas cher avec beaucoup de RAM

2. NAS (Synology/Asustor)

Avancé

✅ Avantages

  • Pas de coût mensuel
  • Contrôle total
  • Matériel déjà possédé

❌ Inconvénients

  • Configuration NAT/Port forwarding
  • IP dynamique (DynDNS nécessaire)
  • Bande passante limitée (upload)
  • Consommation électrique
  • Performance variable selon le NAS
⚠️ Attention : Vérifiez que votre NAS supporte Docker ou les conteneurs Linux. Les modèles Synology DS218+ et supérieurs sont recommandés.

3. PC Domestique

Débutant

✅ Avantages

  • Gratuit (matériel existant)
  • Idéal pour tests
  • Accès physique direct

❌ Inconvénients

  • Nécessite un PC allumé 24/7
  • Configuration réseau complexe
  • Facture électrique
  • Upload limité (ADSL/Fibre)
  • Non recommandé pour serveur public

⚙️ Installation du Serveur

Étape 1 : Connexion SSH

ssh root@votre-ip-serveur # Ou avec un utilisateur spécifique ssh utilisateur@votre-ip-serveur

Étape 2 : Installation des dépendances

Sur Debian/Ubuntu :

# Mise à jour du système sudo apt update && sudo apt upgrade -y # Installation des dépendances sudo apt install -y wget screen unzip lib32gcc-s1 lib32stdc++6 # Création d'un utilisateur dédié (sécurité) sudo adduser etserver sudo su - etserver

Sur CentOS/RHEL :

# Mise à jour sudo yum update -y # Installation des dépendances sudo yum install -y wget screen unzip glibc.i686 libstdc++.i686 # Création utilisateur sudo adduser etserver sudo su - etserver

Étape 3 : Téléchargement d'ET Legacy

💡 Conseil : ET Legacy est la version moderne recommandée d'Enemy Territory. Elle est maintenue activement et corrige de nombreux bugs.
# Créer le dossier serveur mkdir ~/etserver cd ~/etserver # Télécharger ET Legacy (version serveur uniquement) wget https://www.etlegacy.com/download/file/415 -O etlegacy-latest.tar.gz # Extraire tar -xzvf etlegacy-latest.tar.gz # Télécharger les fichiers pak ET officiels mkdir etmain cd etmain wget http://etlegacy.com/download/etmain/pak0.pk3 wget http://etlegacy.com/download/etmain/pak1.pk3 wget http://etlegacy.com/download/etmain/pak2.pk3 cd ..

Étape 4 : Configuration des ports

# Ouvrir les ports dans le firewall sudo ufw allow 27960/udp sudo ufw allow 27960/tcp # Pour CentOS/RHEL sudo firewall-cmd --permanent --add-port=27960/udp sudo firewall-cmd --permanent --add-port=27960/tcp sudo firewall-cmd --reload

🔧 Configuration de Base

Création du fichier de configuration

# Créer le fichier server.cfg nano ~/etserver/etmain/server.cfg

Configuration minimale (server.cfg) :

// Informations serveur set sv_hostname "^1Mon Serveur ^7ET" set sv_maxclients 32 set g_password "" set sv_privateclients 0 set sv_privatepassword "" set rconpassword "votre_mot_de_passe_rcon_securise" // Réseau set net_port 27960 set net_ip "0.0.0.0" // Master servers (pour apparaître dans la liste) set sv_master1 "etmaster.idsoftware.com" set sv_master2 "master.etlegacy.com" set sv_master3 "master.splatterladder.com" set sv_master4 "master.trackbase.net" set sv_master5 "master0.gameaholic.com" // Gameplay de base set g_gametype 6 // 2=Objective, 3=Stopwatch, 4=Campaign, 6=Map Voting set g_friendlyfire 1 set g_maxlives 0 set g_alliedmaxlives 0 set g_axismaxlives 0 set g_speed 320 set g_gravity 800 // Logs set g_log "etserver.log" set logfile 1 set g_logsync 0 // Anti-cheat de base set sv_pure 1 set sv_cheats 0 set sv_floodprotect 1 // Limites armes set g_heavyWeaponRestriction 20 set g_automg42 1 // Messages set g_motd "" set g_filtercams 0 set g_spectatorInactivity 0 // Rotation de maps set g_gametype 6 exec mapvotecycle.cfg

Création de la rotation de maps

# Créer mapvotecycle.cfg nano ~/etserver/etmain/mapvotecycle.cfg
// Rotation de maps classiques set d1 "set g_gametype 2 ; map oasis ; set nextmap vstr d2" set d2 "set g_gametype 2 ; map battery ; set nextmap vstr d3" set d3 "set g_gametype 2 ; map goldrush ; set nextmap vstr d4" set d4 "set g_gametype 2 ; map radar ; set nextmap vstr d5" set d5 "set g_gametype 2 ; map railgun ; set nextmap vstr d6" set d6 "set g_gametype 2 ; map fuel_dump ; set nextmap vstr d1" vstr d1

Script de démarrage

# Créer le script de démarrage nano ~/etserver/start.sh
#!/bin/bash cd ~/etserver ./etlded +set dedicated 2 +set net_port 27960 +exec server.cfg
# Rendre le script exécutable chmod +x ~/etserver/start.sh # Démarrer le serveur dans screen screen -dmS etserver ~/etserver/start.sh # Se reconnecter au serveur screen -r etserver # Détacher de screen : Ctrl+A puis D

🎯 Mods Populaires

🔥 ETPro

Le plus populaire

Type : Compétitif

Idéal pour : Matchs 6v6, compétitions, clanwars

  • Configuration pro standardisée
  • Anti-cheat intégré
  • Logs détaillés
  • Match pause/resume

Téléchargement : etpro.de

⚡ Jaymod

Très populaire

Type : Public fun

Idéal pour : Serveurs publics, XP save

  • Système XP persistant
  • Commandes !commands
  • Shrubbot (admin)
  • Stats avancées

Téléchargement : jaymod.clanfu.org

🌟 Silent Mod

Polyvalent

Type : Hybride

Idéal pour : Serveurs publics configurables

  • Très configurable
  • Anti-cheat puissant
  • Voting system
  • Map scripts avancés

Téléchargement : silentmod.net

🎖️ NoQuarter

Type : Fun/Classes

Idéal pour : Gameplay alternatif

  • Nouvelles classes
  • Nouvelles armes
  • XP system modifié
  • Customisation poussée

Téléchargement : noquarter.org

🔫 ETNam

Type : Conversion totale

Idéal pour : Thème Vietnam

  • Maps Vietnam
  • Armes Vietnam
  • Sons/modèles custom
  • Ambiance unique

Téléchargement : etnam.r-e-c.net

💀 True Combat

Type : Réaliste

Idéal pour : Simulation tactique

  • Gameplay réaliste
  • Dégâts réalistes
  • Armes modernes
  • Maps urbaines

Téléchargement : truecombat.com

Installation d'un mod (exemple : Jaymod)

# Se placer dans le dossier serveur cd ~/etserver # Créer le dossier jaymod mkdir jaymod cd jaymod # Télécharger Jaymod wget http://jaymod.clanfu.org/files/jaymod-2.2.0.jar unzip jaymod-2.2.0.jar # Copier les fichiers nécessaires cp ~/etserver/etmain/*.pk3 ~/etserver/jaymod/ # Modifier le script de démarrage nano ~/etserver/start.sh
#!/bin/bash cd ~/etserver ./etlded +set dedicated 2 +set fs_game jaymod +set net_port 27960 +exec server.cfg

🗺️ Installation des Maps Custom

Sources de maps populaires

Installation d'une map

# Exemple avec la map "supply" cd ~/etserver/etmain # Télécharger la map (.pk3) wget https://example.com/supply.pk3 # Ajouter la map à la rotation nano mapvotecycle.cfg
// Ajouter cette ligne dans la rotation set d7 "set g_gametype 2 ; map supply ; set nextmap vstr d1" // Modifier la dernière map pour pointer vers d7

Maps populaires à installer

Map Type Description
adlernest Objectif Base secrète dans les Alpes
braundorf_b4 Objectif Village allemand, très populaire
supply Objectif Dépôt militaire, classique
sw_goldrush_te Stopwatch Version tournoi de goldrush
frostbite Objectif Base arctique
venice Objectif Canaux de Venise

🔧 Maintenance et Gestion

Commandes RCON essentielles

# Se connecter en RCON (depuis le jeu) /rconpassword votre_mot_de_passe /rcon status # Changer de map /rcon map oasis # Kicker un joueur /rcon kick nom_joueur # Banner un joueur /rcon ban nom_joueur # Redémarrer la map /rcon map_restart # Recharger la config /rcon exec server.cfg

Automatisation avec systemd

# Créer le service systemd sudo nano /etc/systemd/system/etserver.service
[Unit] Description=Enemy Territory Server After=network.target [Service] Type=forking User=etserver WorkingDirectory=/home/etserver/etserver ExecStart=/usr/bin/screen -dmS etserver /home/etserver/etserver/start.sh ExecStop=/usr/bin/screen -S etserver -X quit Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
# Activer le service sudo systemctl daemon-reload sudo systemctl enable etserver sudo systemctl start etserver # Vérifier le statut sudo systemctl status etserver # Voir les logs sudo journalctl -u etserver -f

Backup automatique

# Créer le script de backup nano ~/backup_et.sh
#!/bin/bash # Script de backup automatique du serveur ET BACKUP_DIR="/home/etserver/backups" DATE=$(date +%Y%m%d_%H%M%S) SERVER_DIR="/home/etserver/etserver" # Créer le dossier de backup s'il n'existe pas mkdir -p $BACKUP_DIR # Créer l'archive tar -czf $BACKUP_DIR/etserver_backup_$DATE.tar.gz $SERVER_DIR # Garder seulement les 7 derniers backups cd $BACKUP_DIR ls -t | tail -n +8 | xargs rm -f echo "Backup créé : etserver_backup_$DATE.tar.gz"
# Rendre exécutable chmod +x ~/backup_et.sh # Ajouter au crontab (backup quotidien à 4h du matin) crontab -e # Ajouter cette ligne : 0 4 * * * /home/etserver/backup_et.sh

Monitoring du serveur

# Script de monitoring simple nano ~/monitor_et.sh
#!/bin/bash # Vérifier si le serveur tourne if ! screen -list | grep -q "etserver"; then echo "Serveur ET down ! Redémarrage..." cd /home/etserver/etserver screen -dmS etserver ./start.sh echo "Serveur redémarré à $(date)" >> /home/etserver/restart.log fi
# Rendre exécutable chmod +x ~/monitor_et.sh # Vérifier toutes les 5 minutes crontab -e # Ajouter : */5 * * * * /home/etserver/monitor_et.sh

Optimisation des performances

Dans server.cfg :

// Optimisation réseau set sv_fps 20 // FPS du serveur (20 est optimal) set sv_maxRate 25000 // Débit max par joueur set sv_dl_maxRate 42000 // Débit max pour downloads set sv_wwwDownload 1 // Permettre téléchargement HTTP set sv_wwwBaseURL "http://votre-site.com/etfiles/" // URL des fichiers // Optimisation CPU set sv_hibernate 0 // Ne pas mettre en veille set com_hunkmegs 128 // Mémoire allouée (augmenter si besoin) set com_zonemegs 64 // Zone mémoire // Anti-lag set g_antilag 1 set pmove_fixed 0

🌐 Configuration Avancée

Configuration NAS Synology

Méthode 1 : Docker (Recommandée)

  1. Installer Docker depuis le Package Center
  2. Créer un conteneur avec une image Linux (Ubuntu/Debian)
  3. Monter les volumes pour persistance des données
  4. Mapper les ports 27960 UDP/TCP
  5. Suivre les étapes d'installation standard Linux ci-dessus
# Exemple Docker Compose version: '3' services: etserver: image: ubuntu:20.04 container_name: etserver restart: unless-stopped ports: - "27960:27960/udp" - "27960:27960/tcp" volumes: - ./etserver:/home/etserver/etserver command: /home/etserver/etserver/start.sh

Méthode 2 : SSH natif

  1. Activer SSH dans le panneau de contrôle
  2. Se connecter : ssh admin@ip-du-nas
  3. Installer les packages via ipkg ou opkg
  4. Suivre l'installation standard
⚠️ Port Forwarding obligatoire :
  • Accédez à votre box internet
  • Configurez NAT/PAT : Port externe 27960 → IP NAS:27960
  • Protocole : UDP et TCP

Configuration QNAP

  1. Installer Container Station (équivalent Docker)
  2. Créer un conteneur LXC avec Ubuntu
  3. Accéder au terminal du conteneur
  4. Suivre l'installation standard Linux
💡 Astuce QNAP : Utilisez l'application "Linux Station" pour une installation encore plus simple avec un environnement Linux complet.

DynDNS pour IP dynamique

# Installer ddclient pour update automatique DynDNS sudo apt install ddclient # Configurer sudo nano /etc/ddclient.conf
# Configuration exemple pour No-IP protocol=noip use=web server=dynupdate.no-ip.com login=votre_login password='votre_password' votre-domaine.no-ip.org

Services DynDNS gratuits :

🛡️ Sécurité

Configuration firewall

# UFW (Ubuntu/Debian) sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 22/tcp # SSH sudo ufw allow 27960/udp # ET Server sudo ufw allow 27960/tcp # ET Server sudo ufw enable # Fail2ban pour protection SSH sudo apt install fail2ban sudo systemctl enable fail2ban

Protection anti-DDoS basique

# Dans server.cfg set sv_floodprotect 1 set g_maxConnsPerIP 3 // Max 3 connexions par IP set sv_minping 0 set sv_maxping 300 // Kick ping > 300ms // Protection spam set g_voiceChatsAllowed 4 // Max voice chats set g_complaintlimit 3 // Limite plaintes

Checklist sécurité

🔍 Dépannage

Problèmes courants

❌ Le serveur n'apparaît pas dans la liste

Solutions :

  • Vérifier que les ports 27960 UDP/TCP sont ouverts
  • Vérifier la configuration des master servers
  • Attendre 5-10 minutes après le démarrage
  • Tester la connexion directe : /connect ip:port
  • Vérifier que sv_master1 à sv_master5 sont configurés

❌ "PB_INIT_FAILURE" ou erreur Punkbuster

Solutions :

  • Désactiver Punkbuster : set sv_punkbuster 0
  • Punkbuster n'est plus maintenu, ne pas l'utiliser
  • Utiliser un mod avec anti-cheat intégré (ETPro, Silent)

❌ Lag ou performances faibles

Solutions :

  • Réduire sv_maxclients
  • Augmenter com_hunkmegs (128 ou 256)
  • Vérifier la bande passante upload
  • Optimiser sv_fps (20 est optimal)
  • Désactiver les logs en temps réel : g_logsync 0

❌ Crash au démarrage

Solutions :

  • Vérifier les logs : cat ~/etserver/etmain/etserver.log
  • Vérifier que les fichiers pak0-2.pk3 sont présents
  • Réinstaller les dépendances 32-bit
  • Vérifier les permissions : chmod +x etlded

Commandes de diagnostic

# Vérifier si le serveur écoute sur le port sudo netstat -tulpn | grep 27960 # Vérifier les processus ps aux | grep etlded # Tester la connexion réseau nc -zvu localhost 27960 # Voir les logs en temps réel tail -f ~/etserver/etmain/etserver.log # Vérifier l'utilisation des ressources top htop

📚 Ressources Utiles

Sites communautaires

Site Description URL
ET Legacy Version moderne d'ET etlegacy.com
Splatterladder Stats, serveurs, maps et.splatterladder.com
Trackbase Stats joueurs/serveurs et.trackbase.net
Crossfire News & communauté crossfire.nu
ETJump Trick jumping etjump.com
AntiPro Database de maps et.antigame.com

Discord & Forums

Outils administrateur

Outil Usage
ETAdmin Interface web pour gérer le serveur
HLSW Gestionnaire multi-serveurs (Windows)
Shrubbot Système d'administration in-game
ETConsole RCON tool avancé

🎓 Configuration Avancée - Exemples

Serveur Fun/Public (32 joueurs)

// server.cfg optimisé pour serveur public set sv_hostname "^1[FR] ^7Serveur Fun ^2XP SAVE" set sv_maxclients 32 set g_maxlives 0 set g_friendlyfire 0 set g_heavyWeaponRestriction 100 set g_medicChargeTime 30000 set g_engineerChargeTime 30000 set g_soldierChargeTime 20000 set g_LTChargeTime 30000 set g_covertopsChargeTime 30000 // XP plus rapide set g_xpSave 1 set g_xpSaveMaxAge 90 set g_skills 4 // Respawn rapide set g_alliedSpawnTimer 15 set g_axisSpawnTimer 15 // Vote maps set g_gametype 6 set vote_limit 3 set vote_percent 51

Serveur Compétition (ETPro 6v6)

// server.cfg pour match 6v6 set sv_hostname "^1[FR] ^7Match Server ^36v6" set sv_maxclients 16 set sv_privateclients 4 set sv_privatepassword "password_match" set g_password "match_pwd" // Configuration ETPro standard set b_match_warmupjoin 0 set b_warmuptime 60000 set b_match_minplayers 2 // Anti-cheat strict set sv_pure 2 set b_anticheat 1 set b_defaultbantime 0 // Logs pour demos set g_log "match.log" set g_logSync 1 // Config match standard exec etpro.cfg exec competition.cfg

Serveur TrickJump/ETJump

// server.cfg pour ETJump set sv_hostname "^1[FR] ^7TrickJump ^2Server" set sv_maxclients 20 set g_gametype 2 // Configs ETJump set g_speed 320 set g_gravity 800 set pmove_fixed 1 set pmove_msec 8 // Saves de positions set g_enableMapEntities 1 set g_ghostPlayers 1 // Timerun set g_timeruns 1 set g_ranks 1

💡 Conseils Pro

🎯 Pour un serveur public populaire :

  • Choisir un bon nom de serveur (court, clair)
  • Rotation de maps populaires (oasis, goldrush, supply, battery)
  • XP Save activé (les joueurs adorent)
  • Admins actifs et présents
  • Pas trop de règles restrictives
  • Bonne connexion (100+ Mbps)
  • 24-32 slots maximum

⚡ Pour de bonnes performances :

  • Ne pas héberger sur WiFi
  • Préférer un SSD pour le stockage
  • Ne pas dépasser 32 joueurs
  • Limiter le nombre de bots (max 8)
  • Nettoyer les logs régulièrement
  • Redémarrer le serveur 1x par jour

⚠️ À éviter absolument :

  • Trop de mods en même temps
  • Maps trop lourdes (> 50MB)
  • RCON password faible
  • Pas de backup
  • Ignorer les mises à jour de sécurité
  • Héberger depuis Windows (préférer Linux)

📊 Estimation des coûts

Solution Coût initial Coût mensuel Difficulté
VPS OVH 0€ 5.00€ ⭐⭐
VPS IONOS 0€ 10.00€ ⭐⭐
Serveur dédié 0€ 15€ ⭐⭐⭐
NAS Synology 300-800€ ~3€ élec ⭐⭐⭐⭐
PC domestique 0€ (existant) ~10€ élec ⭐⭐⭐

✅ Checklist finale

Avant de mettre le serveur en ligne :

🎮 Bon courage pour votre serveur ET !

Guide créé pour la communauté Enemy Territory

N'hésitez pas à rejoindre les Discord communautaires pour de l'aide !

Dernière mise à jour : Octobre 2025
Créé avec ❤️ pour Clan Co@sT