SUPERFICIE API · /api
authlogin · register · stats
feedfeed · feed/pending · approve · reject
threatssh/ingest · campaigns · fail2ban/ban
wifiwifi/ingest · wifi
trackerevent · stats · visitors · briefing
usb / prohwkey/{issue,login,bind,revoke} · license/{nonce,verify} · my-vault
enterpriseissue · heartbeat · list · revoke · status
graceioc · contribute · iocs
growthlead · leads · summit/{visitor,visitors,export,status}
media / nettts/piper · ping · trace · dns · market/assess
MODELLO DATI · orioneye.db
usersauth_eventsuser_avatars
postsssh_threatswifi_aps
track_eventshardware_keysenterprise_licences
grace_iocsleadssummit_visitors
SQLite via better-sqlite3. Nel piano Pro lo stesso schema (ssh_threats, wifi_aps) vive cifrato nel vault locale, servito in memoria dal daemon.
FRONTEND · src/
shellmap/*feedcampaigns
sshthreatswifigraceomni
market · assessconsoletrackpresenceauth
DAEMON LOCAL-FIRST · Python
:—usb-agent.py — rileva la chiave, login passwordless, apre il browser (#omni)
:8770vault-daemon — decifra vault.db.enc (AES-256-GCM) in memoria, loopback API
:8771grace.py — struttura i log, cross-check community, risponde col BYO-LLM
:—licensing_client.py — fingerprint, heartbeat firmato, grace period
Solo stdlib + cryptography. cacert.pem è impacchettato sulla chiavetta: TLS verificato senza nulla installato sul PC del cliente.
INFRASTRUTTURA & SICUREZZA
edgenginx — TLS termination, static + reverse proxy
runtimeNode zero-framework · PM2 · SQLite
authJWT HS256 · scrypt · rate-limit · isFeedAdmin (owner id 1)
pkiOwner CA EC prime256v1 (root-only) — firma cert client + licenze ECDSA
vaultAES-256-GCM · chiave = sha256(fingerprint cert + JWT_SECRET)
mailPostfix + Dovecot — notifiche lead (SPF/DKIM)