Commit Graph

3 Commits

Author SHA1 Message Date
9fd5bbd923 fix(portal): Add exec ACL for service status helper
Add file exec permissions for:
- /usr/bin/secubox-services-status
- /bin/sh

Required for fs.exec() to work in LuCI frontend.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:24:10 +01:00
cc86aa7f84 feat(portal): Add dynamic services discovery from listening ports
- Add get_services RPCD method to detect listening TCP services
- Map known ports to service names, icons, and categories
- Display clickable service cards in portal Services tab
- Services link directly to their URLs (e.g., :3000 for Gitea)
- Filter to show only externally accessible services with URLs
- Add ACL permissions for portal and admin apps

Detected services include: Gitea, HexoJS, CyberFeed, Streamlit,
HAProxy Stats, Netifyd, LuCI, Lyrion, and more.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 08:12:51 +01:00
66cbd00ceb fix(secubox-portal): Add missing ACL file for dashboard access
The 403 error was caused by missing ACL file. Added
luci-app-secubox-portal.json with read permissions for
luci.secubox and luci.system-hub ubus methods.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 09:36:20 +01:00