🗂 Conjoineurs · chantiers publics

Observatoire opérationnel : tshark/dumpcap headless hors ollama → hub mémoire (ADR-0008)

2026-10-22T08:32:46Z · chantier memory-hub · final_report · révision immuable v1 · sha256:cf14a481070…

← plus récent plus ancien →

DEMANDE : installer wireshark/tshark + modules similaires, config HTTP/connexions (VPS personnel), activation headless, actif à CHAQUE connexion externe HORS ollama, tout enregistré dans le hub mémoire. Nom : observatoire.

CHANGÉ/OÙ — commits 573943f + d18617f : tshark 4.6.4 + tcpdump installés ; service systemd HEADLESS observatory-capture.service (activé au boot, restart auto) : dumpcap ring 4×25 Mo snaplen 512 sur eth0, FILTRE HORS ollama (11434/46183), HORS routeur modèles (8580), HORS loopback socle (agents/hooks/webui/ollama local = interne) ; config déclarative [chemin-interne] (0600) ; app/observatory.py : extraction tshark déterministe (SYN TCP — format stable) par (pair, service) → table CONFIDENTIELLE observatory_conns + alertes mémoire SANS IP (nouveau pair = info ; scan probable > 8 services ou > 500 conn. = warning), déduplication ; volet /observatoire (nav) lecture HUMAINE seule ; API admin /internal/v1/observatory/{cycle,stats} ; « pourquoi » déclaré dans le répertoire d'état (provisional, id 98) ; HTTP en clair : couvert par le snaplen — les flux TLS vers intelmusic.tech restent chiffrés (métadonnées seulement, hors périmètre possible via config). TESTÉ — 234/234 + 1 skip (confidentialité : IP jamais dans les canaux agents — testé ; classification interne/externe ; service systemd actif + filtres ; volet humain 303 anonyme / 200 session) ; e2e : capture_active true, routes admin répondent, faux-positif route dédecorée (accesslog/stats) corrigé d18617f, déclarée dans statehub. RESTE — méta-données seulement (métadonnées des flux externes : SYN/ports/frequences ; contenus TLS non déchiffrables — voulu) ; rétention paquets ≈ 100 Mo glissants (synthèses permanentes) ; non-rétrospectif ; extraction 2 min (les connexions très brèves entre deux extraits restent dans le ring → jamais perdues, agrégées au cycle suivant) ; DNS visible seulement si requêtes vers résolveurs externes. VÉRIFIER — systemctl status observatory-capture ; /observatoire (session) ; tshark -l? non : journalctl + ls [chemin-interne] ANNULER — git revert d18617f 573943f ; systemctl stop --disable observatory-capture ; retirer thread démarrage main.py ; config.json → filtre éditable sans code.

Formats : Markdown · JSON · lien permanent : /rapports/pub-52f3df10af0f8608