README.md aktualisiert

This commit is contained in:
2026-05-07 20:28:41 +00:00
parent f29bb25435
commit 2c608469df

522
README.md
View File

@@ -1,284 +1,404 @@
# StatusAPI # StatusAPI
![Version](https://img.shields.io/badge/version-4.1.0-0B63CE?style=for-the-badge) <p align="center">
![Platform](https://img.shields.io/badge/platform-BungeeCord-D48700?style=for-the-badge) <img src="https://img.shields.io/badge/Version-4.1.0-0B63CE?style=for-the-badge" />
![Minecraft](https://img.shields.io/badge/Minecraft-1.20%2B-1E9E5A?style=for-the-badge) <img src="https://img.shields.io/badge/Platform-BungeeCord-D48700?style=for-the-badge" />
![Java](https://img.shields.io/badge/Java-8%2B-C0392B?style=for-the-badge) <img src="https://img.shields.io/badge/Minecraft-1.20+-1E9E5A?style=for-the-badge" />
![API](https://img.shields.io/badge/HTTP%20API-Status%20%2B%20Broadcast%20%2B%20Attack-6F42C1?style=for-the-badge) <img src="https://img.shields.io/badge/Java-8+-C0392B?style=for-the-badge" />
</p>
StatusAPI ist ein modulares BungeeCord-Plugin für Netzwerkbetrieb, Moderation und Integrationen. <p align="center">
Der Fokus liegt auf Live-Status, Chat/Support, Verifizierung, Forum-Bridge, Broadcasts und Network-Guard mit AntiBot. Modulares BungeeCord-Plugin für Netzwerkbetrieb, Moderation und Integrationen.<br>
Live-Status · Chat & Support · Verifizierung · Forum-Bridge · Broadcasts · AntiBot · BackendJoinGuard
</p>
## Rechtlicher Hinweis ---
Dieses Projekt sowie alle enthaltenen Module, Quelltexte und Ressourcen dürfen nicht verändert, kopiert oder weiterverbreitet werden. > **Rechtlicher Hinweis**
Jegliche Nutzung, Modifikation oder Weitergabe, ganz oder teilweise, ist ausschließlich mit vorheriger schriftlicher Genehmigung des Entwicklers gestattet. > Dieses Projekt sowie alle enthaltenen Module, Quelltexte und Ressourcen dürfen nicht verändert, kopiert oder weiterverbreitet werden. Jegliche Nutzung, Modifikation oder Weitergabe ist ausschließlich mit vorheriger schriftlicher Genehmigung des Entwicklers gestattet.
© Entwickelt von M_Viper. Alle Rechte vorbehalten. > © Entwickelt von M_Viper. Alle Rechte vorbehalten.
## Was das Plugin kann ---
### Core und API ## Übersicht
- Eigener HTTP-Server über konfigurierbaren Port Dieses Repository enthält zwei aufeinander abgestimmte Plugins:
| Plugin | Plattform | Zweck |
|---|---|---|
| **StatusAPI** | BungeeCord (Proxy) | HTTP-API, AntiBot, Chat, Moderation, Verify, Forum |
| **BackendJoinGuard** | Paper / Spigot (Backend) | Verhindert Direktjoins am Proxy vorbei |
BackendJoinGuard kann eigenständig betrieben werden oder seine Schutzregeln automatisch per Sync von StatusAPI beziehen.
---
## Inhaltsverzeichnis
- [StatusAPI](#statusapi-1)
- [Module](#module)
- [HTTP API](#http-api)
- [Commands](#commands-statusapi)
- [Permissions](#permissions-statusapi)
- [Konfiguration](#konfiguration-statusapi)
- [BackendJoinGuard](#backendjoinguard-1)
- [Betriebsarten](#betriebsarten)
- [Commands & Permissions](#commands--permissions-backendjoinguard)
- [Konfiguration](#konfiguration-backendjoinguard)
- [Voraussetzungen & Installation](#voraussetzungen--installation)
- [Troubleshooting](#troubleshooting)
---
## StatusAPI
### Module
<details>
<summary><strong>Core & HTTP-API</strong></summary>
- Eigener HTTP-Server über konfigurierbaren Port (`statusapi.port`, Standard: `9191`)
- JSON-Statusausgabe mit Spieler-, Prefix-, Bedrock-, Netzwerk- und Systemdaten - JSON-Statusausgabe mit Spieler-, Prefix-, Bedrock-, Netzwerk- und Systemdaten
- POST-Endpunkte für Broadcast, Broadcast-Abbruch, Forum-Notify und Attack-Events - POST-Endpunkte für Broadcast, Broadcast-Abbruch, Forum-Notify und Attack-Events
### NetworkInfo Modul </details>
<details>
<summary><strong>NetworkInfo</strong></summary>
- Live-Snapshot für Proxy, Uptime, RAM, CPU, Backends und Ping - Live-Snapshot für Proxy, Uptime, RAM, CPU, Backends und Ping
- Ingame-Befehl für Statusprüfung - Ingame-Befehl `/netinfo` für Statusprüfung
- Discord-Webhook-Meldungen für: - Discord-Webhook-Meldungen bei: Server-Start/-Stop, hoher RAM-/Spieler-Auslastung, Attack Detected/Stopped
- Start und Stop - Embed-Modus konfigurierbar: `compact` oder `detailed`
- hohe RAM-Auslastung
- hohe Spieler-Auslastung
- Attack Detected und Attack Stopped
- Embed-Modus über Konfiguration:
- compact
- detailed
### AntiBot Modul </details>
- CPS-basierte Attack-Erkennung mit Start- und Stop-Schwellen <details>
<summary><strong>AntiBot</strong></summary>
- CPS-basierte Attack-Erkennung mit konfigurierbaren Start- und Stop-Schwellen
- Pro-IP Rate-Limit mit temporären IP-Blocks - Pro-IP Rate-Limit mit temporären IP-Blocks
- Optionaler VPN/Proxy/Hosting-Check über ip-api - Optionaler VPN/Proxy/Hosting-Check via ip-api
- Profile strict und high-traffic - Profile: `strict` und `high-traffic`
- Laufzeitverwaltung per Command: - Laufzeitverwaltung über `/antibot` (Status, Blocks leeren, IP entblocken, Profil wechseln, Reload)
- Status anzeigen
- Blocks leeren
- einzelne IP entblocken
- Profil wechseln und speichern
- Konfiguration neu laden
### Chat und Moderation </details>
- Mehrere Chat-Kanäle <details>
- PM-System mit Reply <summary><strong>Chat & Moderation</strong></summary>
- Ignore-System
- Mute und Unmute - Mehrere Chat-Kanäle, PM-System mit Reply, Ignore-System
- Mentions - Mute/Unmute, Mentions, Emoji-Unterstützung, SocialSpy
- Emoji-Unterstützung
- SocialSpy
- Chat-History und Admin-Infos - Chat-History und Admin-Infos
- Report-System inklusive Close-Flow - Report-System inkl. Close-Flow
- Weiterleitung an Discord und Telegram (konfigurierbar) - Weiterleitung an Discord und Telegram (konfigurierbar)
### Verify, Forum und CommandBlocker </details>
<details>
<summary><strong>Verify, Forum & CommandBlocker</strong></summary>
- Spieler-Verifizierung über Token - Spieler-Verifizierung über Token
- Forum-Linking und Forum-Benachrichtigungen im Spiel - Forum-Linking und Forum-Benachrichtigungen ingame
- Command-Blocker mit /cb Verwaltung - Command-Blocker mit `/cb`-Verwaltung
### AutoMessage und CustomCommands </details>
- Rotierende Auto-Nachrichten aus Datei (intervallgesteuert) <details>
<summary><strong>AutoMessage & CustomCommands</strong></summary>
- Rotierende Auto-Nachrichten aus `messages.txt` (intervallgesteuert)
- Eigene Command-Mappings über `customcommands.yml` - Eigene Command-Mappings über `customcommands.yml`
- Optionaler `/chat`-Command (steuerbar per Konfiguration) - Optionaler `/chat`-Command (steuerbar per Konfiguration)
- Reload der CustomCommands über `/bcmds` - Reload via `/bcmds`
## Voraussetzungen </details>
- BungeeCord Proxy ---
- Minecraft 1.20+
- Java 8+
- Optional:
- LuckPerms
- Geyser-BungeeCord
- Discord Webhook/Bot
- Telegram Bot
- WordPress/Forum-Backend
## Installation ### HTTP API
1. JAR nach plugins kopieren. Basis-URL: `http://<proxy-ip>:9191` Port konfigurierbar über `statusapi.port`.
2. Proxy starten, damit Dateien erzeugt werden.
3. Proxy stoppen.
4. Konfigurationen anpassen:
- plugins/StatusAPI/verify.properties
- plugins/StatusAPI/chat.yml
- plugins/StatusAPI/network-guard.properties
- plugins/StatusAPI/blocked-commands.yml
5. Proxy neu starten.
## HTTP API | Methode | Pfad | Beschreibung | Auth |
Standard-Port ist 9191 und wird über statusapi.port gesetzt.
| Methode | Pfad | Zweck | Auth |
|---|---|---|---| |---|---|---|---|
| GET | / | Voller Status als JSON | keine | | `GET` | `/` | Voller Netzwerk-Status als JSON | |
| POST | /broadcast | Broadcast senden oder planen | x-api-key aus Broadcast-Konfiguration | | `POST` | `/broadcast` | Broadcast senden oder planen | `x-api-key` |
| POST | /broadcast/cancel | Geplanten Broadcast abbrechen | x-api-key | | `POST` | `/broadcast/cancel` | Geplanten Broadcast abbrechen | `x-api-key` |
| POST | /cancel | Alias für broadcast/cancel | x-api-key | | `POST` | `/cancel` | Alias für `/broadcast/cancel` | `x-api-key` |
| POST | /forum/notify | Forum-Notification an Proxy | x-api-key bzw. Forum-Secret-Flow | | `POST` | `/forum/notify` | Forum-Notification an Proxy | `x-api-key` / Forum-Secret |
| POST | /network/attack | Attack Detected/Stopped an Discord-Webhook melden | x-api-key aus networkinfo.attack.api_key | | `POST` | `/network/attack` | Attack-Event an Discord-Webhook melden | `x-api-key` |
| `GET` | `/network/backendguard/config` | Guard-Regeln für BackendJoinGuard Sync | `x-api-key` |
## Commands ---
### Netzwerk und Schutz ### Commands (StatusAPI)
#### Netzwerk & Schutz
| Command | Beschreibung | | Command | Beschreibung |
|---|---| |---|---|
| /netinfo | Zeigt Netzwerk- und Systemstatus | | `/netinfo` | Netzwerk- und Systemstatus anzeigen |
| /antibot status | Zeigt AntiBot Status | | `/antibot status` | AntiBot-Status anzeigen |
| /antibot clearblocks | Entfernt aktive IP-Blocks | | `/antibot clearblocks` | Alle aktiven IP-Blocks entfernen |
| /antibot unblock <ip> | Entblockt eine IP | | `/antibot unblock <ip>` | Einzelne IP entblocken |
| /antibot profile <strict\|high-traffic> | Wechselt Profil und speichert Werte | | `/antibot profile <strict\|high-traffic>` | Profil wechseln und speichern |
| /antibot reload | Lädt AntiBot-Konfiguration neu | | `/antibot reload` | AntiBot-Konfiguration neu laden |
### Verify und Forum #### Verify & Forum
| Command | Beschreibung | | Command | Beschreibung |
|---|---| |---|---|
| /verify <token> | Verifiziert den Account | | `/verify <token>` | Account verifizieren |
| /forumlink <token> | Verknüpft Account mit Forum | | `/forumlink <token>` | Account mit Forum verknüpfen |
| /forum | Zeigt Forum-Benachrichtigungen | | `/forum` | Forum-Benachrichtigungen anzeigen |
### Chat, Support und Moderation #### Chat, Support & Moderation
| Command | Beschreibung | | Command | Beschreibung |
|---|---| |---|---|
| /channel [kanal] | Kanal wechseln oder Liste zeigen | | `/channel [kanal]` | Kanal wechseln oder Liste anzeigen |
| /helpop <text> | Support-Anfrage an Team | | `/helpop <text>` | Support-Anfrage an Team |
| /msg <spieler> <text> | Private Nachricht | | `/msg <spieler> <text>` | Private Nachricht senden |
| /r <text> | Antwort auf letzte PM | | `/r <text>` | Auf letzte PM antworten |
| /ignore <spieler> | Spieler ignorieren | | `/ignore <spieler>` | Spieler ignorieren |
| /unignore <spieler> | Ignore entfernen | | `/unignore <spieler>` | Ignore entfernen |
| /chatmute <spieler> [minuten] | Spieler muten | | `/chatmute <spieler> [minuten]` | Spieler muten |
| /chatunmute <spieler> | Mute aufheben | | `/chatunmute <spieler>` | Mute aufheben |
| /chataus | Chat-Empfang toggeln | | `/chataus` | Chat-Empfang toggeln |
| /broadcast <text> | Broadcast an alle | | `/broadcast <text>` | Broadcast an alle senden |
| /emoji | Emoji-Liste | | `/emoji` | Emoji-Liste anzeigen |
| /socialspy | PMs mitlesen | | `/socialspy` | PMs mitlesen toggeln |
| /chatreload | Chat-Konfig neu laden | | `/chatreload` | Chat-Konfiguration neu laden |
| /chatinfo <spieler> | Admin-Infos zu Spieler | | `/chatinfo <spieler>` | Admin-Infos zu einem Spieler |
| /chathist [spieler] [anzahl] | Chat-History | | `/chathist [spieler] [anzahl]` | Chat-History anzeigen |
| /mentions | Mention-Benachrichtigungen toggeln | | `/mentions` | Mention-Benachrichtigungen toggeln |
| /chatbypass | Nächste Nachricht Plugin-bypass | | `/chatbypass` | Nächste Nachricht am Plugin vorbei senden |
| /discordlink, /dlink | Discord-Linktoken erstellen | | `/discordlink`, `/dlink` | Discord-Linktoken erstellen |
| /telegramlink, /tlink | Telegram-Linktoken erstellen | | `/telegramlink`, `/tlink` | Telegram-Linktoken erstellen |
| /unlink <discord\|telegram\|all> | Verknüpfung aufheben | | `/unlink <discord\|telegram\|all>` | Verknüpfung aufheben |
| /report <spieler> <grund> | Spieler melden | | `/report <spieler> <grund>` | Spieler melden |
| /reports [all] | Reports ansehen | | `/reports [all]` | Reports ansehen |
| /reportclose <id> | Report schließen | | `/reportclose <id>` | Report schließen |
### CommandBlocker #### CommandBlocker
| Command | Beschreibung | | Command | Beschreibung |
|---|---| |---|---|
| /cb add <command> | Command blockieren | | `/cb add <command>` | Command blockieren |
| /cb remove <command> | Blockierung aufheben | | `/cb remove <command>` | Blockierung aufheben |
| /cb list | Blockierte Commands anzeigen | | `/cb list` | Alle blockierten Commands anzeigen |
| /cb reload | CommandBlocker neu laden | | `/cb reload` | CommandBlocker neu laden |
### CustomCommands #### CustomCommands
| Command | Beschreibung | | Command | Beschreibung |
|---|---| |---|---|
| /bcmds | Lädt `customcommands.yml` neu | | `/bcmds` | `customcommands.yml` neu laden |
| /chat <text> | Sendet Text als Chat oder führt Slash-Command aus (falls aktiviert) | | `/chat <text>` | Text als Chat senden oder Slash-Command ausführen |
# Verfügbare Permissions ---
### Permissions (StatusAPI)
| Permission | Beschreibung | | Permission | Beschreibung |
|---------------------------|----------------------------------------------------------| |---|---|
| statusapi.update.notify | Erlaubt Update-Benachrichtigungen | | `statusapi.update.notify` | Update-Benachrichtigungen empfangen |
| statusapi.netinfo | Zugriff auf /netinfo | | `statusapi.netinfo` | Zugriff auf `/netinfo` |
| statusapi.antibot | Zugriff auf /antibot | | `statusapi.antibot` | Zugriff auf `/antibot` |
| statusapi.automessage | Zugriff auf /automessage reload | | `statusapi.automessage` | Zugriff auf `/automessage reload` |
| statusapi.bcmds | Zugriff auf bestimmte CustomCommand-Funktionen | | `statusapi.bcmds` | Zugriff auf CustomCommand-Funktionen |
| chat.channel.local | Zugang zum Local-Kanal | | `chat.channel.local` | Zugang zum Local-Kanal |
| chat.channel.trade | Zugang zum Trade-Kanal | | `chat.channel.trade` | Zugang zum Trade-Kanal |
| chat.channel.staff | Zugang zum Staff-Kanal | | `chat.channel.staff` | Zugang zum Staff-Kanal |
| chat.helpop.receive | HelpOp-Nachrichten empfangen | | `chat.helpop.receive` | HelpOp-Nachrichten empfangen |
| chat.mute | Spieler muten / unmuten | | `chat.mute` | Spieler muten / unmuten |
| chat.broadcast | Broadcast-Nachrichten senden | | `chat.broadcast` | Broadcasts senden |
| chat.socialspy | Private Nachrichten mitlesen | | `chat.socialspy` | Private Nachrichten mitlesen |
| chat.admin.bypass | Admin-Bypass (kann nicht geblockt/gemutet werden) | | `chat.admin.bypass` | Nicht mutbar / nicht blockierbar |
| chat.admin.notify | Benachrichtigungen über Mutes und Blocks erhalten | | `chat.admin.notify` | Benachrichtigungen über Mutes und Blocks |
| chat.report | Spieler reporten (/report) | | `chat.report` | Spieler reporten (`/report`) |
| chat.color | Farbcodes (&a, &b, ...) im Chat nutzen | | `chat.color` | Farbcodes (`&a`, `&b`, …) im Chat nutzen |
| chat.color.format | Formatierungen (&l, &o, &n, ...) im Chat nutzen | | `chat.color.format` | Formatierungen (`&l`, `&o`, `&n`, …) im Chat nutzen |
| chat.filter.bypass | Chat-Filter (Anti-Spam, Caps, Blacklist) umgehen | | `chat.filter.bypass` | Anti-Spam, Caps und Blacklist umgehen |
| commandblocker.bypass | Command-Blocker umgehen | | `commandblocker.bypass` | Command-Blocker umgehen |
| commandblocker.admin | CommandBlocker verwalten (/cb) | | `commandblocker.admin` | CommandBlocker verwalten (`/cb`) |
---
## Wichtige Konfigurationen ### Konfiguration (StatusAPI)
### verify.properties #### `verify.properties` Core, Verify, Broadcast, Forum, Port
Core, Verify, Broadcast, Forum und Port. ```properties
statusapi.port=9191
wp_verify_url=https://deine-domain.tld
server.<Name>.id=<id>
server.<Name>.secret=<secret>
broadcast.enabled=true
broadcast.api_key=<key>
forum.enabled=true
forum.api_secret=<key>
automessage.enabled=true
automessage.interval=300
automessage.file=messages.txt
automessage.prefix=&8[&bInfo&8]
```
Typische Schlüssel: #### `network-guard.properties` NetworkInfo, Webhook, AntiBot, BackendJoinGuard
- statusapi.port=9191 ```properties
- wp_verify_url=https://deine-domain.tld networkinfo.enabled=true
- server.<Name>.id=<id> networkinfo.webhook.enabled=true
- server.<Name>.secret=<secret> networkinfo.webhook.url=<discord_webhook>
- broadcast.enabled=true networkinfo.webhook.embed_mode=detailed
- broadcast.api_key=<key> networkinfo.attack.api_key=<attack_api_key>
- forum.enabled=true
- forum.api_secret=<key>
- automessage.enabled=true
- automessage.interval=300
- automessage.file=messages.txt
- automessage.prefix=&8[&bInfo&8]
### network-guard.properties antibot.enabled=true
antibot.profile=high-traffic
NetworkInfo, Webhook, Attack-API und AntiBot. backendguard.enforcement_enabled=true
backendguard.log_blocked_attempts=true
backendguard.kick_message=&cBitte verbinde dich nur ueber den Proxy-Server.
backendguard.allowed_proxy_ips=127.0.0.1,::1
backendguard.allowed_proxy_cidrs=10.0.0.0/24
backendguard.sync.api_key=<sync_key>
```
Typische Schlüssel: #### Weitere Konfigurationsdateien
- networkinfo.enabled=true | Datei | Inhalt |
- networkinfo.webhook.enabled=true |---|---|
- networkinfo.webhook.url=<discord_webhook> | `chat.yml` | Kanäle, Formate, PM, Reports, Filter, Logging, Discord/Telegram, Linking |
- networkinfo.webhook.embed_mode=detailed | `blocked-commands.yml` | Liste der geblockten Commands |
- networkinfo.attack.api_key=<attack_api_key> | `customcommands.yml` | Eigene Befehle, Aliase, Sender-Typen |
- antibot.enabled=true | `messages.txt` | AutoMessage-Texte (Zeilen mit `#` und Leerzeilen werden ignoriert) |
- antibot.profile=high-traffic
### chat.yml ---
Chat-Kanäle, Formate, PM, Reports, Filter, Logging, Discord/Telegram, Account-Linking. ## BackendJoinGuard
### blocked-commands.yml BackendJoinGuard verhindert, dass Spieler Backend-Server direkt betreten und damit den Proxy-Schutz umgehen. Das Plugin prüft beim Login die Quell-IP nur konfigurierte Proxy-IPs oder CIDR-Netze werden durchgelassen.
Liste der geblockten Commands für CommandBlocker. > **Wichtig:** BackendJoinGuard kommt auf **jeden Backend-Server**, nicht auf den Proxy.
### customcommands.yml ---
Konfiguration für eigene Befehle, Aliase, Sender-Typen und Command-Listen. ### Betriebsarten
## AutoMessage Datei | Modus | Beschreibung |
|---|---|
| **Standalone** | Nutzt ausschließlich die lokale `config.yml` |
| **StatusAPI Sync** | Lädt Schutzregeln regelmäßig von StatusAPI; lokale Werte bleiben als Fallback erhalten |
Nachrichten für das AutoMessage-Modul liegen standardmäßig in `messages.txt`. ---
Leere Zeilen und Zeilen mit `#` werden ignoriert.
## StatusPulse Companion (WordPress) ### Commands & Permissions (BackendJoinGuard)
Im Repository liegt zusätzlich ein WordPress-Admin-Companion unter wordpress/statuspulse. | Command | Permission | Beschreibung |
Damit können Admins die StatusAPI-Verbindung, Attack-Key und Attack-Testflows direkt im WordPress-Backend bedienen. |---|---|---|
Voraussetzung dafür ist StatusAPI ab Version 4.1.0. | `/backendguard reload` | `backendguard.admin` | Config neu laden und bei aktivem Sync sofort neu abrufen |
---
### Konfiguration (BackendJoinGuard)
Datei: `plugins/BackendJoinGuard/config.yml`
#### Lokaler Schutz
```yml
enforcement-enabled: true
log-blocked-attempts: true
kick-message: "&cBitte verbinde dich nur ueber den Proxy-Server."
allowed-proxy-ips:
- "127.0.0.1"
- "::1"
- "185.123.45.67"
allowed-proxy-cidrs:
- "10.0.0.0/24"
```
#### StatusAPI Sync
```yml
statusapi-sync:
enabled: true
base-url: "http://127.0.0.1:9191"
endpoint-path: "/network/backendguard/config"
api-key: "DEIN_SYNC_KEY"
interval-seconds: 60
log-sync-errors: true
```
#### Typische Szenarien
| Szenario | `allowed-proxy-ips` | `base-url` |
|---|---|---|
| Alles auf einer Maschine | `127.0.0.1`, `::1` | `http://127.0.0.1:9191` |
| Proxy auf separatem Host | `185.123.45.67` | `http://185.123.45.67:9191` |
| Internes Netz (CIDR) | `10.0.0.10` + CIDR `10.0.0.0/24` | `http://10.0.0.10:9191` |
---
## Voraussetzungen & Installation
### Voraussetzungen
| Komponente | Pflicht | Optional |
|---|---|---|
| BungeeCord Proxy | ✅ | |
| Minecraft 1.20+ | ✅ | |
| Java 8+ | ✅ | |
| LuckPerms | | ✅ |
| Geyser-BungeeCord | | ✅ |
| Discord Webhook / Bot | | ✅ |
| Telegram Bot | | ✅ |
| WordPress / Forum-Backend | | ✅ |
### StatusAPI installieren (Proxy)
```
1. StatusAPI.jar → plugins/ auf dem Proxy
2. Proxy starten → Konfigurationsdateien werden erzeugt
3. Proxy stoppen
4. Konfigurationen anpassen:
verify.properties · chat.yml · network-guard.properties · blocked-commands.yml
5. Proxy neu starten
```
### BackendJoinGuard installieren (Backend)
```
1. BackendJoinGuard.jar → plugins/ auf jedem Backend-Server
2. Server starten → config.yml wird erzeugt
3. config.yml anpassen
4. Server neu starten oder /backendguard reload ausführen
```
### StatusPulse Companion (WordPress)
Im Repository unter `wordpress/statuspulse` liegt ein WordPress-Admin-Plugin.
Damit lassen sich StatusAPI-Verbindung, Attack-Key und Attack-Testflows direkt im WordPress-Backend bedienen.
Erfordert StatusAPI ≥ 4.1.0.
---
## Troubleshooting ## Troubleshooting
### API nicht erreichbar ### StatusAPI
- statusapi.port prüfen | Problem | Mögliche Ursachen & Lösung |
- Firewall/Hosting-Portfreigabe prüfen |---|---|
- Proxy-Konsole auf Startmeldung des HTTP-Servers prüfen | API nicht erreichbar | `statusapi.port` prüfen · Firewall / Portfreigabe prüfen · Proxy-Konsole auf HTTP-Server-Startmeldung prüfen |
| Attack-Meldungen fehlen in Discord | `networkinfo.webhook.enabled` und `.url` prüfen · `networkinfo.attack.enabled` und `api_key`-Header prüfen |
| AntiBot zu hart / zu weich | `antibot.profile` auf `strict` oder `high-traffic` setzen · Schwellwerte in `network-guard.properties` feinjustieren · `/antibot reload` ausführen |
### Attack-Meldungen kommen nicht in Discord an ### BackendJoinGuard
- networkinfo.webhook.enabled prüfen
- networkinfo.webhook.url prüfen
- networkinfo.attack.enabled prüfen
- networkinfo.attack.api_key Header prüfen
### AntiBot greift zu hart oder zu weich
- antibot.profile auf strict oder high-traffic setzen
- Schwellwerte in network-guard.properties feiner einstellen
- /antibot reload ausführen
| Problem | Mögliche Ursachen & Lösung |
|---|---|
| Spieler werden trotz Proxy geblockt | Proxy-IP in `allowed-proxy-ips` korrekt eintragen · Bei mehreren Segmenten CIDR-Eintrag nutzen · Proxy-Konfiguration (Velocity/BungeeCord) prüfen |
| Sync mit StatusAPI funktioniert nicht | `base-url` und Port prüfen · `api-key` muss identisch zu `backendguard.sync.api_key` sein · `log-sync-errors: true` setzen und Konsole prüfen |