aslain.dev
0%
01 Hizmetler 02 Hakkımda 03 Projeler 04 Stack 05 Blog 06 İletişim
← Tüm makaleler Serveur de Jeu

Administration de serveur Linux : bases du jeu

Faire tourner un serveur de jeu sans accroc commence par des bases solides en administration de serveur Linux. Que vous hébergiez un serveur PvP Metin2, un monde Minecraft ou une application serveur C++ sur mesure, les mêmes tâches reviennent : se connecter, séparer les utilisateurs, démarrer automatiquement les services et sécuriser le réseau reposent tous sur les mêmes outils essentiels. Ce guide parcourt les premières étapes après la location d'un VPS, avec des commandes réelles et fonctionnelles, dans un ordre logique.

Se connecter via SSH

On accède généralement aux serveurs Linux sans interface graphique, via SSH. Votre hébergeur vous fournit une adresse IP et un mot de passe temporaire. La première connexion ressemble à ceci :

ssh root@IP_SERVEUR

Utiliser une clé SSH plutôt qu'un mot de passe est à la fois plus sûr et plus pratique. Vous générez une paire de clés sur votre machine et copiez la clé publique sur le serveur :

ssh-keygen -t ed25519 -C "serveur-jeu"
ssh-copy-id root@IP_SERVEUR

Les hébergeurs utilisent le port 22 par défaut. Si le vôtre a attribué un port personnalisé, précisez-le avec l'option -p : ssh -p 2222 root@IP_SERVEUR. Une fois la connexion par clé en place, désactiver la connexion par mot de passe est une étape de sécurité importante.

Mettre à jour le système et les paquets essentiels

La première tâche consiste à mettre à jour la liste des paquets et les logiciels installés. Sur la famille Debian/Ubuntu :

apt update && apt upgrade -y

Sur les dérivés de RHEL comme AlmaLinux/Rocky, l'équivalent est dnf upgrade -y. Quelques outils essentiels pour gérer un serveur de jeu :

  • htop — vue en direct du CPU, de la RAM et des processus
  • tmux ou screen — des sessions qui survivent à une déconnexion SSH
  • git — gérer les fichiers du serveur avec un contrôle de version
  • ufw — une interface de pare-feu lisible
apt install -y htop tmux git ufw

Créer un utilisateur dédié

Tout exécuter en tant que root est un risque majeur ; une seule commande erronée peut affecter tout le système. Faites tourner le serveur de jeu sous son propre utilisateur restreint. Créons un nouvel utilisateur et accordons-lui les droits administrateur (sudo) :

adduser jeu
usermod -aG sudo jeu

Sur les dérivés de RHEL, le groupe est wheel au lieu de sudo. Vous pouvez désormais vous connecter avec cet utilisateur et préfixer les commandes avec sudo au besoin. Les fichiers du serveur de jeu doivent se trouver dans le répertoire personnel de cet utilisateur, par exemple sous /home/jeu/serveur. Pour corriger la propriété des fichiers :

chown -R jeu:jeu /home/jeu/serveur

Gérer les services avec systemd

Si vous démarrez votre serveur de jeu à la main avec ./start.sh, l'application s'arrête à la fermeture de la session SSH ou au redémarrage du serveur. La bonne solution est un service systemd : il tourne en arrière-plan, redémarre automatiquement en cas de plantage et se lance au démarrage. Créez le fichier /etc/systemd/system/jeu.service :

[Unit]
Description=Serveur de jeu
After=network.target

[Service]
Type=simple
User=jeu
WorkingDirectory=/home/jeu/serveur
ExecStart=/home/jeu/serveur/start.sh
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Après avoir écrit le fichier, enregistrez et démarrez le service :

systemctl daemon-reload
systemctl enable --now jeu

Utilisez systemctl status jeu pour vérifier son état et journalctl -u jeu -f pour suivre les journaux en direct. Grâce à la ligne Restart=on-failure, si le serveur s'arrête de manière inattendue, systemd le relance en cinq secondes.

Pare-feu et gestion des ports

Les serveurs de jeu acceptent les connexions sur des ports précis. Fermer tout le reste réduit considérablement la surface d'attaque. Avec ufw, autorisez d'abord SSH (pour ne pas vous bloquer vous-même), puis ouvrez le port du jeu :

ufw allow 22/tcp
ufw allow 30000/tcp
ufw enable

Pour les jeux qui utilisent l'UDP, pensez à préciser le protocole : ufw allow 30000/udp. Vous pouvez lister vos règles avec ufw status numbered. Installer Fail2ban en plus bloque automatiquement les tentatives de force brute contre SSH et garde vos journaux propres.

Surveillance, sauvegardes et contrôle du disque

L'administration se poursuit une fois le serveur en ligne. Faites de quelques commandes une habitude régulière :

  • df -h — occupation du disque ; les fichiers journaux peuvent le remplir en silence
  • free -h — mémoire libre et swap
  • htop — quel processus consomme le CPU sous charge

Des sauvegardes régulières de la base de données et des fichiers de monde/personnages sont indispensables. Une sauvegarde MySQL simple ressemble à ceci :

mysqldump -u root -p jeu_db > /home/jeu/sauvegarde/jeu_db_$(date +%F).sql

En reliant cette commande à une tâche cron, vous pouvez réaliser une sauvegarde automatique chaque nuit. Conserver la sauvegarde hors du serveur, dans un emplacement séparé, vous sauvera en cas de catastrophe.

Questions fréquentes

Quelle distribution Linux choisir pour un serveur de jeu ?

Ubuntu Server LTS est le choix le plus pratique grâce à un large soutien communautaire et des paquets à jour. Debian est plus léger et très stable, tandis qu'AlmaLinux/Rocky conviennent à ceux qui veulent une compatibilité RHEL. Si vous débutez, commencez par Ubuntu LTS ; la plupart des commandes de cet article fonctionnent directement.

Combien de joueurs un serveur peut-il accueillir ?

Cela dépend du type de jeu, du nombre de cœurs CPU qu'il utilise et de la RAM disponible. Une boucle de jeu monothread atteindra un goulot d'étranglement CPU avec beaucoup de joueurs. Observez la charge avec htop pour identifier le goulot, et passez à un VPS plus puissant si nécessaire.

Ma connexion SSH se coupe sans cesse, que faire ?

Lancez le processus dans tmux ; même si la connexion tombe, le processus continue et vous y revenez avec tmux attach. À long terme, faire tourner le serveur de jeu comme un service systemd est la solution la plus robuste.

Bloqué sur la configuration du serveur ? Nous pouvons travailler ensemble sur la configuration Linux, la sécurité et l'automatisation de votre serveur de jeu — contactez-moi.

Devamı için