Guide de Configuration d'un Proxy Velocity sur Serveur Minecraft

Ce guide vous accompagne dans la configuration d'un proxy Velocity pour votre réseau de serveurs Minecraft
Guide de Configuration d'un Proxy Velocity sur Serveur Minecraft
Accès à votre panel Wisp : https://panel.verycloud.fr/
Documentation complète : https://verycloud.fr/docs
Qu'est-ce que Velocity ?
Velocity est un proxy Minecraft moderne, performant et sécurisé qui permet de :
- Connecter plusieurs serveurs Minecraft ensemble
- Permettre aux joueurs de passer d'un serveur à l'autre sans se déconnecter
- Réduire la charge sur chaque serveur individuel
- Centraliser l'authentification des joueurs
- Améliorer la sécurité avec le modern forwarding
- Support complet de Minecraft 1.7.2 à 1.21+
Pourquoi Utiliser Velocity ?
Avantages :
- Performance : Écrit en Java avec optimisations modernes
- Sécurité : Modern forwarding pour protéger vos serveurs backend
- Compatibilité : Support de Paper, Spigot, Bukkit, Fabric, Forge
- Flexibilité : Configuration facile avec fichiers TOML
- Plugins : Écosystème de plugins en croissance
Architecture d'un Réseau Velocity
Joueurs → Velocity Proxy (Port 25565) → Serveurs Backend
├─ Lobby (Port 25566)
├─ Survie (Port 25567)
├─ Créatif (Port 25568)
└─ Mini-jeux (Port 25569)
Prérequis
Avant de commencer, assurez-vous d'avoir :
- Accès à votre panel Wisp VeryCloud
- Au moins 2 serveurs Minecraft sur Wisp :
- 1 serveur pour Velocity (proxy)
- 1+ serveur(s) backend (Paper, Spigot, etc.)
- Les identifiants de connexion Wisp
- Connexion SSH ou accès au gestionnaire de fichiers
Partie 1 : Installation du Serveur Velocity
Étape 1 : Créer un Nouveau Serveur pour Velocity
- Connectez-vous à https://panel.verycloud.fr/
- Dans le dashboard, cliquez sur Créer un serveur (si vous n'avez pas encore créé le serveur Velocity)
- Sélectionnez :
- Type : Java (Velocity)
- Version : Velocity (dernière version)
- RAM : Minimum 512 MB (1 GB recommandé pour 50+ joueurs)
- Nom : "Proxy-Velocity" ou similaire
- Cliquez sur Créer
Étape 2 : Sélection du Serveur Velocity
Si vous avez déjà un serveur dédié à Velocity :
- Dans votre liste de serveurs, cliquez sur votre serveur Velocity
- Vous arrivez sur la console du serveur
Étape 3 : Téléchargement de Velocity
Via le panel Wisp :
- Allez dans Files (Fichiers) dans le menu de gauche
- Vérifiez que le fichier
velocity.jarest présent - Si ce n'est pas le cas, téléchargez-le :
- Allez sur https://papermc.io/downloads/velocity
- Téléchargez la dernière version
- Uploadez-le via le panel dans le dossier racine
Étape 4 : Premier Démarrage de Velocity
- Retournez dans la Console
- Cliquez sur Start (Démarrer)
- Velocity va générer les fichiers de configuration
- Attendez le message :
Done! Velocity is ready to accept connections. - Cliquez sur Stop pour arrêter le serveur
Partie 2 : Configuration de Velocity
Étape 1 : Accès au Fichier de Configuration
- Dans le panel Wisp, allez dans Files
- Localisez et ouvrez le fichier velocity.toml
- Le fichier s'ouvre dans l'éditeur intégré
Étape 2 : Configuration de Base
Voici les sections importantes à configurer :
Configuration Réseau
# Configuration du bind (ne pas modifier généralement)
bind = "0.0.0.0:25577"
# MOTD du serveur (message affiché dans la liste)
motd = "&3Bienvenue sur Mon Réseau Minecraft\n&bPowered by Velocity"
# Nombre maximum de joueurs
show-max-players = 100
# Version du protocole à annoncer
# Laissez vide pour auto-détection
announce-forge = false
Note : Le port 25577 est le port interne. Wisp fera automatiquement le mapping vers le port externe (généralement 25565).
Configuration des Serveurs Backend
C'est la section la plus importante. Ajoutez vos serveurs backend :
[servers]
# Format: nom-serveur = "adresse:port"
# Serveur lobby (serveur par défaut)
lobby = "127.0.0.1:25566"
# Serveur survie
survival = "127.0.0.1:25567"
# Serveur créatif
creative = "127.0.0.1:25568"
# Serveur mini-jeux
minigames = "127.0.0.1:25569"
# Vous pouvez ajouter autant de serveurs que nécessaire
Important :
- Si vos serveurs sont sur le même VPS que Velocity, utilisez
127.0.0.1:PORT - Si vos serveurs sont sur des VPS différents, utilisez l'IP publique :
123.45.67.89:PORT
Ordre de Connexion (Try List)
Définissez l'ordre de connexion des joueurs :
[servers]
# ... vos serveurs ci-dessus ...
try = [
"lobby",
"survival"
]
Les joueurs tenteront de se connecter d'abord au lobby, puis à survival si le lobby est indisponible.
Configuration du Forwarding
CRITIQUE pour la sécurité :
[forwarding]
# Mode de forwarding
# Options: "none", "legacy", "modern"
mode = "modern"
# Clé secrète pour modern forwarding
# GÉNÉREZ UNE CLÉ UNIQUE ET SÉCURISÉE
secret = "VOTRE_CLE_SECRETE_ICI"
# Taille maximale du buffer
forwarding-secret-file = ""
Génération d'une clé secrète :
Utilisez un générateur de clé aléatoire. Exemple en ligne de commande :
openssl rand -base64 32
Ou utilisez un générateur en ligne : https://generate.plus/en/base64
Exemple de clé : dXJhbmRvbWtleWhlcmVmb3JzZWN1cml0eXB1cnBvc2Vz
Étape 3 : Configuration Avancée (Optionnelle)
Messages Personnalisés
[messages]
# Message de kick lorsqu'aucun serveur n'est disponible
no-available-servers = "&cAucun serveur disponible. Réessayez plus tard."
# Message lorsqu'un serveur est déjà connecté
already-connected = "&cVous êtes déjà connecté à ce serveur!"
# Message de connexion refusée
connection-denied = "&cConnexion refusée. Contactez un administrateur."
Configuration de la Requête
[query]
# Activer le protocole Query
enabled = true
# Port pour les requêtes (généralement identique au port de jeu)
port = 25577
# Afficher les plugins
show-plugins = false
Configuration Avancée
[advanced]
# Taille de la compression réseau
compression-threshold = 256
# Niveau de compression (1-9, plus élevé = plus de CPU)
compression-level = -1
# Timeout de connexion (millisecondes)
connection-timeout = 5000
# Timeout de lecture
read-timeout = 30000
# Activer le HAProxy protocol
haproxy-protocol = false
# Activer TCP fast open
tcp-fast-open = false
# Activer BungeeCord plugin messaging channel
bungee-plugin-message-channel = true
# Montrer le ping dans la liste des serveurs
show-ping-requests = false
# Annoncer les erreurs dans la console
announce-proxy-commands = true
# Activer le log des connexions
log-player-connections = true
Étape 4 : Sauvegarde de la Configuration
- Après avoir modifié
velocity.toml, cliquez sur Save (Sauvegarder) en haut à droite - Redémarrez le serveur Velocity via la console : Restart
Partie 3 : Configuration des Serveurs Backend
Chaque serveur backend (Paper, Spigot, etc.) doit être configuré pour fonctionner avec Velocity.
Étape 1 : Configuration de Paper/Spigot
Pour chaque serveur backend, vous devez :
A. Configurer le Mode Online
- Dans le panel Wisp, sélectionnez votre serveur backend (ex: Lobby)
- Allez dans Files
- Ouvrez server.properties
- Modifiez cette ligne :
online-mode=false
Important : Mettez online-mode=false sur tous les serveurs backend !
- Sauvegardez
B. Configurer Velocity Forwarding (Paper)
Si vous utilisez Paper (recommandé) :
- Dans le serveur backend, allez dans Files
- Ouvrez le fichier config/paper-global.yml (ou paper.yml pour les anciennes versions)
- Trouvez la section
proxieset modifiez :
proxies:
velocity:
enabled: true
online-mode: true
secret: "VOTRE_CLE_SECRETE_ICI"
Important : Utilisez la même clé secrète que celle définie dans velocity.toml !
- Sauvegardez
C. Configurer BungeeCord Mode (Spigot)
Si vous utilisez Spigot ou Bukkit :
- Dans le serveur backend, ouvrez spigot.yml
- Modifiez :
settings:
bungeecord: true
- Sauvegardez
Note : Spigot utilise le mode BungeeCord legacy. Modern forwarding n'est disponible que sur Paper.
Étape 2 : Configuration des Ports
Assurez-vous que chaque serveur backend écoute sur un port différent :
- Dans server.properties de chaque serveur backend :
# Lobby
server-port=25566
# Survie
server-port=25567
# Créatif
server-port=25568
- Ces ports doivent correspondre à ceux définis dans
velocity.toml
Étape 3 : Redémarrage des Serveurs Backend
Pour chaque serveur backend :
- Allez dans la Console
- Cliquez sur Restart
- Vérifiez qu'il démarre correctement
Partie 4 : Plugins Velocity Essentiels
Installation de Plugins
- Téléchargez les plugins depuis :
- Dans le panel Wisp, serveur Velocity, allez dans Files
- Naviguez vers le dossier plugins
- Uploadez le fichier
.jardu plugin - Redémarrez Velocity
Plugins Recommandés
LuckPerms (Permissions)
Gestion des permissions à travers tout le réseau.
Installation :
- Téléchargez depuis : https://luckperms.net/download
- Installez sur Velocity ET tous les serveurs backend
- Configurez la base de données partagée (MySQL recommandé)
Configuration :
# Dans config.yml de LuckPerms
storage-method: mysql
data:
address: localhost:3306
database: luckperms
username: root
password: motdepasse
LibertyBans (Modération)
Système de bannissement centralisé.
Téléchargement : https://github.com/A248/LibertyBans
Installation :
- Installez sur Velocity uniquement
- Configure la base de données
- Utilisez les commandes
/ban,/mute, etc.
VelocityTab (Tab List)
Affichage personnalisé de la liste des joueurs.
Téléchargement : https://github.com/WiIIiam278/Velocitab
Installation :
- Installez sur Velocity
- Configurez dans
plugins/velocitab/config.yml
LuckPerms Velocity (Configuration)
Configuration dans plugins/LuckPerms/config.yml :
server: velocity
storage-method: mysql
data:
address: votre-db-host:3306
database: luckperms
username: luckperms_user
password: votre_password
# Synchronisation entre serveurs
sync-minutes: 3
Partie 5 : Commandes et Gestion
Commandes Velocity (Console ou In-Game)
Commandes de Base
/velocity dump
- Génère un dump de diagnostic
/velocity plugins
- Liste les plugins installés
/velocity version
- Affiche la version de Velocity
/velocity reload
- Recharge la configuration (certains changements nécessitent un redémarrage)
Commandes pour les Joueurs
/server <nom>
- Se connecter à un serveur spécifique
/server
- Voir les serveurs disponibles
Permissions
Configurez les permissions avec LuckPerms :
# Permission pour utiliser /server
velocity.command.server
# Permission pour voir tous les serveurs
velocity.command.server.list
# Permission admin
velocity.admin
Partie 6 : Sécurisation du Réseau
Étape 1 : Pare-feu sur les Serveurs Backend
CRITIQUE : Les serveurs backend ne doivent PAS être accessibles directement depuis Internet.
Configuration UFW (si applicable)
Sur chaque serveur backend :
# Bloquer l'accès externe au port du serveur
ufw deny 25566/tcp
# Autoriser uniquement Velocity (même machine)
ufw allow from 127.0.0.1 to any port 25566
Note : Avec Wisp, cela peut être géré via les allocations de ports.
Étape 2 : Configuration des Allocations Wisp
- Dans Wisp, pour chaque serveur backend :
- Allez dans Network (Réseau)
- Assurez-vous que les ports backend ne sont pas exposés publiquement
- Seul le port Velocity doit être accessible de l'extérieur
Étape 3 : Modern Forwarding
Le modern forwarding de Velocity chiffre les informations des joueurs, empêchant le spoofing d'IP.
Vérification :
Dans velocity.toml :
[forwarding]
mode = "modern"
secret = "votre-cle-secrete"
Dans Paper paper-global.yml :
proxies:
velocity:
enabled: true
secret: "votre-cle-secrete"
Les clés doivent correspondre exactement !
Partie 7 : Connexion et Tests
Étape 1 : Démarrage des Serveurs
- Démarrez tous les serveurs backend en premier :
- Lobby
- Survie
- Créatif
- etc.
- Attendez qu'ils soient complètement démarrés
- Démarrez Velocity en dernier
Étape 2 : Vérification dans la Console
Console Velocity devrait afficher :
[INFO] Listening on /0.0.0.0:25577
[INFO] Done! Velocity is ready to accept connections.
Étape 3 : Connexion au Réseau
- Lancez Minecraft
- Ajoutez le serveur avec :
- Adresse :
votre-ip-vps:25565(ou le port configuré) - Nom : Nom de votre réseau
- Adresse :
- Connectez-vous
- Vous devriez arriver sur le serveur par défaut (lobby)
Étape 4 : Test de Navigation
Testez la commande /server :
/server
Vous devriez voir la liste de tous vos serveurs.
Testez la connexion à un autre serveur :
/server survival
Vous devriez être téléporté sur le serveur survie sans déconnexion.
Partie 8 : Dépannage
Problème : "Can't connect to server"
Causes possibles :
- Velocity n'est pas démarré
- Solution : Vérifiez la console Velocity
- Port incorrect
- Solution : Vérifiez les allocations dans Wisp
- Pare-feu bloque la connexion
- Solution : Vérifiez les règles de pare-feu
Problème : "Connexion mais kick immédiat"
Causes possibles :
- Aucun serveur backend disponible
- Solution : Vérifiez que les serveurs backend sont démarrés
- Vérifiez les logs de Velocity pour voir s'il peut se connecter aux backend
- Mauvaise configuration de forwarding
- Solution : Vérifiez que les clés secrètes correspondent
- Vérifiez que
online-mode=falsesur les backend
- Ports incorrects dans velocity.toml
- Solution : Vérifiez que les ports correspondent à ceux des serveurs backend
Problème : "Can't connect to backend server"
Solutions :
- Vérifiez que le serveur backend est démarré :
- Dans Wisp, allez sur le serveur backend
- Vérifiez la console
- Vérifiez les ports dans
velocity.toml:lobby = "127.0.0.1:25566"
Le port doit correspondre auserver-portdansserver.propertiesdu backend - Vérifiez les logs de Velocity :
[ERROR] Unable to connect to server lobby
Problème : "Player UUID mismatch"
Cause : Configuration de forwarding incorrecte
Solutions :
- Vérifiez que
online-mode=falsesur tous les backend - Vérifiez la configuration du forwarding :
- Velocity :
velocity.toml→[forwarding]→secret - Paper :
paper-global.yml→proxies.velocity.secret
- Velocity :
- Les secrets doivent être identiques
- Redémarrez tous les serveurs après modification
Problème : "Can't use /server command"
Cause : Permissions manquantes
Solutions :
- Installez LuckPerms
- Donnez la permission :
/lp user <joueur> permission set velocity.command.server true - Ou donnez à tous les joueurs :
/lp group default permission set velocity.command.server true
Partie 9 : Optimisation et Performance
Configuration JVM pour Velocity
Dans Wisp, pour votre serveur Velocity :
- Allez dans Startup
- Modifiez les arguments JVM :
-Xms512M -Xmx1G -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch
Configuration des Serveurs Backend
Pour chaque serveur backend Paper :
Dans paper-global.yml :
# Optimisations réseau
network:
kick-on-oversized-packet-exception: true
# Optimisations chunk
chunk-loading:
min-load-radius: 2
max-concurrent-sends: 2
# Désactiver les features inutiles en réseau
feature-seeds:
generate-random-seeds-for-all: true
Monitoring des Performances
Utilisez ces plugins pour surveiller :
- Spark : Profiling et monitoring
- Tab : Affichage des TPS et performances
Partie 10 : Configuration Avancée
Base de Données Partagée
Pour partager les données entre serveurs (inventaires, économie, etc.) :
MySQL Configuration
- Obtenez un serveur MySQL (VeryCloud peut fournir)
- Créez une base de données
- Configurez chaque plugin pour utiliser MySQL :
LuckPerms :
storage-method: mysql
data:
address: mysql.example.com:3306
database: luckperms
username: luckperms_user
password: password
Système de Lobby Multiple
Pour avoir plusieurs lobbies avec load balancing :
Dans velocity.toml :
[servers]
lobby1 = "127.0.0.1:25566"
lobby2 = "127.0.0.1:25570"
lobby3 = "127.0.0.1:25571"
survival = "127.0.0.1:25567"
try = [
"lobby1",
"lobby2",
"lobby3"
]
Velocity répartira automatiquement les joueurs entre les lobbies disponibles.
Messages de Maintenance
Pour afficher un message personnalisé pendant la maintenance :
Dans velocity.toml :
[forced-hosts]
"maintenance.votreserveur.com" = [
"maintenance"
]
[servers]
maintenance = "127.0.0.1:25580"
Créez un serveur "maintenance" qui affiche un message.
Partie 11 : Plugins Backend Compatibles
Plugins de Synchronisation
Ces plugins fonctionnent bien avec Velocity :
- MySQLPlayerDataBridge - Sync inventaires
- RedisBungee - Synchronisation avec Redis
- SkinsRestorer - Sync des skins
- BungeeGuard - Sécurité supplémentaire
- MultiChat - Chat global entre serveurs
Installation de Plugins sur Backend
Pour les plugins qui doivent communiquer via Velocity :
- Installez le plugin sur tous les serveurs backend
- Configurez une base de données MySQL partagée
- Redémarrez tous les serveurs
Partie 12 : Sauvegarde et Maintenance
Script de Sauvegarde
Créez des sauvegardes régulières :
Configuration Velocity :
# Sauvegarder velocity.toml
cp velocity.toml velocity.toml.backup
Via Wisp :
- Allez dans Backups
- Créez une sauvegarde manuelle
- Configurez des sauvegardes automatiques
Mise à Jour de Velocity
- Téléchargez la nouvelle version de Velocity
- Arrêtez le serveur Velocity
- Remplacez
velocity.jarpar la nouvelle version - Redémarrez le serveur
- Vérifiez les logs pour les erreurs
Maintenance Régulière
Quotidien :
- Vérifier les logs d'erreur
- Surveiller l'utilisation RAM/CPU
- Vérifier les connexions joueurs
Hebdomadaire :
- Sauvegarder les configurations
- Mettre à jour les plugins
- Nettoyer les logs anciens
Mensuel :
- Mettre à jour Velocity et serveurs backend
- Revoir les permissions et configurations
- Tester les sauvegardes
Support VeryCloud
Si vous rencontrez des difficultés :
Documentation : https://verycloud.fr/docs
Panel Wisp : https://panel.verycloud.fr/
Support technique :
- Ouvrez un ticket depuis votre espace client VeryCloud
- Contactez le support par Discord
- Consultez la base de connaissances
Lorsque vous contactez le support, fournissez :
- Nom de votre serveur Velocity
- Logs de la console (dernières 100 lignes)
- Votre fichier
velocity.toml(masquez les secrets) - Description détaillée du problème
Ressources Complémentaires
Documentation Officielle
- Velocity Docs : https://docs.papermc.io/velocity
- Paper Docs : https://docs.papermc.io/paper
- Velocity GitHub : https://github.com/PaperMC/Velocity
Communauté
- Discord PaperMC : https://discord.gg/papermc
- Forums Spigot : https://www.spigotmc.org/
- Reddit r/admincraft : https://reddit.com/r/admincraft
Plugins et Resources
- Hangar : https://hangar.papermc.io/
- Modrinth : https://modrinth.com/
- SpigotMC : https://www.spigotmc.org/resources/
Conclusion
Votre réseau Minecraft avec Velocity est maintenant configuré et opérationnel ! Vous pouvez désormais :
- Connecter plusieurs serveurs ensemble
- Permettre aux joueurs de naviguer entre les serveurs
- Centraliser la gestion des permissions
- Améliorer la sécurité avec modern forwarding
- Scaler votre réseau facilement
Points clés à retenir :
- Modern forwarding est essentiel pour la sécurité
- Les serveurs backend doivent avoir
online-mode=false - Velocity doit démarrer après les serveurs backend
- Sauvegardez régulièrement vos configurations
- Surveillez les performances et les logs
Bon jeu et bonne administration de votre réseau Minecraft avec VeryCloud !


















