Warum sind CRCON/RCON-Rechte überhaupt wichtig?
CRCON (und RCON allgemein) ist mächtig: Mit den falschen Rechten kann man nicht nur Spieler bannen,
sondern im schlimmsten Fall Admins verwalten oder Dinge ändern, die man nicht ändern sollte.
Darum gilt: Least Privilege:
Ein Tool bekommt genau die Rechte, die es braucht. Nicht mehr.
Wichtig zu verstehen: API-Token = Rechte des Users
In CRCON läuft das typischerweise so:
Du erstellst einen Benutzer (User) und erzeugst für diesen User einen API-Token.
Der Token übernimmt die Rechte des Users.
Wenn der User zu viel darf, darf der Token zu viel.
Welche Rechte braucht man? Kommt drauf an, was du machen willst
Damit das nicht ausartet, trennen wir es in sinnvolle Stufen:
- Read-only / Monitoring: Status anzeigen, Server prüfen, Logs/Infos lesen
- Moderation: Kicken, Bannen, Unbannen, Notes setzen
- Administration: Admin-Rollen, User/Gruppen verwalten (sehr sensibel)
Empfohlene Vorgehensweise (sauber & stressfrei)
-
Dedizierten User für Integrationen anlegen
Erstelle in CRCON einen eigenen User nur für die Integration (z.B. “hll-checkpoint”).
Kein normaler Admin-Account, kein gemeinsamer Account für alles. -
Nur die benötigten Features auswählen
Entscheide vorher, was das System wirklich tun soll:
nur Status (read-only) oder auch Banns (moderation) oder Admin-Verwaltung (admin). -
Permissions in CRCON setzen (Groups statt Chaos)
Nutze nach Möglichkeit Groups in CRCON/Django, statt jede Permission einzeln am User herumzufummeln.
Beispiel:- Group “Checkpoint Read” (nur lesen/prüfen)
- Group “Checkpoint Moderation” (bannen/kicken)
- Group “Checkpoint Admin” (nur wenn wirklich nötig)
-
API-Token erzeugen
Erzeuge den Token für den dedizierten User. Speichere ihn sicher (wie ein Passwort).
Ein guter Token ist nach Erstellung nicht mehr sichtbar, also direkt kopieren. -
Rechte testen (statt raten)
Teste die Endpunkte mit dem Token. Wenn ein Feature 403 wirft, fehlt genau eine Permission.
Das ist besser als blind alles freizuschalten. -
Ampelsystem verwenden (grün/gelb/rot)
Ein Ampelsystem macht es idiotensicher:
- Grün: Endpoint funktioniert (200/OK)
- Gelb: erreichbar, aber eingeschränkt / optional (z.B. Feature nicht aktiv)
- Rot: fehlt Permission (403) oder Token/Server nicht erreichbar
So erkennst du typische Fehler (401 vs 403)
- 401 Unauthorized: Token fehlt, Token falsch, oder falsches Auth-Format
- 403 Forbidden: Token ist gültig, aber Permission fehlt
- 404 Not Found: falscher Endpoint / falsche API-Version / URL falsch
- Timeout / Connection refused: Server/Firewall/Port/DNS oder CRCON down
Beispiel: API-Request mit Token (zum Testen)
CRCON erwartet den Token je nach Setup typischerweise im Header (Beispiel):
Authorization: Bearer <dein-api-token>Beispiel mit curl (URL/Endpoint anpassen):
curl -H "Authorization: Bearer <dein-api-token>" \
"https://rcon1.deine-domain.tld/api/<endpoint>"Pro-Tipp: Ermittel die benötigten Permissions über die API-Doku
Viele CRCON-Setups liefern eine Endpoint-Liste, in der steht, welche Permission ein Endpoint braucht
(z.B. permissions_required). Damit kannst du sehr gezielt freischalten:
- Du testest ein Feature
- Du bekommst 403
- Du schaust in der Endpoint-Liste nach, welche Permission dafür nötig ist
- Du ergänzt genau diese Permission (nicht 40 andere)
Welche Rechte sind besonders gefährlich?
Alles, was Richtung Admin-/User-Verwaltung geht. Sobald ein Token Admins hinzufügen kann
oder Rollen verwalten kann, ist das ein sehr hoher Trust-Level.
Das sollte man nur aktivieren, wenn es wirklich gebraucht wird.
FAQ
Welche Rechte braucht “nur Status anzeigen”?
Dafür reichen normalerweise reine Read-/View-Permissions. Sobald du bannen/kicken willst,
brauchst du Moderationsrechte. Admin-Verwaltung ist nochmal eine andere Liga.
Warum zeigt mein System “Unbekannt” bei Token/Rechten?
Häufige Ursachen: falsche URL, falscher Auth-Header, Token ungültig, CRCON nicht erreichbar,
oder du testest Endpunkte, die dein User nicht darf (403).
Soll ich denselben Token für mehrere Tools benutzen?
Besser nicht. Pro Integration ein eigener User/Token. Dann kannst du Rechte sauber trennen,
Tokens rotieren und Fehler schneller zuordnen.
