Activer et utiliser RCON sur ton serveur Minecraft Wisp

Activer et utiliser RCON sur ton serveur Minecraft Wisp

Configurer RCON pour ton serveur Minecraft chez VeryCloud, l'utiliser depuis ton PC, automatiser des commandes via scripts, et sécuriser l'exposition du port RCON.

Introduction

RCON (Remote Console) permet d'envoyer des commandes serveur depuis l'extérieur sans passer par le panel. C'est essentiel pour : intégrer un bot Discord, automatiser des broadcasts, gérer le serveur depuis une CLI, ou brancher un dashboard externe. Ce guide t'accompagne pour activer RCON proprement sur ton serveur Minecraft Wisp et l'utiliser en toute sécurité.

Prérequis

  • Un serveur Minecraft Vanilla / Paper / Spigot / Forge / Fabric chez VeryCloud
  • Accès au panel Wisp
  • Un client RCON (mcrcon, mcstatus, RconClient, etc.)

Étape 1 : Configurer server.properties

Dans Wisp → Files, ouvre /server.properties à la racine du conteneur. Modifie :

enable-rcon=true
rcon.port=25575
rcon.password=UN_MOT_DE_PASSE_LONG_ALEATOIRE
broadcast-rcon-to-ops=true
  • rcon.port : port d'écoute (par défaut 25575). Tu peux changer mais vérifie que le port est alloué.
  • rcon.password : minimum 16 caractères aléatoires, jamais le même que ton ssh ou panel.
  • broadcast-rcon-to-ops : si OUI, les commandes exécutées en RCON sont visibles par les OP en jeu (utile pour audit).

Sauvegarde.

Étape 2 : Allouer le port RCON

Dans Wisp → Network :

  1. Create Allocation
  2. Port 25575/tcp (RCON est TCP, pas UDP)
  3. Save

⚠️ Sécurité critique : ne jamais laisser RCON exposé sur Internet sans précautions. Voir l'étape 7.

Étape 3 : Redémarrer le serveur

Restart depuis la console. Au boot, vérifie dans les logs :

[Server thread/INFO]: RCON running on 0.0.0.0:25575

Si tu vois ça, RCON est opérationnel.

Étape 4 : Tester avec mcrcon

Sur ton PC, installe mcrcon (open source, multi-OS) :

Linux / macOS :

git clone https://github.com/Tiiffi/mcrcon.git
cd mcrcon
make
sudo make install

Windows : télécharge le binaire compilé depuis le repo GitHub.

Utilisation :

mcrcon -H IP_VERYCLOUD -P 25575 -p TON_MDP "list"
mcrcon -H IP_VERYCLOUD -P 25575 -p TON_MDP "say Annonce serveur via RCON"

Étape 5 : Mode interactif

mcrcon -H IP_VERYCLOUD -P 25575 -p TON_MDP -t

Ouvre un terminal interactif où tu tapes les commandes Minecraft directement. Tape quit pour sortir.

Étape 6 : Automatiser des tâches

Exemple — broadcast quotidien à 20h via cron sur un autre VPS :

#!/bin/bash
# /usr/local/bin/mc-broadcast.sh
mcrcon -H IP_VERYCLOUD -P 25575 -p "$MCRCON_PASS" \
  "say [Auto] Bonsoir, restart prevu a 23h."

Cron :

0 20 * * * /usr/local/bin/mc-broadcast.sh

Mets MCRCON_PASS dans ~/.profile ou /etc/environment, jamais en clair dans le script.

Étape 7 : Sécuriser l'exposition RCON

C'est le point le plus négligé. Quelques options par ordre de robustesse :

Option A — Limiter par IP via firewall (recommandé)

Si tu te connectes depuis un VPS dédié ou ton IP fixe, ouvre un ticket VeryCloud pour ne whitelister que ton IP source sur le port 25575. Tout le reste est dropé.

Option B — Tunnel SSH

Au lieu d'exposer 25575, fais un tunnel SSH (si tu as SSH sur ton VPS) :

ssh -L 25575:127.0.0.1:25575 user@verycloud-jumphost

Puis pointe mcrcon sur 127.0.0.1:25575 localement.

Option C — VPN / WireGuard

Setup un tunnel WireGuard entre toi et le serveur. RCON n'écoute que sur l'IP VPN.

À éviter : laisser RCON ouvert sur 0.0.0.0 avec un mot de passe faible. Les bots scannent en permanence.

Étape 8 : Intégration Discord bot

Beaucoup de frameworks Discord (discord.js, discord.py) ont des libs RCON natives. Exemple Python :

from mcrcon import MCRcon

with MCRcon("IP_VERYCLOUD", "MDP", port=25575) as mcr:
    resp = mcr.command("list")
    print(resp)

Tu peux faire un slash command Discord /mc list qui exécute ça côté bot, le bot répond avec la liste des joueurs en ligne.

Dépannage

Connection refused

  • RCON pas démarré côté serveur, vérifie les logs
  • Port non alloué dans Network
  • Firewall qui drope

Invalid password

  • Recopie le mot de passe sans espaces parasites
  • Le mot de passe ne supporte pas certains caractères spéciaux selon le client — préfère alphanumérique long

Le serveur freeze quand on envoie une commande lourde

  • Les commandes RCON s'exécutent sur le thread principal du serveur. Évite les /fill géants par RCON
  • Utilise des plugins async pour les opérations lourdes

Commandes utiles

# mcrcon one-shot
mcrcon -H IP -P 25575 -p MDP "list"

# Mode interactif
mcrcon -H IP -P 25575 -p MDP -t

# Tunnel SSH pour acceder a RCON local
ssh -L 25575:127.0.0.1:25575 user@host

Conclusion

RCON activé proprement = automation, alerting, integration Discord. Mais c'est une porte d'entrée admin : ne l'expose pas sur l'Internet ouvert sans filtrage IP ou tunnel. Mot de passe long, port whitelisté, et tu as un outil puissant.

Pour aller plus loin : passerelle RCON via API REST, intégration Grafana pour stats temps réel, bridge in-game ↔ Discord.

Ressources

Rejoignez notre serveur communautaire Discord

Pour toute question, suggestion ou simplement pour discuter avec la communauté, rejoignez-nous sur Discord !

900+Membres