Zum Inhalt springen
Warcon
Open Source, MIT Bun · SvelteKit · Postgres Docker Compose

RCON für WARDOGS, ohne das Passwort herauszugeben.

Warcon ist ein selbst gehostetes Panel für WARDOGS Dedicated Server. Verwalte alle Server an einem Ort, gib jedem Admin ein eigenes Login und eine eigene Rolle, und alles, was passiert, wird protokolliert. Das RCON-Passwort bleibt verschlüsselt auf dem Server. Niemand muss es kennen.

Nutze es unter console.warcon.app oder betreibe deine eigene Kopie mit einem einzigen docker compose up. In beiden Fällen dasselbe quelloffene Panel.

Warcon-Serverübersicht mit Teampunkten, Matchsteuerung und Scoreboard eines WARDOGS-Servers

Aufgenommen auf dem eingebauten Demo-Server, die Zahlen sind also erfunden.

Das Problem

Die offizielle Webkonsole ruft den Spielserver direkt aus dem Browser über unverschlüsseltes HTTP auf. Sie lässt sich nicht über HTTPS hosten, und jeder Admin muss das RCON-Passwort im Klartext bekommen.

Was Warcon stattdessen macht

Warcon spricht aus seinem eigenen Prozess mit dem Spielserver. Das Passwort bleibt serverseitig unter AES-GCM, Admins melden sich mit eigenen Konten an, und vor jeder Aktion wird die Rolle geprüft.

Und es schreibt alles mit

Ein Audit-Eintrag wird geschrieben, bevor die Antwort gesendet wird. Wer was auf welchem Server von wo aus gemacht hat, und ob das Spiel es angenommen hat.

Funktionen

Gebaut für Leute, die mehr als einen Server betreiben.

01

Alle Server an einem Ort

Füge so viele WARDOGS-Server hinzu, wie du betreibst. Jeder behält sein eigenes verschlüsseltes RCON-Passwort, und das Dashboard zeigt sie alle live.

02

Eigene Konten statt eines gemeinsamen Passworts

Owner- und Mitglieder-Logins mit den Rollen viewer, operator und admin pro Server. Passwort zurücksetzen, erzwungene Änderung, Sperren, Sitzungen beenden und Begrenzung der Login-Versuche. Optional Anmeldung mit Discord.

03

Ein vollständiges Audit-Protokoll

Jeder Login, jede Benutzer- oder Serveränderung und jeder Spielbefehl, mit Akteur, Ziel, Ergebnis, IP und Dauer. Filtern, als CSV oder JSON exportieren und daneben das eigene Log des Spielservers lesen.

04

Statistiken, die das Spiel nicht speichert

Ein Hintergrund-Poller fragt jeden Server ab: Spieler online im Zeitverlauf, Verfügbarkeit, Zeit pro Karte, Stoßzeiten, Spielzeit und Sitzungen pro Spieler, Matchverlauf mit Ergebnissen.

05

Alles, was die offizielle Konsole kann

Status und Scoreboard, Kick, Ban, Kill, Flüstern, Teamwechsel, Broadcasts, Kartenwechsel und nächste Karte, Match beenden oder neu starten, Rotation bearbeiten, reservierte Slots, Score-Tick, Sponsorbild und die gesamte ServerSettings.ini mit Prüfen und Anwenden.

06

Erst ausprobieren, dann echte Server anbinden

Ein eingebauter Demo-Server ahmt einen echten WARDOGS-RCON-Listener nach. Du kannst dir jede Seite ansehen, ohne ein einziges echtes Passwort einzugeben.

So funktioniert es

Ein Prozess zwischen deinen Admins und dem Spiel.

Warcon liefert die Seiten aus, hält die Sitzungen und führt die Aufrufe an den RCON-Listener jedes Spielservers aus. Ein Hintergrund-Poller fragt Status und Spieler in Intervallen ab und hebt auf, was das Spiel selbst nicht speichert. Alles landet in Postgres; wenn TimescaleDB da ist, kümmert es sich um die Aufbewahrung der Messwerte.

Betreibe es neben dem Spielserver, auf einem beliebigen VPS oder auf einem Container-Host. Es muss nur den RCON-Port erreichen: direkt, über ein privates Netzwerk oder über einen TLS-Proxy auf dem Spielhost.

Browser
Admins melden sich an
HTTPS ▸
Warcon
Sitzungen · Rollen · Audit · Poller
HTTP ▸
Spielserver
:7776 WDRCON
Postgres
Benutzer · Server · Audit · Messwerte · Matches

Das Protokoll wurde aus der offiziellen Konsole rekonstruiert und ist im Repository dokumentiert.

Selbst hosten

Zwei Container, eine Datei zum Anpassen.

Docker Compose startet Warcon und eine TimescaleDB-Datenbank. Öffne die URL, lege das Owner-Konto an, füge deinen ersten Server hinzu und lade deine Admins ein. Migrationen laufen beim Start, und die Datenbank liegt in einem benannten Volume.

  1. 1Eine Maschine mit Docker: ein günstiger VPS, ein alter PC oder der Spielserver selbst.
  2. 2Host, RCON-Port (meist 7776) und RCON-Passwort deines Servers.
  3. 3Optional: Caddy, nginx, Traefik oder ein Cloudflare Tunnel davor für HTTPS.
Terminal
git clone https://github.com/warcon-app/warcon.git warcon && cd warcon
cp .env.example .env
# BETTER_AUTH_SECRET und ENCRYPTION_KEY auf Werte aus `openssl rand -base64 32` setzen,
# POSTGRES_PASSWORD und ORIGIN auf die URL, die die Leute öffnen werden
docker compose up -d
Rollen

Gib jedem Admin genau das, was er braucht.

Rollen gelten pro Server. Ein Mitglied kann auf einem Server admin und auf einem anderen viewer sein. Der Owner verwaltet Benutzer, Server und Zugriff und sieht das gesamte Audit-Protokoll.

Aktionenvieweroperatoradminowner
Status, Spieler, Rotation, Bans, reservierte Slots, Konfiguration, Server-Log, Statistiken
Broadcast, Flüstern, Kick, Kill, Teamwechsel, Match beenden oder neu starten, Kartenwechsel, nächste Karte, Live-Änderungen an der Rotation·
Ban und Unban, reservierte Slots, Score-Tick, Rotation speichern, Sponsorbild, Konfiguration anwenden, rohe API-Aufrufe··
Benutzer, Server und Zugriff verwalten; das gesamte Audit-Protokoll sehen···