feat(crowdsec): UI-Schalter „vertrauenswürdiges Admin-Panel" → gerenderte CrowdSec-Whitelist — v1.3.19
Pro-Domain-Flag crowdsec_trusted (Migration 0048). Ist es gesetzt, rendert der neue crowdsec-whitelist-Generator den Hostname host-genau in /etc/crowdsec/parsers/s02-enrich/edgeguard-admin-hosts-whitelist.yaml (evt.Parsed.http_host) und reloadet crowdsec. Löst das Problem, dass Admin-SPAs (viele /api/-Requests pro Aktion) http-crawl-non_statics triggern und die Admin-IP bannen — jetzt im Frontend steuerbar statt manueller Node-Datei. - Generator internal/crowdsec/whitelist.go (configgen.Generator, no-op ohne CrowdSec), registriert in edgeguard-ctl render-config + in den Domains-Reloader komponiert (Domain-Edit → Whitelist re-render). Aus der replizierten DB gerendert → überlebt Node-Neuaufbau (Ersatz für die manuelle Node-Datei). - postinst: sudoers reload crowdsec + edgeguard-owned Whitelist-Datei anlegen (dir root-owned → Generator überschreibt nur die vorab-chownte Datei) + Initial-Render. - UI: Switch „Vertrauenswürdiges Admin-Panel" im Domain-Detail. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -203,7 +203,9 @@ edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl stop edgeguard-waf.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl enable edgeguard-waf.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl disable edgeguard-waf.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl restart edgeguard-waf.service
|
||||
# CrowdSec service toggle (start/stop/enable/disable)
|
||||
# CrowdSec service toggle (start/stop/enable/disable) + reload (Whitelist-Render)
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl reload crowdsec.service
|
||||
edgeguard ALL=(root) NOPASSWD: /bin/systemctl reload crowdsec.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl start crowdsec.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl stop crowdsec.service
|
||||
edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl enable crowdsec.service
|
||||
@@ -868,6 +870,15 @@ whitelist:
|
||||
WL
|
||||
systemctl reload crowdsec 2>/dev/null \
|
||||
|| systemctl restart crowdsec 2>/dev/null || true
|
||||
|
||||
# Admin-Hosts-Whitelist: wird vom crowdsec-whitelist-Generator aus
|
||||
# domains.crowdsec_trusted gerendert (UI-Schalter "vertrauenswuerdiges
|
||||
# Admin-Panel"). Das Verzeichnis ist root-owned → der Generator (laeuft
|
||||
# als edgeguard) kann nur eine vorab-chownte Datei ueberschreiben, daher
|
||||
# hier leer + edgeguard-owned anlegen, dann aus der DB befuellen.
|
||||
install -o "$EG_USER" -g "$EG_USER" -m 0644 /dev/null \
|
||||
/etc/crowdsec/parsers/s02-enrich/edgeguard-admin-hosts-whitelist.yaml
|
||||
sudo -n -u "$EG_USER" /usr/bin/edgeguard-ctl render-config --only=crowdsec-whitelist 2>/dev/null || true
|
||||
fi
|
||||
|
||||
# ── Render initial service configs ───────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user