1. Wichtig: botzeug.weltendzeit.info ist nur die Downloadquelle
Die Adresse botzeug.weltendzeit.info/installer/ dient ausschließlich dazu, die Installationsdateien bereitzustellen. Das installierte Bot Control Panel wird nicht an diese Domain gebunden.
Download des Installers:
botzeug.weltendzeit.info/installer/Dein installiertes Panel: beispielsweise
music.example.org, botpanel.meinedomain.de oder meinedomain.de/botcontrol/.Das Panel selbst lauscht standardmäßig nur auf 127.0.0.1:8787. Dein vorhandener Webserver oder dein Hosting-Panel übernimmt HTTPS und die öffentliche Domain.
2. Voraussetzungen
- Debian 13
- Root-Zugriff per SSH
- Internetzugang vom Server
- freie lokale TCP-Portnummer, standardmäßig 8787
- FFmpeg wird vom Installer installiert
- ausreichend Speicher für hochgeladene Musik
- für öffentlichen Zugriff eine eigene Domain/Subdomain und HTTPS
3. Installer beziehen
Die offiziellen Installationsdateien liegen auf der WeltEndzeit-Downloadseite:
https://botzeug.weltendzeit.info/installer/install-script.sh https://botzeug.weltendzeit.info/installer/weltendzeit-botpanel.tar.gz
Diese URLs bestimmen nur, woher das Script und das Programmpaket heruntergeladen werden. Sie bestimmen nicht die spätere Panel-Adresse.
4. Debian 13 prüfen
cat /etc/os-release uname -m free -h df -h
Optional ist vor der Installation ein Snapshot oder Backup des vServers sinnvoll.
5. Installation starten
Als root:
bash <(curl -fsSL https://botzeug.weltendzeit.info/installer/install-script.sh)
Der Installer führt kein vollständiges System-Upgrade aus und ändert keine Apache-, nginx-, KeyHelp-, Plesk- oder cPanel-Konfiguration.
Er richtet ausschließlich die für WeltEndzeit Bot Control benötigten Komponenten ein:
- Linux-Systembenutzer
weltendzeitbot - Anwendung unter
/opt/weltendzeit-bots/ - Konfiguration und Secrets unter
/etc/weltendzeit-bots/ - lokales Node.js 24 unterhalb der Anwendung
- FFmpeg und notwendige Runtime-Pakete
- systemd-Dienst
weltendzeit-botpanel.service - Admin-Benutzer beim ersten Setup
Anderen internen Port verwenden
Ist 8787 bereits belegt, kann ein anderer Port gewählt werden:
WELTENDZEIT_PORT=8790 bash <(curl -fsSL https://botzeug.weltendzeit.info/installer/install-script.sh)
6. Interner Dienst
Standardmäßig läuft die Anwendung ausschließlich unter:
http://127.0.0.1:8787
Kontrollieren:
systemctl status weltendzeit-botpanel --no-pager -l ss -ltnp | grep 8787 curl -I http://127.0.0.1:8787/
7. Eigene Domain, Subdomain oder URL-Pfad
Jetzt legst du selbst fest, wo dein Panel erreichbar sein soll. Beispiele:
https://botpanel.example.org/ https://music.example.org/ https://example.org/bots/
Der bestehende Webserver übernimmt TLS/HTTPS und leitet Anfragen intern an 127.0.0.1:8787 weiter.
Welche Oberfläche dafür verwendet wird, hängt von deinem Server ab. Bei einem Hosting-Panel sollte bevorzugt dessen vorgesehene Funktion für zusätzliche Apache-/nginx-Direktiven oder Reverse Proxies verwendet werden, damit Updates des Panels die Einstellung nicht überschreiben.
8. KeyHelp
Der Installer ändert KeyHelp nicht. Lege deine gewünschte Domain oder Subdomain in KeyHelp selbst an, aktiviere HTTPS und ergänze anschließend einen Reverse Proxy über die dafür vorgesehenen zusätzlichen Webserver-Direktiven.
Beispiel: Panel auf einer eigenen Subdomain am Root
ProxyPreserveHost On ProxyPass / http://127.0.0.1:8787/ ProxyPassReverse / http://127.0.0.1:8787/ RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443"
Beispiel: Panel nur unter /bots/
ProxyPreserveHost On ProxyPass /bots/ http://127.0.0.1:8787/ ProxyPassReverse /bots/ http://127.0.0.1:8787/ RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443"
Danach Apache über den vom System vorgesehenen Weg prüfen und neu laden. Die vom Installer installierte Anwendung selbst bleibt unverändert.
9. Plesk
Auch Plesk wird nicht automatisch verändert. Erstelle die gewünschte Domain/Subdomain in Plesk und verwende die Plesk-eigenen Apache-/nginx-Einstellungen für den Reverse Proxy.
Typisches nginx-Prinzip für eine eigene Panel-Subdomain
location / {
proxy_pass http://127.0.0.1:8787/;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}10. cPanel
WeltEndzeit Bot Control ist auch hier vom Control Panel entkoppelt: Das Programm läuft nur lokal auf einem TCP-Port. cPanel bzw. der von cPanel verwaltete Webserver übernimmt die öffentliche Domain.
Richte den Reverse Proxy über eine von deiner cPanel-/Webserver-Konfiguration unterstützte Include- oder Proxy-Funktion ein. Das technische Apache-Ziel bleibt:
http://127.0.0.1:8787/
Ein generisches Apache-Beispiel lautet:
ProxyPreserveHost On ProxyPass / http://127.0.0.1:8787/ ProxyPassReverse / http://127.0.0.1:8787/ RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443"
11. Apache ohne Hosting-Panel
Bei einem selbst verwalteten Apache können die notwendigen Module aktiviert werden:
a2enmod proxy a2enmod proxy_http a2enmod headers
Beispiel für einen eigenen HTTPS-vHost:
ProxyPreserveHost On ProxyPass / http://127.0.0.1:8787/ ProxyPassReverse / http://127.0.0.1:8787/ RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443"
Danach:
apache2ctl configtest systemctl reload apache2
12. nginx ohne Hosting-Panel
location / {
proxy_pass http://127.0.0.1:8787/;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}Der TLS-vHost und die Zertifikatsverwaltung bleiben Sache deiner vorhandenen nginx-Konfiguration.
13. Erster Login
Öffne anschließend genau die Domain oder den URL-Pfad, den du selbst für den Reverse Proxy eingerichtet hast. Es gibt keine von WeltEndzeit fest vorgegebene Interface-Adresse.
Melde dich mit dem während der Installation erstellten Administrator-Konto an.
14. Discord-Bot hinzufügen
Jeder Benutzer erstellt seine Discord-Anwendung selbst im Discord Developer Portal. WeltEndzeit Bot Control benötigt zum Hinzufügen nur den Bot-Token.
- Discord-Application selbst erstellen.
- Bot zur Application hinzufügen.
- Bot-Token erzeugen und sicher kopieren.
- Im WeltEndzeit-Panel Bot hinzufügen auswählen.
- Bot-Token einfügen.
- Das Panel liest Botname, Avatar und Application-ID aus.
- Mit dem erzeugten Einladungsbutton den Bot auf den gewünschten Discord-Server einladen.
15. Service-Befehle
Status
systemctl status weltendzeit-botpanel --no-pager -l
Neustart
systemctl restart weltendzeit-botpanel
Live-Log
journalctl -u weltendzeit-botpanel -f
Letzte 100 Zeilen
journalctl -u weltendzeit-botpanel -n 100 --no-pager
16. Updates
Neue Versionen werden wieder über die WeltEndzeit-Downloadquelle bereitgestellt. Der Installationsbefehl kann erneut ausgeführt werden:
bash <(curl -fsSL https://botzeug.weltendzeit.info/installer/install-script.sh)
Persistente Daten unter /opt/weltendzeit-bots/data/ und Secrets unter /etc/weltendzeit-bots/ bleiben bei einem normalen Update erhalten.
Die selbst eingerichtete öffentliche Domain und die Reverse-Proxy-Konfiguration bleiben ebenfalls außerhalb des Installers und werden daher nicht überschrieben.
17. Fehlersuche
Interner Dienst nicht erreichbar
systemctl status weltendzeit-botpanel --no-pager -l journalctl -u weltendzeit-botpanel -n 100 --no-pager ss -ltnp | grep 8787 curl -I http://127.0.0.1:8787/
502 Bad Gateway
Der öffentliche Webserver ist erreichbar, kann aber den internen Dienst nicht erreichen. Prüfe zuerst, ob der systemd-Dienst läuft und ob der im Reverse Proxy konfigurierte Port dem installierten Port entspricht.
Login funktioniert über HTTP nicht
Das Panel ist standardmäßig für HTTPS ausgelegt. Die Session-Cookies sind als Secure konfiguriert. Für den normalen Betrieb deshalb eine HTTPS-Domain über den Reverse Proxy verwenden.
Port 8787 ist belegt
WELTENDZEIT_PORT=8790 bash <(curl -fsSL https://botzeug.weltendzeit.info/installer/install-script.sh)
Danach muss der Reverse Proxy natürlich auf denselben alternativen Port zeigen.
18. Sicherheitsregeln
- keine Bot-Tokens öffentlich teilen
- HTTPS für den öffentlichen Panel-Zugriff verwenden
- internen App-Port nicht unnötig öffentlich öffnen
- Hosting-Panel-Konfiguration über die dafür vorgesehenen Verwaltungswege ändern
- keine automatisch generierten vHost-Dateien dauerhaft manuell überschreiben
- regelmäßig Backups von /opt/weltendzeit-bots/data und /etc/weltendzeit-bots erstellen
- /etc/weltendzeit-bots/master.key besonders sichern