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>
232 lines
6.0 KiB
Plaintext
232 lines
6.0 KiB
Plaintext
config client-guardian 'config'
|
|
option enabled '1'
|
|
option default_policy 'quarantine'
|
|
option quarantine_zone 'quarantine'
|
|
option scan_interval '30'
|
|
option auto_approve '0'
|
|
option portal_enabled '1'
|
|
option portal_url '/cgi-bin/client-guardian-portal'
|
|
option session_timeout '3600'
|
|
option log_level 'info'
|
|
|
|
# Alert Configuration
|
|
config alerts 'alerts'
|
|
option enabled '1'
|
|
option new_client_alert '1'
|
|
option banned_attempt_alert '1'
|
|
option quota_exceeded_alert '1'
|
|
option suspicious_activity_alert '1'
|
|
|
|
config email 'email'
|
|
option enabled '0'
|
|
option smtp_server 'smtp.gmail.com'
|
|
option smtp_port '587'
|
|
option smtp_user ''
|
|
option smtp_password ''
|
|
option smtp_tls '1'
|
|
option from_address 'guardian@router.local'
|
|
list recipients ''
|
|
|
|
config sms 'sms'
|
|
option enabled '0'
|
|
option provider 'twilio'
|
|
option api_key ''
|
|
option api_secret ''
|
|
option from_number ''
|
|
list recipients ''
|
|
|
|
# Network Zones
|
|
config zone 'lan_private'
|
|
option name 'LAN Privé'
|
|
option description 'Réseau local de confiance'
|
|
option network 'lan'
|
|
option color '#22c55e'
|
|
option icon 'home'
|
|
option internet_access '1'
|
|
option local_access '1'
|
|
option inter_client '1'
|
|
option bandwidth_limit '0'
|
|
option time_restrictions '0'
|
|
option content_filter 'none'
|
|
|
|
config zone 'iot'
|
|
option name 'IoT'
|
|
option description 'Objets connectés isolés'
|
|
option network 'iot'
|
|
option color '#f59e0b'
|
|
option icon 'cpu'
|
|
option internet_access '1'
|
|
option local_access '0'
|
|
option inter_client '0'
|
|
option bandwidth_limit '10'
|
|
option time_restrictions '0'
|
|
option content_filter 'none'
|
|
|
|
config zone 'kids'
|
|
option name 'Enfants'
|
|
option description 'Accès filtré pour enfants'
|
|
option network 'lan'
|
|
option color '#06b6d4'
|
|
option icon 'child'
|
|
option internet_access '1'
|
|
option local_access '1'
|
|
option inter_client '1'
|
|
option bandwidth_limit '50'
|
|
option time_restrictions '1'
|
|
option content_filter 'kids'
|
|
option schedule_start '08:00'
|
|
option schedule_end '21:00'
|
|
list schedule_days 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' 'sun'
|
|
|
|
config zone 'guest'
|
|
option name 'Invités'
|
|
option description 'Accès Internet limité'
|
|
option network 'guest'
|
|
option color '#8b5cf6'
|
|
option icon 'users'
|
|
option internet_access '1'
|
|
option local_access '0'
|
|
option inter_client '0'
|
|
option bandwidth_limit '25'
|
|
option time_restrictions '0'
|
|
option content_filter 'adult'
|
|
option session_duration '7200'
|
|
option portal_required '1'
|
|
|
|
config zone 'quarantine'
|
|
option name 'Quarantaine'
|
|
option description 'Clients non approuvés'
|
|
option network 'quarantine'
|
|
option color '#ef4444'
|
|
option icon 'shield-alert'
|
|
option internet_access '0'
|
|
option local_access '0'
|
|
option inter_client '0'
|
|
option bandwidth_limit '1'
|
|
option portal_required '1'
|
|
option portal_only '1'
|
|
|
|
config zone 'blocked'
|
|
option name 'Bloqué'
|
|
option description 'Clients bannis'
|
|
option network 'null'
|
|
option color '#1f2937'
|
|
option icon 'ban'
|
|
option internet_access '0'
|
|
option local_access '0'
|
|
option inter_client '0'
|
|
|
|
# Content Filters
|
|
config filter 'kids_filter'
|
|
option name 'Filtre Enfants'
|
|
option type 'whitelist'
|
|
list categories 'education' 'kids' 'games_safe'
|
|
list blocked_categories 'adult' 'violence' 'gambling' 'drugs' 'weapons'
|
|
option safe_search '1'
|
|
option youtube_restricted '1'
|
|
|
|
config filter 'adult_filter'
|
|
option name 'Filtre Adulte'
|
|
option type 'blacklist'
|
|
list blocked_categories 'malware' 'phishing' 'illegal'
|
|
option safe_search '0'
|
|
|
|
config filter 'strict_filter'
|
|
option name 'Filtre Strict'
|
|
option type 'whitelist'
|
|
list allowed_domains ''
|
|
option block_all_else '1'
|
|
|
|
# URL Lists
|
|
config urllist 'whitelist_global'
|
|
option name 'Liste Blanche Globale'
|
|
option type 'whitelist'
|
|
list urls 'google.com'
|
|
list urls 'wikipedia.org'
|
|
list urls 'education.gouv.fr'
|
|
|
|
config urllist 'blacklist_global'
|
|
option name 'Liste Noire Globale'
|
|
option type 'blacklist'
|
|
list urls ''
|
|
|
|
# Parental Schedules
|
|
config schedule 'school_hours'
|
|
option name 'Heures Scolaires'
|
|
option enabled '0'
|
|
option action 'block'
|
|
option start_time '08:00'
|
|
option end_time '16:00'
|
|
list days 'mon' 'tue' 'wed' 'thu' 'fri'
|
|
|
|
config schedule 'night_block'
|
|
option name 'Blocage Nocturne'
|
|
option enabled '1'
|
|
option action 'block'
|
|
option start_time '22:00'
|
|
option end_time '07:00'
|
|
list days 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' 'sun'
|
|
|
|
config schedule 'weekend_limit'
|
|
option name 'Limite Weekend'
|
|
option enabled '0'
|
|
option action 'quota'
|
|
option daily_quota '180'
|
|
list days 'sat' 'sun'
|
|
|
|
# Captive Portal Configuration
|
|
config portal 'portal'
|
|
option enabled '1'
|
|
option title 'Bienvenue sur le Réseau'
|
|
option subtitle 'Veuillez vous identifier pour accéder à Internet'
|
|
option logo '/luci-static/client-guardian/logo.png'
|
|
option background_color '#0f172a'
|
|
option accent_color '#ef4444'
|
|
option require_terms '1'
|
|
option terms_url '/client-guardian/terms.html'
|
|
option auth_method 'password'
|
|
option guest_password 'guest2024'
|
|
option allow_registration '1'
|
|
option registration_approval '1'
|
|
option show_bandwidth_info '1'
|
|
option custom_css ''
|
|
|
|
# Example Known Clients
|
|
config client 'client_example1'
|
|
option name 'PC Bureau Papa'
|
|
option mac 'AA:BB:CC:DD:EE:01'
|
|
option zone 'lan_private'
|
|
option status 'approved'
|
|
option first_seen '2024-12-01 10:00:00'
|
|
option last_seen '2024-12-20 15:30:00'
|
|
option notes 'Ordinateur principal'
|
|
option static_ip '192.168.1.10'
|
|
|
|
config client 'client_example2'
|
|
option name 'Tablette Enfant'
|
|
option mac 'AA:BB:CC:DD:EE:02'
|
|
option zone 'kids'
|
|
option status 'approved'
|
|
option first_seen '2024-12-05 14:00:00'
|
|
option last_seen '2024-12-20 14:00:00'
|
|
option daily_quota '120'
|
|
option notes 'Tablette de Marie'
|
|
|
|
config client 'client_example3'
|
|
option name 'Caméra Salon'
|
|
option mac 'AA:BB:CC:DD:EE:03'
|
|
option zone 'iot'
|
|
option status 'approved'
|
|
option first_seen '2024-11-15 09:00:00'
|
|
option notes 'Caméra IP Xiaomi'
|
|
option static_ip '192.168.1.50'
|
|
|
|
config client 'client_banned'
|
|
option name 'Intrus Détecté'
|
|
option mac 'AA:BB:CC:DD:EE:99'
|
|
option zone 'blocked'
|
|
option status 'banned'
|
|
option first_seen '2024-12-18 03:00:00'
|
|
option ban_reason 'Tentative intrusion'
|
|
option ban_date '2024-12-18 03:05:00'
|