🎮 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
- Prérequis
- Méthodes d'hébergement
- Installation du serveur
- Configuration de base
- Mods populaires
- Installation des maps
- Maintenance et gestion
🔧 Prérequis
Connaissances requises
- Bases de Linux (ligne de commande)
- Notions de réseau (ports, IP, NAT)
- Accès SSH à votre serveur
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
- Splatterladder : et.splatterladder.com (base de données complète)
- ETJump : etjump.com (maps de trick jump)
- GameTracker : gametracker.com/search/et/
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)
- Installer Docker depuis le Package Center
- Créer un conteneur avec une image Linux (Ubuntu/Debian)
- Monter les volumes pour persistance des données
- Mapper les ports 27960 UDP/TCP
- 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
- Activer SSH dans le panneau de contrôle
- Se connecter :
ssh admin@ip-du-nas
- Installer les packages via ipkg ou opkg
- 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
- Installer Container Station (équivalent Docker)
- Créer un conteneur LXC avec Ubuntu
- Accéder au terminal du conteneur
- 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 :
- No-IP - no-ip.com (gratuit avec mise à jour mensuelle)
- DuckDNS - duckdns.org (totalement gratuit)
- FreeDNS - freedns.afraid.org
- Dynu - dynu.com
🛡️ 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é
- ✅ Changer le mot de passe RCON régulièrement
- ✅ Ne jamais partager le RCON publiquement
- ✅ Utiliser un utilisateur non-root pour le serveur
- ✅ Activer les logs et les surveiller
- ✅ Mettre à jour régulièrement le système
- ✅ Utiliser des mots de passe forts
- ✅ Limiter les connexions SSH (fail2ban)
- ✅ Sauvegarder régulièrement
🔍 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
- ET Legacy Discord - discord.gg/UBAZFys
- Crossfire Discord - Communauté active
- Splatterladder Forums - Support technique
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 :
- ☐ Serveur démarre sans erreur
- ☐ Ports ouverts (27960 UDP/TCP)
- ☐ Connexion directe fonctionne (
/connect ip:port)
- ☐ Serveur apparaît dans la liste des serveurs
- ☐ RCON fonctionne
- ☐ Rotation de maps configurée
- ☐ Mod installé et fonctionnel
- ☐ Backup automatique configuré
- ☐ Monitoring en place
- ☐ Nom du serveur attractif
- ☐ MOTD configuré
- ☐ Admins configurés
🎮 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