secubox-openwrt/package/secubox/secubox-app-saas-relay/files/etc/config/saas-relay
CyberMind-FR 58220065b5 feat(v0.23.0): Matrix homeserver, SaaS Relay CDN caching, Media Hub dashboard
Matrix Homeserver (Conduit):
- E2EE mesh messaging using Conduit v0.10.12 in LXC container
- matrixctl CLI: install/uninstall, user/room management, federation
- luci-app-matrix: status cards, user form, emancipate, mesh publish
- RPCD backend with 17 methods
- Identity (DID) integration and P2P mesh publication

SaaS Relay CDN Caching & Session Replay:
- CDN cache profiles: minimal, gandalf (default), aggressive
- Session replay modes: shared, per_user, master
- saasctl cache/session commands for management
- Enhanced mitmproxy addon (415 lines) with response caching

Media Services Hub Dashboard:
- Unified dashboard at /admin/services/media-hub
- Category-organized cards (streaming, conferencing, apps, etc.)
- Service status indicators with start/stop/restart controls
- RPCD backend querying 8 media services

Also includes:
- HexoJS static upload workflow and multi-user auth
- Jitsi config.js Promise handling fix
- Feed package updates

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-20 11:44:26 +01:00

138 lines
3.7 KiB
Plaintext

# SecuBox SaaS Relay Configuration
# Shared browser session proxy for team access to external services
config main 'main'
option enabled '0'
option data_path '/srv/saas-relay'
option proxy_port '8890'
option intercept_mode 'inject'
# inject = inject stored cookies, capture = capture new cookies, both = full relay
# Service definitions - external SaaS to relay
config service 'claude_ai'
option enabled '1'
option name 'Claude AI'
option emoji '🤖'
option domain 'claude.ai'
option cookie_domains 'claude.ai,.claude.ai'
option auth_required '1'
option status 'disconnected'
option last_check '0'
config service 'chatgpt'
option enabled '1'
option name 'ChatGPT'
option emoji '💬'
option domain 'chat.openai.com'
option cookie_domains 'openai.com,.openai.com,chat.openai.com'
option auth_required '1'
option status 'disconnected'
option last_check '0'
config service 'google'
option enabled '1'
option name 'Google'
option emoji '🔍'
option domain 'google.com'
option cookie_domains 'google.com,.google.com,accounts.google.com'
option auth_required '1'
option status 'disconnected'
option last_check '0'
config service 'github'
option enabled '1'
option name 'GitHub'
option emoji '🐙'
option domain 'github.com'
option cookie_domains 'github.com,.github.com'
option auth_required '1'
option status 'disconnected'
option last_check '0'
config service 'notion'
option enabled '0'
option name 'Notion'
option emoji '📝'
option domain 'notion.so'
option cookie_domains 'notion.so,.notion.so'
option auth_required '1'
option status 'disconnected'
option last_check '0'
config service 'slack'
option enabled '0'
option name 'Slack'
option emoji '💼'
option domain 'slack.com'
option cookie_domains 'slack.com,.slack.com'
option auth_required '1'
option status 'disconnected'
option last_check '0'
# Access control - which SecuBox users can use which services
config access 'default_access'
option user '*'
list services 'claude_ai'
list services 'chatgpt'
list services 'google'
list services 'github'
# Logging configuration
config logging 'logging'
option enabled '1'
option emoji_mode '1'
option log_requests '1'
option log_auth '1'
option max_entries '1000'
# CDN Cache configuration
config cache 'cache'
option enabled '1'
option storage_path '/srv/saas-relay/cache'
option max_size_mb '500'
option default_ttl '3600'
option profile 'gandalf'
# Cache profiles - configurable caching strategies
config cache_profile 'minimal'
option ttl '300'
option max_file_size_kb '100'
list content_types 'text/css'
list content_types 'application/javascript'
list content_types 'image/svg+xml'
config cache_profile 'gandalf'
option ttl '3600'
option max_file_size_kb '5000'
list content_types 'text/css'
list content_types 'application/javascript'
list content_types 'image/png'
list content_types 'image/jpeg'
list content_types 'image/gif'
list content_types 'image/webp'
list content_types 'image/svg+xml'
list content_types 'font/woff'
list content_types 'font/woff2'
list content_types 'application/font-woff'
list content_types 'application/font-woff2'
config cache_profile 'aggressive'
option ttl '86400'
option max_file_size_kb '20000'
list content_types '*'
list exclude_patterns '/api/'
list exclude_patterns '/auth/'
list exclude_patterns '/login'
list exclude_patterns '/logout'
# Session replay - share sessions across SecuBox users
config session_replay 'session_replay'
option enabled '1'
option default_mode 'shared'
# shared = all users share the same session
# per_user = each SecuBox user gets their own session copy
# master = one user authenticates, others replay
option master_user 'admin'
option session_storage '/srv/saas-relay/sessions'
option sync_interval '60'