Profils - CyberMind-FR/secubox-deb GitHub Wiki
À quoi ça sert. Choisir ce qu'on installe sur une machine : secubox-lite (protection), secubox-isp (lite + opérateur + hébergement) ou secubox-full (isp + tout le contenu du Hall). Un profil est un méta-paquet : il ne contient rien lui-même, il tire d'autres paquets par ses dépendances.

Deux notions se croisent : le niveau (ce que la machine peut porter selon sa mémoire) et le profil (ce qu'on installe).
| lite | standard | pro | |
|---|---|---|---|
| Mémoire visée | 2 Go | 4 à 8 Go | 8 Go et plus |
| Machine type | ESPRESSObin | Raspberry Pi 400, boîtes 4 Go | MOCHAbin |
| Analyse du trafic (DPI) | en miroir, léger | en miroir | en ligne |
| Conteneurs LXC | non | oui | oui |
| Swap | 512 Mo | aucun | aucun |
Les profils s'emboîtent : isp = lite + opérateur + hébergement, full = isp + le Hall. Chaque module est dans un seul profil (un test de composition le vérifie) ou déclaré hors profil.
secubox-lite |
secubox-isp |
secubox-full |
|
|---|---|---|---|
| Rôle | Tous les modules de protection, aucun service hébergé | Protection + réseau d'opérateur + hébergement | isp + tout ce que présente le Hall |
| Hérite de | — | secubox-lite |
secubox-isp |
| Famille | Modules | Profil |
|---|---|---|
| Socle | core, aggregator, system, hardening, premier-pas, profiles, health, appstore, config-advisor, hub, portal, auth | lite |
| Provisionnement et interface locale | autoload-agent, console (TUI) | lite |
| Pare-feu, WAF, trafic | waf-ng (sbxwaf), ipblock, toolbox-ng, toolbox, dpi, ndpid-engine, interceptor |
lite |
| Filtrage DNS et réseau | dns, dns-guard, ad-guard, webfilter, haproxy, routes, qos, nac, ipv6guard, wan-link-guard, netmodes, freebox, certs, tor, wireguard | lite |
| Détection et SOC | security-posture, threats, threatmesh, cookies, soc | lite |
| Données | vault, backup, annuaire | lite |
| Opérateur | modem, cdn, saas-relay, reality, p2p, federation, mesh, metrics | isp |
| Hébergement | mail, matrix, socialrelay, billets, nextcloud, gitea, metablogizer, bbs, messagerie, metanews | isp |
| Le Hall | webos, sbxos, sbxos-audio-mood, surf, ephemeride, avatar, repo, assist | full |
| Assistant et voix | zia, voice, radio, podcaster | full |
| Médias | peertube, jellyfin, ytsas, media, photoprism, lyrion | full |
| Domotique, IA | mqtt, picobrew, ai-gateway, streamlit | full |
Sources : packages/secubox-lite|isp|full/debian/control et scripts/tests/test_profils_composition.py. Les deux jeux de listes (Depends, Recommends) sont comptés ; wireguard-tools est recommandé par les trois profils.
Les onglets du SOC encadrent les pages d'autres modules : sans eux l'onglet est vide. secubox-soc dépend donc de secubox-waf-ng (pages /waf, avec Actor Intelligence), de secubox-dpi (page /dpi) et de secubox-webos (page /actor-intelligence). Le profil lite les porte ainsi, avec leurs propres dépendances, même si secubox-webos n'est listé directement que dans secubox-full.
L'interface locale a deux moitiés, présentes dans tous les profils depuis secubox-lite 1.7.0 :
| Partie | Quand elle démarre |
|---|---|
| Kiosque WebUI | seulement si la sentinelle /var/lib/secubox/.kiosk-enabled existe (condition d'unité : une box sans écran n'échoue pas) |
Console TUI (secubox-console) |
partie headless : sur tty1, uniquement quand le kiosque est absent ou désactivé |
Un module absent des profils reste installable à la main (apt install secubox-<module>) ; le profil fixe seulement la base d'une image neuve.
| Cas | Modules |
|---|---|
| Optionnel, à la demande |
secubox-jitsi (visioconférence : conteneur LXC à provisionner ; seulement suggéré par full). secubox-photoprism est dans full, pas dans isp (#2322) : il échouait à chaque démarrage d'une image isp. |
| Matériel ou usage particulier | eye-remote, rbs-sensor, led-heartbeat, meshtastic, daemon-c3box, voice-moteur, zia-llm, zkp, clamav, netboot, vm, soc-agent, ui-manager, daemon |
| Infrastructure, jamais sur une box cliente |
secubox-autoload (serveur d'atelier Auto-Load) ; seul son agent est dans lite |
| Recommandé |
secubox-sentinelle-gsm (lite) : publié en arm64 seulement, donc jamais en dépendance dure, pour que full s'installe sur amd64 |
Avant de bâtir une image, scripts/verify-profile.sh <lite|isp|full> résout récursivement la chaîne Depends du profil et refuse le profil si un module référencé :
- n'existe pas comme paquet buildable (
packages/secubox-<m>), ou - n'est pas dans
image/profiles/working-set.gk2.txt(services activés sur la box de référence + catalogue des applications LXC).
Ainsi un module non fini ou désactivé ne peut pas entrer dans une image. Conséquence pratique : tout ajout à lite, isp ou full exige aussi une ligne au working-set (entrée manuelle commentée). Un oubli a fait échouer sept images sur le tag alpha.11 (#2285). Ne régénérez pas le fichier à l'aveugle avec scripts/snapshot-working-set.sh : un relevé pris pendant que des modules dorment en retire des lignes et invalide les trois profils.
Autres gardes du test de composition : contraintes de version satisfaisables, aucun paquet retiré, commentaires du control en colonne zéro, tout module de l'arbre placé dans un profil ou déclaré hors profil.
Sur une machine de 2 Go, les listes de blocage DNS restent celles par défaut, petites, avec un seul profil de blocage. Un puits DNS de production de plus de 650 000 zones occupe environ 295 Mo, et chaque configuration de blocage distincte de webfilter ajoute environ 100 Mo : à réserver aux niveaux standard et pro.
Tableau complet, glossaire et prompt de vulgarisation : docs/PROFILS-COMPARATIF.md.
Installation-FR · Live-USB-FR · Operations-APT-Repository-FR · Operations-Release-Process-FR · Operations-Runbook-FR · MODULES-FR