# Modules SecuBox - Etat d'Implementation 🌐 **Langues:** [English](../docs/module-status.md) | Francais | [δΈ­ζ–‡](../docs-zh/module-status.md) **Version:** 2.0.1 **Derniere mise a jour:** 2025-12-30 **Statut:** En phase de developpement intensif **Total des modules:** 16 **Achevement:** 100% --- ## Statistiques Rapides | Metrique | Valeur | |----------|--------| | **Total Modules** | 16 | | **Total Vues** | 112 | | **Lignes JavaScript** | 27 138 | | **Methodes RPCD** | 288 | | **Derniere Version** | v2.0.1 | | **Taux d'achevement** | 100% | --- ## Voir Aussi - **Prompts de Regeneration de Fonctionnalites:** [FEATURE-REGENERATION-PROMPTS.md](feature-regeneration-prompts.md) - **Guide d'Implementation des Modules:** [MODULE-IMPLEMENTATION-GUIDE.md](module-implementation-guide.md) - **Systeme de Build:** [CLAUDE.md](claude.md) --- ## Categories de Modules ### 1. Controle Central (2 modules) #### luci-app-secubox - **Version**: 0.6.0-1 - **Statut**: En phase de developpement intensif - **Description**: Tableau de bord principal de controle SecuBox - **Vues**: 11 (dashboard, modules, modules-minimal, modules-debug, monitoring, alerts, settings, dev-status, wizard, appstore, help) - **Lignes JavaScript**: 2 906 - **Methodes RPCD**: 33 (deuxieme plus grand backend) - **Fonctionnalites principales**: - Decouverte et gestion automatique des modules - Tableau de bord systeme unifie - Fonctionnalite d'activation/desactivation des modules - Surveillance de l'etat de sante des services - Integration du gestionnaire de paquets (opkg et apk) - Agregation unifiee des alertes - Synchronisation des parametres - Rapport d'etat de developpement - Assistant de configuration pour la premiere utilisation - Integration de la boutique d'applications pour les apps basees sur manifeste - **Integration**: Gere les 15 autres modules, detection des paquets opkg/apk - **Mises a jour recentes**: - v0.6.0: Integration complete du theme avec secubox-theme - Migration de toutes les vues pour utiliser les variables CSS (prefixe --sh-*) - Ajout du support du theme cyberpunk dans tous les fichiers CSS - Implementation du pattern Theme.init() dans toutes les vues - Systeme de theme unifie avec variantes dark/light/cyberpunk - v0.3.1: Systeme de gestion des permissions ameliore - Ajout du support du format de paquet .apk (OpenWrt 25.12+) - Logique de detection des modules amelioree #### luci-app-system-hub - **Version**: 0.3.2-1 - **Statut**: En phase de developpement intensif - **Description**: Controle et surveillance centralisee du systeme - **Vues**: 10 (overview, health, services, components, diagnostics, backup, remote, logs, settings, dev-status) - **Lignes JavaScript**: 4 454 (PLUS GRANDE implementation) - **Methodes RPCD**: 18 - **Fonctionnalites principales**: - Tableau de bord complet des informations systeme - Surveillance de sante en temps reel (CPU, memoire, disque, reseau) - Gestion des services (demarrer/arreter/redemarrer/activer/desactiver) - Diagnostics systeme et depannage - Sauvegarde/restauration de configuration - Capacites de gestion a distance - Agregation des journaux systeme avec actualisation automatique - Suivi de l'inventaire des composants - Detection de version OpenWrt - Detection d'architecture (x86, ARM, MIPS) - **Mises a jour recentes**: - v0.3.2: Widgets d'etat rapide modernises avec histogrammes et degrades - Ajout des widgets Reseau et Services aux metriques temps reel - Statistiques dynamiques de vue d'ensemble ameliorees - Visualiseur de journaux systeme fonctionnel implemente - Erreurs d'affichage HTMLCollection corrigees - **Integration**: services systemd/procd, ubus, logread, opkg/apk - **Commit**: fadf606 - "feat(system-hub): enhance dynamic overview stats for v0.3.2" --- ### 2. Securite et Surveillance (2 modules) #### luci-app-crowdsec-dashboard - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Tableau de bord CrowdSec pour l'intelligence des menaces et IPS - **Vues**: 6 (overview, alerts, decisions, bouncers, metrics, settings) - **Lignes JavaScript**: 2 089 - **Methodes RPCD**: 12 - **Fonctionnalites principales**: - Detection et blocage des menaces en temps reel - Partage collaboratif de l'intelligence de securite - Gestion des bannissements/debannissements d'IP - Support multi-bouncer (firewall, nginx, etc.) - Notation des menaces et analyse de risque - Metriques et tendances d'attaques - Detection de scenarios personnalises - Analyse geographique des menaces - **Integration**: Moteur CrowdSec, ligne de commande cscli, iptables/nftables - **Dependances**: paquet crowdsec #### luci-app-netdata-dashboard - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Surveillance systeme en temps reel avec metriques completes - **Vues**: 6 (dashboard, system, network, processes, realtime, settings) - **Lignes JavaScript**: 1 554 - **Methodes RPCD**: 16 - **Fonctionnalites principales**: - Collecte de metriques systeme en temps reel - Analyse CPU par coeur - Suivi memoire et swap - Surveillance des E/S disque - Statistiques des interfaces reseau - Suivi et gestion des processus - Moyennes de charge systeme - Graphiques et tendances historiques - **Integration**: /proc/stat, /proc/meminfo, /proc/net, utilitaires systeme - **Sources de donnees**: procfs, sysfs, netlink --- ### 3. Intelligence Reseau (2 modules) #### luci-app-netifyd-dashboard - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Inspection approfondie des paquets et classification des applications - **Vues**: 7 (overview, flows, applications, devices, talkers, risks, settings) - **Lignes JavaScript**: 1 376 - **Methodes RPCD**: 12 - **Fonctionnalites principales**: - Inspection approfondie des paquets (DPI) - Detection des protocoles applicatifs (HTTP, HTTPS, DNS, SSH, etc.) - Suivi et analyse des flux reseau - Empreinte et classification des appareils - Detection et notation des risques - Analyse des gros consommateurs de bande passante - Identification des patterns de trafic - Classification port/protocole - **Integration**: moteur DPI netifyd - **Dependances**: paquet netifyd - **Cas d'utilisation**: Analyse du trafic, optimisation de la bande passante, surveillance de securite #### luci-app-network-modes - **Version**: 0.3.5-1 - **Statut**: Pret pour la production - **Description**: Changement dynamique de mode reseau et configuration - **Vues**: 7 (overview, wizard, router, relay, accesspoint, sniffer, settings) - **Lignes JavaScript**: 2 104 - **Methodes RPCD**: 34 (PLUS GRAND backend) - **Fonctionnalites principales**: - Cinq modes reseau: - **Routeur**: WAN/LAN avec NAT et pare-feu - **Relais**: Transfert IP sans NAT - **Point d'acces**: Mode pont pour extension sans fil - **Sniffeur**: Mode surveillance reseau - **Personnalise**: Configuration definie par l'utilisateur - Detection automatique des interfaces - Sauvegarde/restauration de configuration par mode - Changement en direct sans redemarrage - Gestion des services par mode - Changement dynamique des regles de pare-feu - Changement de mode serveur/client DHCP - Automatisation du pontage d'interfaces - **Mises a jour recentes**: - v0.3.5: Deploiement automatique des proxies (Squid/TinyProxy/Privoxy), DoH, vhosts nginx, et certificats Let's Encrypt - Application automatique du WiFi avance (802.11r/k/v, band steering) et capture de paquets tcpdump par mode - **Integration**: reseau, pare-feu, DHCP, hostapd/wpa_supplicant --- ### 4. VPN et Controle d'Acces (3 modules) #### luci-app-wireguard-dashboard - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Gestion et surveillance VPN WireGuard - **Vues**: 6 (overview, peers, config, qrcodes, traffic, settings) - **Lignes JavaScript**: 1 571 - **Methodes RPCD**: 15 - **Fonctionnalites principales**: - Gestion des interfaces WireGuard - Configuration des pairs et gestion des cles - Generation de codes QR pour clients mobiles - Surveillance du trafic en temps reel par pair - Import/export de configuration - Generation automatique de paires de cles - Modes serveur et client - Validation de configuration - Gestion des IPs autorisees par pair - **Integration**: wg-tools, interface ligne de commande wg - **Dependances**: wireguard-tools, qrencode - **Clients supportes**: iOS, Android, Windows, macOS, Linux #### luci-app-client-guardian - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Controle d'acces reseau (NAC) et portail captif - **Vues**: 9 (overview, clients, zones, alerts, parental, portal, logs, captive, settings) - **Lignes JavaScript**: 2 293 (le plus grand de la categorie controle d'acces) - **Methodes RPCD**: 29 - **Fonctionnalites principales**: - Controle d'acces reseau avec workflow d'approbation - Zones de securite (LAN, Invite, Quarantaine, DMZ) - Gestion des appareils clients (approuver/bannir/mettre en quarantaine) - Controles parentaux avec filtrage d'URL - Integration du portail captif - Alertes en temps reel (notifications email/SMS) - Limitation de bande passante par zone - Restrictions d'acces basees sur le temps - Empreinte et classification des appareils - Gestion des sessions - Suivi des baux DHCP - **Integration**: nodogsplash (portail captif), iptables/arptables, DHCP, pare-feu OpenWrt - **Dependances**: nodogsplash, iptables, arptables #### luci-app-auth-guardian - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Authentification avancee et systeme de bons d'acces - **Vues**: 6 (overview, sessions, vouchers, splash, oauth, bypass) - **Lignes JavaScript**: 312 (UI minimale, oriente formulaires) - **Methodes RPCD**: 13 - **Fonctionnalites principales**: - Integration OAuth2 (Google, GitHub, Facebook, etc.) - Systeme de controle d'acces base sur les bons - Gestion et suivi des sessions - Personnalisation de la page d'accueil du portail captif - Support de l'authentification multi-facteurs - Regles de contournement d'acces - Journalisation d'audit pour les evenements d'authentification - Bons a duree limitee - Gestion de l'acces invite - **Integration**: nodogsplash, fournisseurs OAuth, configuration UCI - **Stockage**: configuration UCI, sessions JSON, bons JSON, journaux JSON --- ### 5. Bande Passante et Trafic (3 modules) #### luci-app-bandwidth-manager - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Gestion de la bande passante avec QoS et quotas - **Vues**: 9 (overview, rules, quotas, usage, clients, media, classes, schedules, settings) - **Lignes JavaScript**: 936 - **Methodes RPCD**: 14 - **Fonctionnalites principales**: - Modelage du trafic QoS (HTB, CAKE, FQ_CODEL) - Quotas et limites de donnees par client - Classification du trafic a sept priorites: - Temps reel (VoIP, jeux) - Haute priorite (videoconference) - Normal (navigation web) - Basse priorite (telechargements) - En masse (torrents, sauvegardes) - Surveillance de l'utilisation de la bande passante en temps reel - Suivi historique de l'utilisation - Detection et optimisation du streaming media - Reservation de bande passante par application - Politiques de bande passante basees sur des horaires - Automatisation de la reinitialisation des quotas - **Integration**: tc (controle du trafic), iptables, conntrack - **Commit**: fa9bb2a - "feat: complete Bandwidth Manager implementation" #### luci-app-traffic-shaper - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Modelage avance du trafic et controle QoS - **Vues**: 5 (overview, classes, rules, presets, stats) - **Lignes JavaScript**: 985 - **Methodes RPCD**: 16 - **Fonctionnalites principales**: - Support du qdisc CAKE (Common Applications Kept Enhanced) - Support HTB (Hierarchical Token Bucket) - Classes de trafic avec priorites configurables - Regles de classification basees sur les ports et protocoles - Configurations predefinie rapides: - **Gaming**: Faible latence, prioriser les ports UDP de jeu - **Streaming**: Optimiser les flux video, gestion du tampon - **Teletravail**: Prioriser VoIP et videoconference - **Equilibre**: File d'attente equitable par defaut - Statistiques de file d'attente en temps reel - Allocation de bande passante par classe - Configuration des taux de rafale et plafond - Optimisation de la latence - **Integration**: commande tc, qdiscs HTB/CAKE, marquage iptables - **Validation**: Toutes les verifications passees #### luci-app-media-flow - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Detection du trafic media et optimisation du streaming - **Vues**: 5 (dashboard, services, clients, history, alerts) - **Lignes JavaScript**: 690 (module de detection leger) - **Methodes RPCD**: 10 - **Fonctionnalites principales**: - Detection des services de streaming: - Netflix, YouTube, Spotify, Twitch, etc. - Estimation de la qualite (detection SD/HD/FHD/4K) - Suivi de l'utilisation media par client - Analyse historique de la consommation media - Categorisation des services (video, audio, jeux) - Conseils d'optimisation de la bande passante - Regles d'alerte pour streaming excessif - Integration avec bandwidth-manager pour QoS - **Integration**: moteur DPI netifyd pour la detection de protocole - **Dependances**: netifyd-dashboard --- ### 6. Performance et Services (3 modules) #### luci-app-cdn-cache - **Version**: 0.4.1-1 - **Statut**: En phase de developpement intensif - **Description**: Cache proxy CDN pour l'optimisation de la bande passante - **Vues**: 6 (overview, cache, policies, settings, maintenance, statistics) - **Lignes JavaScript**: 1 255 - **Methodes RPCD**: 27 (PLUS GRAND nombre de methodes) - **Fonctionnalites principales**: - Proxy de mise en cache HTTP/HTTPS - Politiques de cache configurables par domaine - Rapport d'economies de bande passante - Analyses du taux de succes du cache - Exclusions basees sur le domaine - Prechargement du cache pour le contenu populaire - Configuration TTL (Time-To-Live) - Gestion de la taille du cache - Purge du contenu expire - Statistiques de cache par domaine - Graphiques d'economies de bande passante - Rapport des principaux domaines par bande passante - **Infrastructure**: module proxy_cache Nginx, repertoire de cache, stats JSON - **Dependances**: nginx-full #### luci-app-vhost-manager - **Version**: 0.4.1-1 - **Statut**: En phase de developpement intensif - **Description**: Gestion des hotes virtuels et proxy inverse - **Vues**: 7 (overview, vhosts, certificates, ssl, redirects, internal, logs) - **Lignes JavaScript**: 695 - **Methodes RPCD**: 13 - **Fonctionnalites principales**: - Configuration des hotes virtuels Nginx - Gestion des certificats SSL/TLS - Support du protocole ACME (Let's Encrypt) - Configuration du proxy inverse - Redirections URL (301/302) - Authentification HTTP basique - Support proxy WebSocket - Directives nginx personnalisees - Agregation des journaux d'acces et d'erreurs - Hebergement multi-domaine - Support SNI (Server Name Indication) - **Integration**: nginx, certbot/acme.sh pour les certificats - **Dependances**: nginx-ssl, acme (optionnel) #### luci-app-ksm-manager - **Version**: 0.4.0-1 - **Statut**: En phase de developpement intensif - **Description**: Gestion des cles cryptographiques et des secrets - **Vues**: 8 (overview, keys, certificates, secrets, hsm, ssh, audit, settings) - **Lignes JavaScript**: 2 423 - **Methodes RPCD**: 28 - **Fonctionnalites principales**: - Generation de cles RSA et ECDSA (2048/4096 bits) - Gestion des certificats X.509 - Integration de Module de Securite Materiel (HSM): - Support Nitropy NK3 - Support YubiKey 5 - Gestion et deploiement des cles SSH - Stockage securise des secrets avec chiffrement - Piste d'audit complete - Politiques et automatisation de rotation des cles - Rapports de conformite (FIPS, PCI-DSS) - Demandes de signature de certificat (CSR) - Export/import de cles (formats PEM, DER) - **Support materiel**: - Nitropy NK3 (cle crypto USB-C) - Serie YubiKey 5 - **Integration**: openssl, gpg, ssh-keygen, bibliotheques HSM - **Securite**: Toutes les cles chiffrees au repos --- ### 7. IoT et Integration (1 module) #### luci-app-mqtt-bridge - **Version**: 0.5.0-1 - **Statut**: En phase de developpement intensif - **Description**: Pont MQTT IoT avec support des peripheriques USB - **Vues**: 2 (overview, adapters) - **Lignes JavaScript**: 500 (estime) - **Methodes RPCD**: 7 (oriente USB) - **Fonctionnalites principales**: - Integration du broker MQTT pour les appareils IoT - Detection et gestion des adaptateurs USB IoT - Support de 4 types d'adaptateurs: - **Zigbee**: Texas Instruments CC2531, ConBee II, Sonoff Zigbee 3.0 - **Z-Wave**: Aeotec Z-Stick Gen5/7, Z-Wave.Me UZB - **ModBus RTU**: FTDI FT232, Prolific PL2303, CH340 - **USB Serie**: Adaptateurs USB-to-serial generiques - Base de donnees VID:PID (17 appareils connus) - Detection automatique du type d'adaptateur - Scan des peripheriques USB et assistant d'import - Test et configuration du port serie - Surveillance de sante en temps reel (en ligne/erreur/manquant/inconnu) - Configuration UCI pour la persistance des adaptateurs - **Integration**: broker MQTT, sysfs USB, /dev/ttyUSB*, /dev/ttyACM* - **Mises a jour recentes**: - v0.5.0: Support complet des adaptateurs USB IoT - Ajout de la bibliotheque de detection USB avec correspondance VID:PID - Creation de la vue adapters.js pour la gestion USB - Overview.js ameliore avec statistiques des adaptateurs - Implementation de 7 nouvelles methodes RPCD pour les operations USB - **Dependances**: mosquitto (broker MQTT), materiel adaptateur USB --- ## Statistiques d'Implementation ### Metriques Globales | Module | Version | Vues | Lignes JS | Methodes | Statut | |--------|---------|------|-----------|----------|--------| | auth-guardian | 0.4.0-1 | 6 | 312 | 13 | Complet | | bandwidth-manager | 0.4.0-1 | 9 | 936 | 14 | Complet | | cdn-cache | 0.4.1-1 | 6 | 1 255 | 27 | Complet | | client-guardian | 0.4.0-1 | 9 | 2 293 | 29 | Complet | | crowdsec-dashboard | 0.4.0-1 | 6 | 2 089 | 12 | Complet | | ksm-manager | 0.4.0-1 | 8 | 2 423 | 28 | Complet | | media-flow | 0.4.0-1 | 5 | 690 | 10 | Complet | | mqtt-bridge | 0.5.0-1 | 2 | 500 | 7 | Complet | | netdata-dashboard | 0.4.0-1 | 6 | 1 554 | 16 | Complet | | netifyd-dashboard | 0.4.0-1 | 7 | 1 376 | 12 | Complet | | network-modes | 0.3.1-1 | 7 | 2 104 | 34 | Complet | | secubox | 0.6.0-1 | 11 | 2 906 | 33 | Complet | | system-hub | 0.3.2-1 | 10 | 4 454 | 18 | Complet | | traffic-shaper | 0.4.0-1 | 5 | 985 | 16 | Complet | | vhost-manager | 0.4.1-1 | 7 | 695 | 13 | Complet | | wireguard-dashboard | 0.4.0-1 | 6 | 1 571 | 15 | Complet | | **TOTAUX** | | **112** | **27 138** | **288** | **100%** | ### Distribution du Code **Par taille de module (lignes JavaScript):** 1. system-hub: 4 454 lignes (16,7%) 2. secubox: 2 906 lignes (10,9%) 3. ksm-manager: 2 423 lignes (9,1%) 4. client-guardian: 2 293 lignes (8,6%) 5. network-modes: 2 104 lignes (7,9%) **Par nombre de vues:** - Moyenne: 7,3 vues par module - Plus de vues: system-hub (10 vues) - Moins de vues: media-flow, traffic-shaper (5 vues chacun) **Par methodes RPCD:** - Moyenne: 18,7 methodes par module - Plus de methodes: network-modes (34 methodes) - Moins de methodes: media-flow (10 methodes) --- ## Statut de Validation ### Verifications Automatisees (secubox-tools/validate-modules.sh) | Verification | Statut | Details | |--------------|--------|---------| | Nommage RPCD | Reussi | Tous les scripts utilisent le prefixe `luci.*` | | Chemins de menu | Reussi | Tous les chemins correspondent aux emplacements des vues | | Fichiers de vue | Reussi | Les 110 vues sont presentes | | Permissions RPCD | Reussi | Tous les scripts executables (755) | | Permissions htdocs | Reussi | Tous les CSS/JS lisibles (644) | | Syntaxe JSON | Reussi | Tous les fichiers menu.d et acl.d valides | | Nommage ubus | Reussi | Tous les objets utilisent la bonne convention | ### Validation Specifique par Module | Module | RPCD | Menu | Vues | JSON | Global | |--------|------|------|------|------|--------| | auth-guardian | OK | OK | OK | OK | OK | | bandwidth-manager | OK | OK | OK | OK | OK | | cdn-cache | OK | OK | OK | OK | OK | | client-guardian | OK | OK | OK | OK | OK | | crowdsec-dashboard | OK | OK | OK | OK | OK | | ksm-manager | OK | OK | OK | OK | OK | | media-flow | OK | OK | OK | OK | OK | | mqtt-bridge | OK | OK | OK | OK | OK | | netdata-dashboard | OK | OK | OK | OK | OK | | netifyd-dashboard | OK | OK | OK | OK | OK | | network-modes | OK | OK | OK | OK | OK | | secubox | OK | OK | OK | OK | OK | | system-hub | OK | OK | OK | OK | OK | | traffic-shaper | OK | OK | OK | OK | OK | | vhost-manager | OK | OK | OK | OK | OK | | wireguard-dashboard | OK | OK | OK | OK | OK | **Resultat:** 16/16 modules passent toutes les verifications de validation (100%) --- ## Statut du Systeme de Build ### Workflows GitHub Actions #### 1. build-openwrt-packages.yml - **Statut**: Operationnel - **Objectif**: Construire les paquets IPK/APK pour toutes les architectures - **Architectures supportees**: 13 au total - **ARM64** (6): aarch64-cortex-a53, aarch64-cortex-a72, aarch64-generic, mediatek-filogic, rockchip-armv8, bcm27xx-bcm2711 - **ARM32** (4): arm-cortex-a7-neon, arm-cortex-a9-neon, qualcomm-ipq40xx, qualcomm-ipq806x - **MIPS** (2): mips-24kc, mipsel-24kc - **x86** (1): x86-64 - **Declencheurs**: Push vers master, pull requests, tags git - **Sortie**: Paquets .ipk (24.10) ou .apk (25.12+) specifiques a l'architecture - **Mises a jour recentes**: - Ajout du support du format de paquet .apk (OpenWrt 25.12+) - Mise a jour vers OpenWrt 24.10.5 et 25.12.0-rc1 - Ajout de la dependance ninja-build #### 2. build-secubox-images.yml - **Statut**: Operationnel - **Objectif**: Construire des images firmware completes avec SecuBox pre-installe - **Appareils cibles**: - Globalscale ESPRESSObin V7/Ultra (aarch64-cortex-a53) - Globalscale MOCHAbin (aarch64-cortex-a72) - Marvell Sheeva64 (aarch64-cortex-a53) - **Paquets inclus**: Tous les 15 modules SecuBox - **Sortie**: Images firmware (.img.gz, *-sysupgrade.bin) - **Correctifs recents**: - Correction du probleme de fichier de verrouillage opkg - Desactivation de GDB dans le toolchain - Ajout des drapeaux de generation d'image - Ajout de la dependance ninja-build #### 3. test-validate.yml - **Statut**: Operationnel - **Objectif**: Validation et tests automatises - **Verifications**: - Validation de la structure Makefile - Syntaxe JSON (menu.d, acl.d) - Validation des scripts shell (shellcheck) - Verification des permissions de fichiers - Convention de nommage RPCD - Validation des chemins de menu ### Systeme de Build Local #### secubox-tools/local-build.sh - **Version**: 2.0 (amelioree) - **Fonctionnalites**: - Construction de paquets (base SDK) - Construction de firmware (source OpenWrt complete) - Suite de validation (7 verifications automatisees) - Support multi-architecture (6 architectures) - **Commandes**: - `validate` - Executer toutes les verifications de validation - `build [module]` - Construire le(s) paquet(s) - `firmware` - Construire le firmware complet - `debug-firmware` - Configuration de debogage - `full` - Valider + construire - `clean` - Supprimer les artefacts - **Formats de paquets**: - OpenWrt 24.10 et anterieur: .ipk (opkg) - OpenWrt 25.12+ et SNAPSHOT: .apk (Alpine apk) - **Variables d'environnement**: - `OPENWRT_VERSION`: 24.10.5 (par defaut), 25.12.0-rc1, 23.05.5, SNAPSHOT - `SDK_DIR`: Repertoire de cache du SDK (par defaut: ./sdk) - `BUILD_DIR`: Sortie de build (par defaut: ./build) - `CACHE_DIR`: Cache de telechargement (par defaut: ./cache) --- ## Historique des Versions ### v2.0.0 (2025-12-28) - Version Actuelle - **Documentation**: Configuration complete de GitHub Pages et Wiki - **CI/CD**: Support complet du format de paquet .apk - **Modules**: Tous les 15 modules prets pour la production - **Validation**: 7 verifications automatisees implementees - **Architecture**: 13 plateformes supportees ### v0.3.3 (2025-12-28) - Ameliorations de la documentation - Diagrammes d'architecture ajoutes (3 diagrammes Mermaid) - References croisees entre documents - Documents historiques archives ### v0.3.2 (2025-12) - System Hub v0.3.2 avec widgets ameliores - Etat rapide modernise avec histogrammes - Ajout des widgets temps reel Reseau et Services - Visualiseur de journaux systeme ameliore ### v0.3.1 (2025-12) - SecuBox v0.3.1 avec gestion des permissions - Ameliorations de Network Modes v0.3.1 - Support des gestionnaires de paquets apk et opkg - Info de version ajoutee aux endpoints du tableau de bord ### v0.2.2 (2025-11) - Version standardisee sur 12 modules - Module Traffic Shaper complete - Ameliorations du systeme de build - Corrections de permissions ### Serie v0.1.x (2025-Q4) - Implementations initiales des modules - Standardisation de la convention de nommage RPCD - Implementation du systeme ACL - Workflows GitHub Actions --- ## Support des Architectures ### Niveau 1 - Tests Complets et Support - **x86-64**: PC, VM, routeurs bases x86 - **aarch64-cortex-a72**: MOCHAbin, Raspberry Pi 4 - **aarch64-cortex-a53**: ESPRESSObin, Sheeva64 ### Niveau 2 - Construction de Paquets Uniquement - **ARM64**: mediatek-filogic, rockchip-armv8, bcm27xx-bcm2711 - **ARM32**: cortex-a7-neon, cortex-a9-neon, ipq40xx, ipq806x - **MIPS**: 24kc, variantes mipsel ### Versions OpenWrt Supportees - **25.12.0-rc1** (derniere, cible principale) - **24.10.5** (LTS, stable) - **23.05.5** (support legacy) - **SNAPSHOT** (developpement) --- ## Activite de Developpement ### Commits Recents (2025) **Documentation** (28 Dec 2025): - 75042a8: Ajout du site de documentation GitHub Pages avec MkDocs Material - dcdbd7b: Ajout de l'automatisation de configuration GitHub Wiki et Pages - 4032834: Reorganisation de la structure de documentation et ajout de diagrammes d'architecture **System Hub** (Dec 2025): - 00f2f20: Modernisation des widgets d'etat rapide avec histogrammes et degrades - 14a5aca: Ajout des widgets Reseau et Services aux metriques temps reel - 4255a23: Ajout des styles de preferences de widgets et nouveaux degrades de widgets - f711001: Suppression des widgets dupliques et ajout d'histogrammes modernes - fadf606: Amelioration des statistiques dynamiques de vue d'ensemble pour v0.3.2 - e90cf85: Implementation du visualiseur de journaux systeme fonctionnel **SecuBox Core** (Dec 2025): - f552cf7: Ajout de la vue d'etat de developpement LuCI - a995b81: Ajout de ninja-build aux dependances CI - 72a2b29: Correction des URLs des boutons du tableau de bord des modules - c7ab10b: Support du format de paquet .apk dans les workflows - acdc7bc: Ajout des infos de version a l'endpoint de donnees du tableau de bord - c5152f5: Support des gestionnaires de paquets apk et opkg **Infrastructure** (Nov-Dec 2025): - c1669b0: Ajout du support du format de paquet .apk (OpenWrt 25.12+) - c1dd6a9: Ajout d'OpenWrt 25.12.0-rc1 et 24.10.5 aux workflows de build - 1122f84: Correction des fichiers ACL pour utiliser le nommage d'objet ubus luci.* correct - 0759c74: Ajout des fonctions API manquantes pour resoudre les erreurs de module ### Activite de Contribution - **Commits (Jan-Dec 2025)**: 30+ commits - **Lignes modifiees**: 15 000+ insertions - **Fichiers modifies**: 200+ fichiers - **Developpement actif**: En cours --- ## Problemes Connus et TODO ### Problemes Resolus - ~~client-guardian captive.js manquant~~ - Corrige en v0.2.2 - ~~Incoherences de nommage RPCD~~ - Corrige en v0.1.3 - ~~Incoherences de chemins de menu~~ - Corrige en v0.1.2 - ~~Erreurs de permissions~~ - Script de correction automatique cree - ~~Echecs de build sur OpenWrt 25.12~~ - Support apk ajoute ### Ameliorations Futures **Priorite 1 - Deploiement en Production**: 1. Tests materiel sur toutes les plateformes supportees 2. Suite de benchmarking de performance 3. Tests d'integration entre modules 4. Tests de charge pour scenarios multi-utilisateurs **Priorite 2 - Fonctionnalites**: 1. Support multi-langue (i18n) 2. Integration d'application mobile (API REST) 3. Systeme de notification email/SMS 4. Sauvegarde automatisee vers stockage cloud 5. Place de marche/depot de modules **Priorite 3 - Documentation**: 1. Tutoriels video pour chaque module 2. Demos interactives 3. Documentation API (OpenAPI/Swagger) 4. Organigrammes de depannage --- ## Guide de Deploiement ### Pre-Installation **Configuration Systeme Requise**: - OpenWrt 23.05+ ou 24.10+ (recommande) - Architecture: x86-64, ARM64, ARM32, ou MIPS - Stockage: 50Mo minimum pour tous les modules - RAM: 128Mo minimum (256Mo recommande) **Verification des Dependances**: ```bash # Installer les dependances de base opkg update opkg install luci luci-base rpcd rpcd-mod-ubus uhttpd # Dependances optionnelles (par module) opkg install crowdsec netdata netifyd wireguard-tools nodogsplash nginx ``` ### Methodes d'Installation #### Methode 1: Gestionnaire de Paquets (Recommande) ```bash # OpenWrt 24.10 et anterieur (opkg) opkg update opkg install luci-app-secubox luci-app-system-hub # OpenWrt 25.12+ (apk) apk update apk add luci-app-secubox luci-app-system-hub ``` #### Methode 2: Installation Manuelle ```bash # Telecharger depuis GitHub Releases wget https://github.com/CyberMind-FR/secubox-openwrt/releases/download/v2.0.0/luci-app-secubox_*.ipk # Installer opkg install luci-app-secubox_*.ipk # Redemarrer les services /etc/init.d/rpcd restart /etc/init.d/uhttpd restart ``` #### Methode 3: Images Firmware - Telecharger les firmwares pre-construits depuis GitHub Releases - Flasher sur le materiel supporte (ESPRESSObin, MOCHAbin, etc.) - Tous les modules SecuBox pre-installes ### Post-Installation ```bash # Verifier l'installation opkg list-installed | grep luci-app- # Acceder au tableau de bord SecuBox # Naviguer vers: http://192.168.1.1/cgi-bin/luci/admin/secubox # Activer les modules # Utiliser le tableau de bord SecuBox -> Modules -> Activer les modules souhaites ``` ### Validation ```bash # Tester les backends RPCD ubus list | grep luci. # Tester les services /etc/init.d/rpcd status /etc/init.d/uhttpd status # Verifier les permissions ./secubox-tools/validate-modules.sh ``` --- ## Maintenance ### Taches Regulieres **Quotidien**: - Surveiller la sante du systeme via system-hub - Examiner les alertes de securite dans crowdsec-dashboard - Verifier l'utilisation de la bande passante dans bandwidth-manager **Hebdomadaire**: - Mettre a jour les listes de paquets: `opkg update` - Examiner les journaux dans system-hub - Sauvegarder la configuration via system-hub **Mensuel**: - Mettre a jour les paquets: `opkg upgrade` - Examiner et faire la rotation des journaux - Tester la fonctionnalite de sauvegarde/restauration - Audit de securite via les metriques crowdsec ### Depannage **Problemes Courants**: 1. **Module n'apparait pas dans le menu** - Verifier les permissions ACL: `/usr/share/rpcd/acl.d/luci-app-*.json` - Redemarrer rpcd: `/etc/init.d/rpcd restart` - Vider le cache du navigateur 2. **Erreurs RPC (Object not found)** - Verifier le script RPCD: `/usr/libexec/rpcd/luci.*` - Verifier les permissions: `chmod 755 /usr/libexec/rpcd/luci.*` - Tester ubus: `ubus call luci.module method` 3. **Service ne demarre pas** - Verifier les dependances: `opkg list-installed` - Examiner les journaux: `logread` - Verifier la configuration: `uci show module` **Outils de Debogage**: - `./secubox-tools/validate-modules.sh` - Validation complete - `./secubox-tools/secubox-debug.sh ` - Diagnostics de module - `./secubox-tools/secubox-repair.sh` - Reparation automatique des problemes courants - `ubus call luci.module status` - Tester le backend RPC --- ## Processus de Release ### Numerotation des Versions - **Majeur.Mineur.Patch** (Versionnement Semantique) - Exemple: v2.0.0 - Majeur: Changements cassants, mises a jour architecturales - Mineur: Nouvelles fonctionnalites, ajouts de modules - Patch: Corrections de bugs, documentation ### Checklist de Release 1. **Pre-Release**: - [ ] Executer la validation complete: `./secubox-tools/validate-modules.sh` - [ ] Mettre a jour la version dans tous les Makefiles - [ ] Mettre a jour DOCS/MODULE_STATUS.md - [ ] Tester sur le materiel cible - [ ] Construire les paquets localement: `./secubox-tools/local-build.sh build` - [ ] Examiner le CHANGELOG 2. **Release**: - [ ] Creer le tag git: `git tag -a v2.0.0 -m "Release 2.0.0"` - [ ] Pousser le tag: `git push origin v2.0.0` - [ ] Attendre la fin des GitHub Actions - [ ] Verifier le telechargement des artefacts 3. **Post-Release**: - [ ] Telecharger et tester les paquets - [ ] Mettre a jour le site de documentation - [ ] Annoncer sur les canaux du projet - [ ] Creer une GitHub Release avec les notes --- ## Ressources ### Documentation - **DEVELOPMENT-GUIDELINES.md** - Reference complete de developpement - **QUICK-START.md** - Guide de reference rapide - **CLAUDE.md** - Systeme de build et architecture - **VALIDATION-GUIDE.md** - Procedures de validation des modules - **PERMISSIONS-GUIDE.md** - ACL et permissions - Fichiers README.md de module dans chaque repertoire `luci-app-*/` ### Outils - `secubox-tools/validate-modules.sh` - Validation complete (7 verifications) - `secubox-tools/fix-permissions.sh` - Correction automatique des permissions - `secubox-tools/secubox-repair.sh` - Reparation automatique des problemes courants - `secubox-tools/secubox-debug.sh` - Diagnostics de module - `secubox-tools/local-build.sh` - Systeme de build local ### Ressources en Ligne - **Depot GitHub**: https://github.com/CyberMind-FR/secubox-openwrt - **GitHub Pages**: https://gkerma.github.io/secubox-openwrt/ - **GitHub Wiki**: https://github.com/CyberMind-FR/secubox-openwrt/wiki - **Demo en Direct**: https://secubox.cybermood.eu --- ## Licence **Tous les modules**: Licence Apache 2.0 --- ## Mainteneur **Projet SecuBox** CyberMind.fr GitHub: @gkerma --- ## Resume **SecuBox v2.0.0** est une suite complete et prete pour la production de 15 applications LuCI OpenWrt fournissant des capacites completes de securite, surveillance et gestion reseau. **Realisations cles**: - 100% d'achevement de l'implementation (110 vues, 26 638 lignes JS, 281 methodes RPC) - Couverture de validation complete (7 verifications automatisees) - Support multi-architecture (13 plateformes) - Support dual format de paquet (opkg .ipk et apk .apk) - Documentation complete (GitHub Pages + Wiki) - Teste et deploye en production **Prochaine etape**: v2.1.0 avec tests d'integration ameliores et support d'application mobile. --- *Derniere mise a jour: 2025-12-28 par analyse automatisee du depot*