1. Un mot sur le nom : Minetest ou Luanti ?
Le moteur historiquement appelé Minetest porte désormais le nom Luanti. Selon la version et la distribution, vous trouverez donc des paquets et des binaires aux deux noms : minetest-server / minetestserver pour les anciennes versions, luanti / luantiserver pour les récentes. Le fonctionnement reste le même. Vérifiez le nom exact avec apt search luanti et apt search minetest.
2. Installation
Sur Debian ou Ubuntu, deux possibilités :
- Le dépôt de la distribution : simple et stable, mais la version peut être ancienne.
- Le PPA ou les paquets officiels du projet : version plus récente, utile pour profiter des dernières API de modding.
sudo apt update
sudo apt install luanti-server # ou minetest-server sur les versions plus anciennes
Si le paquet serveur n'existe pas sous ce nom chez vous, cherchez-le avec apt search : seul le nom change, pas la méthode.
3. Créer un utilisateur dédié
Ne lancez jamais un serveur de jeu en root. Créez un compte système sans droits particuliers :
sudo adduser --system --group --home /var/lib/luanti luanti
4. Le fichier de configuration
Les réglages du serveur se trouvent dans un fichier minetest.conf (ou luanti.conf selon la version). Quelques options courantes :
server_name = Mon serveur
server_description = Serveur communautaire francophone
motd = Bienvenue !
port = 30000
max_users = 15
default_game = minetest_game
enable_damage = true
disallow_empty_password = true
server_announce = false
port: le port UDP d'écoute (30000 par défaut).max_users: à ajuster en fonction de votre processeur et de votre bande passante.disallow_empty_password: refuse les comptes sans mot de passe.server_announce: à activer seulement si vous voulez apparaître dans la liste publique des serveurs.
5. Choisir le backend de base de données
Luanti stocke le monde, les joueurs et les données d'authentification via des backends, définis dans le fichier world.mt de chaque monde :
| sqlite3 | Par défaut. Aucun service à installer, parfait pour un petit serveur. |
| leveldb | Peut mieux supporter une écriture intensive que SQLite sur certains usages. |
| postgresql | Pour les gros serveurs : sauvegardes à chaud, accès concurrents, requêtes SQL externes. |
| redis | Base clé-valeur en mémoire, rapide, mais à gérer avec soin (persistance). |
Commencez avec SQLite. Migrez plus tard avec l'outil intégré (option --migrate du binaire serveur) si la charge le justifie.
6. Lancer le serveur en service systemd
[Unit]
Description=Serveur Luanti
After=network.target
[Service]
User=luanti
WorkingDirectory=/var/lib/luanti
ExecStart=/usr/games/luantiserver --config /etc/luanti/luanti.conf --world /var/lib/luanti/worlds/monde
Restart=on-failure
[Install]
WantedBy=multi-user.target
Adaptez le chemin du binaire (which luantiserver) et les noms de fichiers. Activez ensuite le service :
sudo systemctl daemon-reload
sudo systemctl enable --now luanti
7. Ouvrir le port dans le pare-feu
Luanti utilise l'UDP, pas le TCP. Avec UFW :
sudo ufw allow 30000/udp
Si le serveur est derrière une box, redirigez aussi le port UDP 30000 vers la machine.
8. Vérifier que tout fonctionne
systemctl status luanti: le service tourne.journalctl -u luanti -f: suivre les journaux et repérer les erreurs de mods.- Connectez-vous depuis un client avec l'adresse et le port du serveur.
Pour la suite, consultez le guide pour sécuriser votre serveur et celui pour créer votre premier mod en Lua.