Factorio Intermédiaire 10 min de lecture

RCON sur un serveur Factorio : activer, se connecter et automatiser (guide 2.0)

Activer le RCON d'un serveur Factorio (--rcon-port, --rcon-bind, --rcon-password), s'y connecter avec rcon-cli ou mcrcon, envoyer des commandes et messages, rcon.print en Lua, scripts d'arrêt propre et règles de sécurité.

RCON sur un serveur Factorio : activer, se connecter et automatiser (guide 2.0)

RCON sur un serveur Factorio : activer, se connecter et automatiser

La console d’un serveur headless n’est accessible que depuis la machine elle-même. Pour administrer à distance, envoyer une annonce avant un redémarrage ou brancher un bot Discord, Factorio intègre un serveur RCON, le protocole de console distante de Valve (Source RCON).

Notre liste des commandes admin montre comment l’activer en une ligne. Ce guide va plus loin : clients compatibles, commandes utiles, scripts et sécurité.

⚡ Console web incluse

Serveur Factorio sur Ryzen 9 5950X

Notre offre hébergeur Factorio : Starter 6,90 €/mois (4 Go RAM) ou Pro 11,90 €/mois (8 Go RAM), console en temps réel dans le panel. Anti-DDoS 5 Tbps, support FR 24/7.

Voir l'offre Factorio →

RCON ou console du panel : lequel utiliser ?

BesoinOutil
Taper quelques commandes de temps en tempsLa console du serveur (terminal ou panel de l’hébergeur)
Administrer depuis un autre PC sans SSHRCON
Scripts automatiques (annonce, sauvegarde avant arrêt)RCON
Bot Discord, relais de chat, outils externesRCON

Si la console du panel vous suffit, n’ouvrez pas de RCON : c’est un port de plus à protéger.


Étape 1 — Activer le RCON au lancement

Trois paramètres officiels (wiki — Command line parameters) :

ParamètreRôle
--rcon-port NPort TCP du RCON
--rcon-bind ADRESSE:PORTAdresse IP et port d’écoute (remplace --rcon-port)
--rcon-password MOTDEPASSEMot de passe du RCON

Exemple avec le service systemd de notre guide headless :

/opt/factorio/bin/x64/factorio --start-server-load-latest \
  --server-settings /opt/factorio/data/server-settings.json \
  --rcon-bind 127.0.0.1:27015 \
  --rcon-password "UnMotDePasseLongEtUnique"

Ici, le RCON n’écoute que sur la machine elle-même (127.0.0.1). C’est le réglage le plus sûr si vos scripts tournent sur le serveur. Pour administrer depuis chez vous, écoutez sur l’IP publique et filtrez par IP au pare-feu (voir plus bas).

Le RCON utilise TCP, alors que le jeu utilise UDP 34197. Ce sont deux ports différents.


Étape 2 — Se connecter avec un client RCON

Factorio parle le protocole Source RCON standard : n’importe quel client compatible fonctionne. Deux outils libres et répandus :

rcon-cli (gorcon)

rcon-cli cite explicitement Factorio dans sa liste de jeux supportés. Binaires Windows, Linux et macOS disponibles sur la page des releases.

# Une commande et on sort
./rcon -a 127.0.0.1:27015 -p "UnMotDePasseLongEtUnique" "/players online"

# Mode interactif (:q pour quitter)
./rcon -a 127.0.0.1:27015 -p "UnMotDePasseLongEtUnique"

Pour ne pas taper le mot de passe à chaque fois, créez un fichier rcon.yaml à côté du binaire :

default:
  address: "127.0.0.1:27015"
  password: "UnMotDePasseLongEtUnique"

Puis simplement : ./rcon "/players online".

mcrcon

mcrcon est un client RCON écrit pour Minecraft mais basé sur le même protocole Source RCON :

mcrcon -H 127.0.0.1 -P 27015 -p "UnMotDePasseLongEtUnique" "/players online"

mcrcon est pensé pour Minecraft : l’utiliser avec Factorio est un usage communautaire, pas une compatibilité annoncée. En cas de souci, préférez rcon-cli.


Étape 3 — Les commandes utiles en RCON

Les commandes RCON sont les mêmes que dans la console (wiki — Console) :

CommandeEffet
/players onlineJoueurs connectés
/players countNombre de joueurs uniquement
/adminsListe des admins
/versionVersion du serveur
/timeÂge de la carte
/evolutionFacteur d’évolution des ennemis
/server-saveSauvegarde immédiate
/kick <joueur> <raison> / /ban <joueur> <raison>Modération
/config set <option> <valeur>Changer un réglage serveur à chaud

Envoyer un message dans le chat

Envoyez simplement le texte sans / : il est diffusé à tous les joueurs. N’utilisez pas /shout : un développeur de Wube (Rseding91) a confirmé que cette commande est volontairement sans effet quand elle vient du RCON ou de la console serveur (forum officiel).

./rcon "Redémarrage du serveur dans 5 minutes, pensez à vous mettre à l'abri !"

Récupérer une valeur précise avec rcon.print

Pour qu’un script récupère une donnée, utilisez une commande Lua silencieuse (/sc, qui n’affiche pas la commande dans le chat) et la fonction officielle rcon.print, qui renvoie le texte uniquement à l’appelant RCON :

./rcon "/sc rcon.print(#game.connected_players)"

⚠️ Toute commande Lua (/c, /sc, /mc) désactive définitivement les succès de la sauvegarde. Réservez-les aux serveurs où les succès ne comptent pas. Détails dans commandes admin Factorio.


Exemple : arrêt propre avec annonce

Script à lancer avant une maintenance (mise à jour, sauvegarde externe) :

#!/bin/bash
# /opt/factorio/stop-propre.sh
RCON="/opt/rcon/rcon -a 127.0.0.1:27015 -p UnMotDePasseLongEtUnique"

$RCON "Maintenance du serveur dans 5 minutes."
sleep 240
$RCON "Maintenance dans 1 minute, sauvegarde en cours..."
$RCON "/server-save"
sleep 60
sudo systemctl stop factorio

L’arrêt par systemd avec KillSignal=SIGINT sauvegarde aussi la partie ; le /server-save ajoute une sécurité juste avant. Enchaînez ensuite avec la mise à jour du serveur si besoin.


Sécuriser le RCON

Un accès RCON = un accès admin complet (kick, ban, commandes Lua). Quatre règles :

  1. Mot de passe long et unique, jamais réutilisé ailleurs.
  2. Écoute locale (--rcon-bind 127.0.0.1:PORT) si vos outils tournent sur la même machine.
  3. Filtrage par IP si vous devez l’ouvrir sur Internet :
sudo ufw allow from 203.0.113.10 to any port 27015 proto tcp
  1. Mot de passe hors de la ligne de commande visible : sur une machine partagée, la commande de lancement (et donc --rcon-password) est visible par les autres utilisateurs via ps. Gardez le serveur sur un compte dédié et une machine que vous êtes seul à administrer.

FAQ

Quel port RCON choisir ?

Aucun port n’est imposé par Factorio : vous le choisissez avec --rcon-port ou --rcon-bind. Prenez un port libre et différent du port de jeu 34197.

Le RCON fonctionne-t-il avec une partie hébergée depuis le jeu ?

Le binaire du jeu contient une option « mot de passe RCON quand on lance un serveur multijoueur depuis le menu », mais le cas d’usage normal reste le serveur dédié headless. Pour un usage 24/7, passez par un serveur dédié.

Pourquoi ma commande RCON ne renvoie rien ?

Certaines commandes n’affichent rien en cas de succès. Pour une valeur précise, utilisez /sc rcon.print(...). Vérifiez aussi que le mot de passe et le port (TCP) sont corrects.

Clusterio utilise-t-il le RCON ?

Oui : Clusterio pilote ses serveurs Factorio notamment via RCON, avec un port attribué automatiquement à chaque instance. Voir Clusterio : relier plusieurs serveurs Factorio.


Conclusion

Le RCON transforme votre serveur Factorio en service scriptable : annonces, sauvegardes avant maintenance, relais vers Discord. Gardez-le fermé au public, et utilisez rcon.print pour obtenir des réponses exploitables.

Chez HebergTonServ, la console du panel couvre l’administration quotidienne sans rien ouvrir, et le support peut vous aider à mettre en place un RCON sécurisé.

Pour aller plus loin

Sources : wiki Factorio — Command line parameters, wiki Factorio — Console, API Factorio — LuaRCON, forum officiel — /shout via RCON (Rseding91), gorcon/rcon-cli, Tiiffi/mcrcon, Clusterio — configuration (factorio.rcon_port).