README.md aktualisiert

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

524
README.md
View File

@@ -1,284 +1,404 @@
# StatusAPI
![Version](https://img.shields.io/badge/version-4.1.0-0B63CE?style=for-the-badge)
![Platform](https://img.shields.io/badge/platform-BungeeCord-D48700?style=for-the-badge)
![Minecraft](https://img.shields.io/badge/Minecraft-1.20%2B-1E9E5A?style=for-the-badge)
![Java](https://img.shields.io/badge/Java-8%2B-C0392B?style=for-the-badge)
![API](https://img.shields.io/badge/HTTP%20API-Status%20%2B%20Broadcast%20%2B%20Attack-6F42C1?style=for-the-badge)
<p align="center">
<img src="https://img.shields.io/badge/Version-4.1.0-0B63CE?style=for-the-badge" />
<img src="https://img.shields.io/badge/Platform-BungeeCord-D48700?style=for-the-badge" />
<img src="https://img.shields.io/badge/Minecraft-1.20+-1E9E5A?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.
Der Fokus liegt auf Live-Status, Chat/Support, Verifizierung, Forum-Bridge, Broadcasts und Network-Guard mit AntiBot.
<p align="center">
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.
Jegliche Nutzung, Modifikation oder Weitergabe, ganz oder teilweise, ist ausschließlich mit vorheriger schriftlicher Genehmigung des Entwicklers gestattet.
© Entwickelt von M_Viper. Alle Rechte vorbehalten.
> **Rechtlicher Hinweis**
> 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.
## 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
- 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
- Ingame-Befehl für Statusprüfung
- Discord-Webhook-Meldungen für:
- Start und Stop
- hohe RAM-Auslastung
- hohe Spieler-Auslastung
- Attack Detected und Attack Stopped
- Embed-Modus über Konfiguration:
- compact
- detailed
- Ingame-Befehl `/netinfo` für Statusprüfung
- Discord-Webhook-Meldungen bei: Server-Start/-Stop, hoher RAM-/Spieler-Auslastung, Attack Detected/Stopped
- Embed-Modus konfigurierbar: `compact` oder `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
- Optionaler VPN/Proxy/Hosting-Check über ip-api
- Profile strict und high-traffic
- Laufzeitverwaltung per Command:
- Status anzeigen
- Blocks leeren
- einzelne IP entblocken
- Profil wechseln und speichern
- Konfiguration neu laden
- Optionaler VPN/Proxy/Hosting-Check via ip-api
- Profile: `strict` und `high-traffic`
- Laufzeitverwaltung über `/antibot` (Status, Blocks leeren, IP entblocken, Profil wechseln, Reload)
### Chat und Moderation
</details>
- Mehrere Chat-Kanäle
- PM-System mit Reply
- Ignore-System
- Mute und Unmute
- Mentions
- Emoji-Unterstützung
- SocialSpy
<details>
<summary><strong>Chat & Moderation</strong></summary>
- Mehrere Chat-Kanäle, PM-System mit Reply, Ignore-System
- Mute/Unmute, Mentions, Emoji-Unterstützung, SocialSpy
- Chat-History und Admin-Infos
- Report-System inklusive Close-Flow
- Report-System inkl. Close-Flow
- Weiterleitung an Discord und Telegram (konfigurierbar)
### Verify, Forum und CommandBlocker
</details>
<details>
<summary><strong>Verify, Forum & CommandBlocker</strong></summary>
- Spieler-Verifizierung über Token
- Forum-Linking und Forum-Benachrichtigungen im Spiel
- Command-Blocker mit /cb Verwaltung
- Forum-Linking und Forum-Benachrichtigungen ingame
- 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`
- 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.
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.
Basis-URL: `http://<proxy-ip>:9191` Port konfigurierbar über `statusapi.port`.
## HTTP API
Standard-Port ist 9191 und wird über statusapi.port gesetzt.
| Methode | Pfad | Zweck | Auth |
| Methode | Pfad | Beschreibung | Auth |
|---|---|---|---|
| GET | / | Voller Status als JSON | keine |
| POST | /broadcast | Broadcast senden oder planen | x-api-key aus Broadcast-Konfiguration |
| POST | /broadcast/cancel | Geplanten Broadcast abbrechen | 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 | /network/attack | Attack Detected/Stopped an Discord-Webhook melden | x-api-key aus networkinfo.attack.api_key |
| `GET` | `/` | Voller Netzwerk-Status als JSON | |
| `POST` | `/broadcast` | Broadcast senden oder planen | `x-api-key` |
| `POST` | `/broadcast/cancel` | Geplanten Broadcast abbrechen | `x-api-key` |
| `POST` | `/cancel` | Alias für `/broadcast/cancel` | `x-api-key` |
| `POST` | `/forum/notify` | Forum-Notification an Proxy | `x-api-key` / Forum-Secret |
| `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 |
|---|---|
| /netinfo | Zeigt Netzwerk- und Systemstatus |
| /antibot status | Zeigt AntiBot Status |
| /antibot clearblocks | Entfernt aktive IP-Blocks |
| /antibot unblock <ip> | Entblockt eine IP |
| /antibot profile <strict\|high-traffic> | Wechselt Profil und speichert Werte |
| /antibot reload | Lädt AntiBot-Konfiguration neu |
| `/netinfo` | Netzwerk- und Systemstatus anzeigen |
| `/antibot status` | AntiBot-Status anzeigen |
| `/antibot clearblocks` | Alle aktiven IP-Blocks entfernen |
| `/antibot unblock <ip>` | Einzelne IP entblocken |
| `/antibot profile <strict\|high-traffic>` | Profil wechseln und speichern |
| `/antibot reload` | AntiBot-Konfiguration neu laden |
### Verify und Forum
#### Verify & Forum
| Command | Beschreibung |
|---|---|
| /verify <token> | Verifiziert den Account |
| /forumlink <token> | Verknüpft Account mit Forum |
| /forum | Zeigt Forum-Benachrichtigungen |
| `/verify <token>` | Account verifizieren |
| `/forumlink <token>` | Account mit Forum verknüpfen |
| `/forum` | Forum-Benachrichtigungen anzeigen |
### Chat, Support und Moderation
#### Chat, Support & Moderation
| Command | Beschreibung |
|---|---|
| /channel [kanal] | Kanal wechseln oder Liste zeigen |
| /helpop <text> | Support-Anfrage an Team |
| /msg <spieler> <text> | Private Nachricht |
| /r <text> | Antwort auf letzte PM |
| /ignore <spieler> | Spieler ignorieren |
| /unignore <spieler> | Ignore entfernen |
| /chatmute <spieler> [minuten] | Spieler muten |
| /chatunmute <spieler> | Mute aufheben |
| /chataus | Chat-Empfang toggeln |
| /broadcast <text> | Broadcast an alle |
| /emoji | Emoji-Liste |
| /socialspy | PMs mitlesen |
| /chatreload | Chat-Konfig neu laden |
| /chatinfo <spieler> | Admin-Infos zu Spieler |
| /chathist [spieler] [anzahl] | Chat-History |
| /mentions | Mention-Benachrichtigungen toggeln |
| /chatbypass | Nächste Nachricht Plugin-bypass |
| /discordlink, /dlink | Discord-Linktoken erstellen |
| /telegramlink, /tlink | Telegram-Linktoken erstellen |
| /unlink <discord\|telegram\|all> | Verknüpfung aufheben |
| /report <spieler> <grund> | Spieler melden |
| /reports [all] | Reports ansehen |
| /reportclose <id> | Report schließen |
| `/channel [kanal]` | Kanal wechseln oder Liste anzeigen |
| `/helpop <text>` | Support-Anfrage an Team |
| `/msg <spieler> <text>` | Private Nachricht senden |
| `/r <text>` | Auf letzte PM antworten |
| `/ignore <spieler>` | Spieler ignorieren |
| `/unignore <spieler>` | Ignore entfernen |
| `/chatmute <spieler> [minuten]` | Spieler muten |
| `/chatunmute <spieler>` | Mute aufheben |
| `/chataus` | Chat-Empfang toggeln |
| `/broadcast <text>` | Broadcast an alle senden |
| `/emoji` | Emoji-Liste anzeigen |
| `/socialspy` | PMs mitlesen toggeln |
| `/chatreload` | Chat-Konfiguration neu laden |
| `/chatinfo <spieler>` | Admin-Infos zu einem Spieler |
| `/chathist [spieler] [anzahl]` | Chat-History anzeigen |
| `/mentions` | Mention-Benachrichtigungen toggeln |
| `/chatbypass` | Nächste Nachricht am Plugin vorbei senden |
| `/discordlink`, `/dlink` | Discord-Linktoken erstellen |
| `/telegramlink`, `/tlink` | Telegram-Linktoken erstellen |
| `/unlink <discord\|telegram\|all>` | Verknüpfung aufheben |
| `/report <spieler> <grund>` | Spieler melden |
| `/reports [all]` | Reports ansehen |
| `/reportclose <id>` | Report schließen |
### CommandBlocker
#### CommandBlocker
| Command | Beschreibung |
|---|---|
| /cb add <command> | Command blockieren |
| /cb remove <command> | Blockierung aufheben |
| /cb list | Blockierte Commands anzeigen |
| /cb reload | CommandBlocker neu laden |
| `/cb add <command>` | Command blockieren |
| `/cb remove <command>` | Blockierung aufheben |
| `/cb list` | Alle blockierten Commands anzeigen |
| `/cb reload` | CommandBlocker neu laden |
### CustomCommands
#### CustomCommands
| Command | Beschreibung |
|---|---|
| /bcmds | Lädt `customcommands.yml` neu |
| /chat <text> | Sendet Text als Chat oder führt Slash-Command aus (falls aktiviert) |
| `/bcmds` | `customcommands.yml` neu laden |
| `/chat <text>` | Text als Chat senden oder Slash-Command ausführen |
# Verfügbare Permissions
---
| Permission | Beschreibung |
|---------------------------|----------------------------------------------------------|
| statusapi.update.notify | Erlaubt Update-Benachrichtigungen |
| statusapi.netinfo | Zugriff auf /netinfo |
| statusapi.antibot | Zugriff auf /antibot |
| statusapi.automessage | Zugriff auf /automessage reload |
| statusapi.bcmds | Zugriff auf bestimmte CustomCommand-Funktionen |
| chat.channel.local | Zugang zum Local-Kanal |
| chat.channel.trade | Zugang zum Trade-Kanal |
| chat.channel.staff | Zugang zum Staff-Kanal |
| chat.helpop.receive | HelpOp-Nachrichten empfangen |
| chat.mute | Spieler muten / unmuten |
| chat.broadcast | Broadcast-Nachrichten senden |
| chat.socialspy | Private Nachrichten mitlesen |
| chat.admin.bypass | Admin-Bypass (kann nicht geblockt/gemutet werden) |
| chat.admin.notify | Benachrichtigungen über Mutes und Blocks erhalten |
| chat.report | Spieler reporten (/report) |
| chat.color | Farbcodes (&a, &b, ...) im Chat nutzen |
| chat.color.format | Formatierungen (&l, &o, &n, ...) im Chat nutzen |
| chat.filter.bypass | Chat-Filter (Anti-Spam, Caps, Blacklist) umgehen |
| commandblocker.bypass | Command-Blocker umgehen |
| commandblocker.admin | CommandBlocker verwalten (/cb) |
### Permissions (StatusAPI)
| Permission | Beschreibung |
|---|---|
| `statusapi.update.notify` | Update-Benachrichtigungen empfangen |
| `statusapi.netinfo` | Zugriff auf `/netinfo` |
| `statusapi.antibot` | Zugriff auf `/antibot` |
| `statusapi.automessage` | Zugriff auf `/automessage reload` |
| `statusapi.bcmds` | Zugriff auf CustomCommand-Funktionen |
| `chat.channel.local` | Zugang zum Local-Kanal |
| `chat.channel.trade` | Zugang zum Trade-Kanal |
| `chat.channel.staff` | Zugang zum Staff-Kanal |
| `chat.helpop.receive` | HelpOp-Nachrichten empfangen |
| `chat.mute` | Spieler muten / unmuten |
| `chat.broadcast` | Broadcasts senden |
| `chat.socialspy` | Private Nachrichten mitlesen |
| `chat.admin.bypass` | Nicht mutbar / nicht blockierbar |
| `chat.admin.notify` | Benachrichtigungen über Mutes und Blocks |
| `chat.report` | Spieler reporten (`/report`) |
| `chat.color` | Farbcodes (`&a`, `&b`, …) im Chat nutzen |
| `chat.color.format` | Formatierungen (`&l`, `&o`, `&n`, …) im Chat nutzen |
| `chat.filter.bypass` | Anti-Spam, Caps und Blacklist umgehen |
| `commandblocker.bypass` | Command-Blocker umgehen |
| `commandblocker.admin` | CommandBlocker verwalten (`/cb`) |
## Wichtige Konfigurationen
---
### verify.properties
### Konfiguration (StatusAPI)
Core, Verify, Broadcast, Forum und Port.
#### `verify.properties` Core, Verify, Broadcast, Forum, Port
Typische Schlüssel:
```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]
```
- 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]
#### `network-guard.properties` NetworkInfo, Webhook, AntiBot, BackendJoinGuard
### network-guard.properties
```properties
networkinfo.enabled=true
networkinfo.webhook.enabled=true
networkinfo.webhook.url=<discord_webhook>
networkinfo.webhook.embed_mode=detailed
networkinfo.attack.api_key=<attack_api_key>
NetworkInfo, Webhook, Attack-API und AntiBot.
antibot.enabled=true
antibot.profile=high-traffic
Typische Schlüssel:
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>
```
- networkinfo.enabled=true
- networkinfo.webhook.enabled=true
- networkinfo.webhook.url=<discord_webhook>
- networkinfo.webhook.embed_mode=detailed
- networkinfo.attack.api_key=<attack_api_key>
- antibot.enabled=true
- antibot.profile=high-traffic
#### Weitere Konfigurationsdateien
### chat.yml
| Datei | Inhalt |
|---|---|
| `chat.yml` | Kanäle, Formate, PM, Reports, Filter, Logging, Discord/Telegram, Linking |
| `blocked-commands.yml` | Liste der geblockten Commands |
| `customcommands.yml` | Eigene Befehle, Aliase, Sender-Typen |
| `messages.txt` | AutoMessage-Texte (Zeilen mit `#` und Leerzeilen werden ignoriert) |
Chat-Kanäle, Formate, PM, Reports, Filter, Logging, Discord/Telegram, Account-Linking.
---
### blocked-commands.yml
## BackendJoinGuard
Liste der geblockten Commands für CommandBlocker.
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.
### customcommands.yml
> **Wichtig:** BackendJoinGuard kommt auf **jeden Backend-Server**, nicht auf den Proxy.
Konfiguration für eigene Befehle, Aliase, Sender-Typen und Command-Listen.
---
## AutoMessage Datei
### Betriebsarten
Nachrichten für das AutoMessage-Modul liegen standardmäßig in `messages.txt`.
Leere Zeilen und Zeilen mit `#` werden ignoriert.
| 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 |
## StatusPulse Companion (WordPress)
---
Im Repository liegt zusätzlich ein WordPress-Admin-Companion unter wordpress/statuspulse.
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.
### Commands & Permissions (BackendJoinGuard)
| Command | Permission | Beschreibung |
|---|---|---|
| `/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
### API nicht erreichbar
### StatusAPI
- statusapi.port prüfen
- Firewall/Hosting-Portfreigabe prüfen
- Proxy-Konsole auf Startmeldung des HTTP-Servers prüfen
| Problem | Mögliche Ursachen & Lösung |
|---|---|
| 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
- 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
### BackendJoinGuard
| 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 |