cec4893db9
feat(security): Implement SysWarden Evolution #1-3 security enhancements
...
Evolution #1 - IP Blocklist (secubox-app-ipblocklist, luci-app-ipblocklist):
- Pre-emptive blocking layer with ipset (~100k IPs)
- Default sources: Data-Shield, Firehol Level 1
- Supports nftables (fw4) and iptables backends
- LuCI KISS dashboard with sources/whitelist management
Evolution #2 - AbuseIPDB Reporter (luci-app-crowdsec-dashboard v0.8.0):
- New "AbuseIPDB" tab in CrowdSec Dashboard
- crowdsec-reporter.sh CLI for reporting blocked IPs
- RPCD handler luci.crowdsec-abuseipdb with 9 methods
- Cron job for automatic reporting every 15 minutes
- IP reputation checker in dashboard
Evolution #3 - Log Denoising (luci-app-system-hub v0.5.2):
- Three modes: RAW, SMART (noise ratio), SIGNAL_ONLY (filter known IPs)
- Integrates with IP Blocklist ipset + CrowdSec decisions
- RPCD methods: get_denoised_logs, get_denoise_stats
- Denoise mode selector panel with noise ratio indicator
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-20 20:11:24 +01:00
e7c9411d79
feat: Release v0.8.2 - Admin Control Center, Documentation Mirror & Docker Automation
...
This release adds major new features for SecuBox management and deployment:
## New Features
### 1. LuCI Admin Control Center (luci-app-secubox-admin)
- Unified admin dashboard for managing all SecuBox appstore plugins
- **Control Panel**: Real-time stats, system health, alerts, quick actions
- **Apps Manager**: Browse catalog, install/remove apps with search & filtering
- **App Settings**: Per-app configuration, start/stop controls
- **System Health**: Live monitoring (CPU, RAM, disk) with auto-refresh
- **System Logs**: Centralized log viewer with download capability
- Fully integrated with existing RPCD backend (luci.secubox)
- Mobile-responsive design with polished UI components
### 2. Documentation Mirror in SecuBox Bonus
- Integrated complete development documentation into luci-app-secubox-bonus
- 64+ documentation files now available offline at /luci-static/secubox/docs/
- Beautiful landing page (index-main.html) with 4 sections:
- Development guides & references
- Live module demos
- Tutorials & blog posts
- Marketing campaign pages
- Accessible locally on router without internet connection
### 3. Automated Docker Plugin Installation
- Enhanced secubox-appstore CLI with full Docker automation
- One-click installation from web UI now fully automated:
- Auto-detects Docker runtime from catalog
- Discovers and executes control scripts (*ctl install)
- Pulls Docker images automatically
- Creates directories and configures UCI
- Enables init services
- No manual CLI steps required for Docker apps
- Works for all Docker apps: AdGuard Home, Mail-in-a-Box, Nextcloud, etc.
### 4. Mail-in-a-Box Plugin
- New Docker-based email server plugin (secubox-app-mailinabox)
- Complete package with:
- UCI configuration (8 port mappings, feature flags)
- Control script (mailinaboxctl) with install/check/update/status/logs
- Procd init script with auto-restart
- Catalog manifest (category: hosting, maturity: beta)
- Network mode: host (required for mail server)
- Persistent storage: mail, SSL, data, DNS volumes
## Improvements
### Build System
- Updated local-build.sh to include luci-app-* packages from package/secubox/
- Now automatically discovers and builds luci-app-secubox-admin and similar packages
- Fixed Makefile include paths for feed structure
### Package Releases
- Incremented PKG_RELEASE for all 31 SecuBox packages
- Ensures clean upgrade path from previous versions
### Catalog Updates
- Mail-in-a-Box entry moved from "productivity" to "hosting" category
- Status changed to "beta" reflecting community Docker image maturity
- Storage requirement increased: 1024MB → 2048MB
- Added port 25 accessibility note
## Files Changed
### New Packages (2)
- package/secubox/luci-app-secubox-admin/ (12 files)
- package/secubox/secubox-app-mailinabox/ (4 files)
### Enhanced Packages (1)
- package/secubox/luci-app-secubox-bonus/ (65 new docs files)
### Modified Core (3)
- package/secubox/secubox-core/root/usr/sbin/secubox-appstore
- package/secubox/secubox-core/root/usr/share/secubox/catalog.json
- secubox-tools/local-build.sh
### All Makefiles (31 packages)
- Incremented PKG_RELEASE for clean upgrade path
## Technical Details
**Admin Control Center Architecture:**
- Frontend: 5 views (dashboard, apps, settings, health, logs)
- API: Wrapper around luci.secubox RPCD methods
- Components: Reusable UI library (cards, badges, alerts, loaders)
- Styling: Common + admin-specific CSS with responsive design
- Auto-refresh: Polling for live updates (5-30s intervals)
**Docker Automation Flow:**
```
Web UI → RPCD → secubox-appstore CLI → opkg install → *ctl install →
docker pull → directories → UCI config → init enable → ✓ Ready
```
**Access Points:**
- Admin Control: http://router/cgi-bin/luci/admin/secubox/admin/
- Documentation: http://router/luci-static/secubox/index-main.html
- Demos: http://router/luci-static/secubox/demo-*.html
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-04 08:29:31 +01:00
dd588e0520
fix(secubox): complete LuCI interface fixes - all views now functional
...
Fixed 5 major issues in SecuBox LuCI interface:
1. AppStore Empty (secubox-core v0.8.0-r3)
- Simplified get_appstore_apps RPCD method
- Removed complex error handling that was failing silently
- Added catalog.json (38 KB, 37 plugins) to Makefile installation
- Result: AppStore now displays 37 plugins in 8 categories
2. Dashboard/Components Empty (secubox-core v0.8.0-r3)
- Implemented 3 new RPCD methods:
* get_dashboard_data - Module counts and system uptime
* get_system_health - CPU, memory, disk metrics with health score
* get_alerts - System threshold alerts
- Result: Dashboard shows health score 93/100, system metrics
3. Modules View Empty (luci-app-secubox v0.7.1-r1)
- Fixed API method name mismatches in api.js:
* modules → getModules
* status → getStatus
* module_info → getModuleInfo
* health → getHealth
- Updated ACL with all new RPCD method names
- Added debug logging to modules.js
- Removed conflicting config files
- Result: 61 modules displayed with working filters
4. System Hub Components Empty (luci-app-system-hub v0.5.1-r3)
- Fixed RPCD backend call: modules → getModules
- Updated ACL to allow new SecuBox method names
- Result: 61 components displayed
5. Catalog/Profile/Template Files
- Added 39 individual plugin catalog files
- Added 5 profile JSON files (enterprise, home-office, etc.)
- Added 2 template files (firewall-zone, nginx-vhost)
- Updated Makefile to install all catalog files
Version bumps:
- secubox-core: 0.8.0-r1 → 0.8.0-r3
- luci-app-secubox: 0.7.0-r6 → 0.7.1-r1
- luci-app-system-hub: 0.5.1-r2 → 0.5.1-r3
Files modified: 13 modified, 46 added, 2 deleted
Lines of code: ~300+ added
RPCD methods: 3 added, 5 fixed
ACL files: 2 updated
Status: Production ready - all backend tests passing
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-01 18:30:58 +01:00
31a87c5d7a
feat(structure): reorganize luci-app packages into package/secubox/ + appstore migration
...
Major structural reorganization and feature additions:
## Folder Reorganization
- Move 17 luci-app-* packages to package/secubox/ (except luci-app-secubox core hub)
- Update all tooling to support new structure:
- secubox-tools/quick-deploy.sh: search both locations
- secubox-tools/validate-modules.sh: validate both directories
- secubox-tools/fix-permissions.sh: fix permissions in both locations
- .github/workflows/test-validate.yml: build from both paths
- Update README.md links to new package/secubox/ paths
## AppStore Migration (Complete)
- Add catalog entries for all remaining luci-app packages:
- network-tweaks.json: Network optimization tools
- secubox-bonus.json: Documentation & demos hub
- Total: 24 apps in AppStore catalog (22 existing + 2 new)
- New category: 'documentation' for docs/demos/tutorials
## VHost Manager v2.0 Enhancements
- Add profile activation system for Internal Services and Redirects
- Implement createVHost() API wrapper for template-based deployment
- Fix Virtual Hosts view rendering with proper LuCI patterns
- Fix RPCD backend shell script errors (remove invalid local declarations)
- Extend backend validation for nginx return directives (redirect support)
- Add section_id parameter for named VHost profiles
- Add Remove button to Redirects page for feature parity
- Update README to v2.0 with comprehensive feature documentation
## Network Tweaks Dashboard
- Close button added to component details modal
Files changed: 340+ (336 renames with preserved git history)
Packages affected: 19 luci-app, 2 secubox-app, 1 theme, 4 tools
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-01 14:59:38 +01:00