From 91a7227b8231191df273523c902c851a86690272 Mon Sep 17 00:00:00 2001 From: CyberMind-FR Date: Wed, 7 Jan 2026 13:32:43 +0100 Subject: [PATCH] feat: Add wizard manifests for internal LuCI apps (v0.6.0-r23) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CrowdSec Dashboard Wizard: - Created manifest.json with wizard configuration - Fields: API URL, API Key, auto-refresh interval, metrics toggle - Allows quick setup of CrowdSec monitoring dashboard - UCI config: crowdsec.settings Netifyd DPI Dashboard Wizard: - Created manifest.json with wizard configuration - Fields: socket type, socket path/address/port - Flow tracking, app detection, max flows settings - Allows quick setup of deep packet inspection - UCI config: secubox-netifyd.settings and monitoring sections Total Wizards Now Available: - CrowdSec Dashboard (new) - Netifyd DPI Dashboard (new) - Domoticz (docker app) - Lyrion Media Server (docker app) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .../luci-app-crowdsec-dashboard/manifest.json | 56 +++++++++++++ .../luci-app-secubox-netifyd/manifest.json | 84 +++++++++++++++++++ 2 files changed, 140 insertions(+) create mode 100644 package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-crowdsec-dashboard/manifest.json create mode 100644 package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-secubox-netifyd/manifest.json diff --git a/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-crowdsec-dashboard/manifest.json b/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-crowdsec-dashboard/manifest.json new file mode 100644 index 00000000..d9c71f84 --- /dev/null +++ b/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-crowdsec-dashboard/manifest.json @@ -0,0 +1,56 @@ +{ + "id": "luci-app-crowdsec-dashboard", + "name": "CrowdSec Dashboard", + "description": "Configure CrowdSec intrusion detection and monitoring dashboard", + "type": "luci-app", + "version": "0.4.0", + "source": "https://github.com/CyberMindStudio/luci-app-crowdsec-dashboard", + "packages": [ + "luci-app-crowdsec-dashboard", + "crowdsec" + ], + "wizard": { + "uci": { + "config": "crowdsec", + "section": "settings" + }, + "fields": [ + { + "id": "api_url", + "label": "CrowdSec API URL", + "type": "text", + "uci_option": "api_url", + "placeholder": "http://127.0.0.1:8080", + "description": "URL of the CrowdSec Local API (LAPI)" + }, + { + "id": "api_key", + "label": "API Key", + "type": "password", + "uci_option": "api_key", + "placeholder": "Enter your CrowdSec API key", + "description": "API key for authentication with CrowdSec LAPI" + }, + { + "id": "auto_refresh", + "label": "Auto-refresh Interval (seconds)", + "type": "number", + "uci_option": "auto_refresh", + "placeholder": "30", + "description": "Dashboard auto-refresh interval" + }, + { + "id": "enable_metrics", + "label": "Enable Metrics Collection", + "type": "checkbox", + "uci_option": "enable_metrics", + "description": "Collect and display CrowdSec engine metrics" + } + ] + }, + "profiles": ["gateway", "gateway_dmz"], + "actions": { + "configure": "/etc/init.d/crowdsec restart", + "status": "/etc/init.d/crowdsec status" + } +} diff --git a/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-secubox-netifyd/manifest.json b/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-secubox-netifyd/manifest.json new file mode 100644 index 00000000..3e6a7da4 --- /dev/null +++ b/package/secubox/secubox-core/root/usr/share/secubox/plugins/luci-app-secubox-netifyd/manifest.json @@ -0,0 +1,84 @@ +{ + "id": "luci-app-secubox-netifyd", + "name": "Netifyd DPI Dashboard", + "description": "Configure Deep Packet Inspection with real-time flow monitoring and application detection", + "type": "luci-app", + "version": "0.3.0", + "source": "https://github.com/CyberMindStudio/luci-app-secubox-netifyd", + "packages": [ + "luci-app-secubox-netifyd", + "netifyd" + ], + "wizard": { + "uci": { + "config": "secubox-netifyd", + "section": "settings" + }, + "fields": [ + { + "id": "socket_type", + "label": "Socket Type", + "type": "select", + "uci_option": "socket_type", + "options": [ + {"value": "unix", "label": "Unix Socket"}, + {"value": "tcp", "label": "TCP Socket"} + ], + "description": "Type of socket connection to Netifyd daemon" + }, + { + "id": "unix_socket_path", + "label": "Unix Socket Path", + "type": "text", + "uci_option": "unix_socket_path", + "placeholder": "/var/run/netifyd/netifyd.sock", + "description": "Path to Netifyd Unix domain socket" + }, + { + "id": "socket_address", + "label": "TCP Socket Address", + "type": "text", + "uci_option": "socket_address", + "placeholder": "127.0.0.1", + "description": "IP address for TCP socket connection" + }, + { + "id": "socket_port", + "label": "TCP Socket Port", + "type": "number", + "uci_option": "socket_port", + "placeholder": "7150", + "description": "Port for TCP socket connection" + }, + { + "id": "enable_flow_tracking", + "label": "Enable Flow Tracking", + "type": "checkbox", + "uci_option": "enable_flow_tracking", + "uci_section": "monitoring", + "description": "Track active network flows in real-time" + }, + { + "id": "enable_app_detection", + "label": "Enable Application Detection", + "type": "checkbox", + "uci_option": "enable_app_detection", + "uci_section": "monitoring", + "description": "Detect and classify network applications" + }, + { + "id": "max_flows", + "label": "Maximum Flows", + "type": "number", + "uci_option": "max_flows", + "placeholder": "10000", + "description": "Maximum number of flows to track" + } + ] + }, + "profiles": ["gateway", "gateway_dmz", "home"], + "actions": { + "configure": "/etc/init.d/netifyd restart", + "status": "/etc/init.d/netifyd status" + } +}