
Zero-Trust SSH CA
Ephemera è un'autorità di certificazione SSH leggera e auto-ospitata, progettata per imporre l'accesso Zero-Trust per le infrastrutture. Sostituisce le chiavi SSH statiche con certificati a breve durata, integra l'autenticazione MFA WebAuthn basata su hardware e mantiene registri di audit crittograficamente verificabili.
[!NOTE] Fonte Canonica: Codeberg
Mirror GitHub: GitHub (per disponibilità e hosting)
graph LR
subgraph Client["Utente (Operatore)"]
SSH["Client SSH"]
HW["Chiave Hardware<br/>WebAuthn / YubiKey"]
end
subgraph Auth["Confine di Autenticazione"]
MFA["WebAuthn MFA<br/><i>Presenza umana richiesta</i>"]
OIDC["OIDC<br/><i>Opzionale</i>"]
end
subgraph CA["Ephemera Autorità di Certificazione SSH"]
CORE["CA auto-ospitata<br/>Capace di air-gap"]
POLICY["Motore delle Policy<br/><i>Governance al rilascio</i>"]
BUDGET["Budget di Fiducia<br/><i>Opzionale</i>"]
end
subgraph Targets["Server di Destinazione"]
NATIVE["OpenSSH nativo<br/>TrustedUserCAKeys"]
NOAGENT["Nessun agente<br/>Nessun proxy SSH"]
end
subgraph Audit["Audit e Recupero"]
LOG["Registro Audit<br/>A prova di manomissione"]
BACKUP["Backup Crittografati<br/>Recupero Shamir"]
end
Client --> Auth
Auth -->|"Certificato a breve durata"| CA
CA -->|"Il certificato scade<br/>automaticamente"| Targets
CA -.->|"Integrità post-fatto"| Audit
style Auth fill:#e8f5e9,stroke:#2e7d32
style CA fill:#e3f2fd,stroke:#1565c0
style Audit fill:#fff3e0,stroke:#ef6c00
Cosa fa Ephemera: Governa chi può ricevere accesso e per quanto tempo.
Cosa NON fa Ephemera: Monitoraggio in esecuzione, proxy MITM, ispezione dei comandi.
Applicazione: Interamente all'interno di OpenSSH nativo — nessun agente Ephemera sui server di destinazione.
Rotazione delle chiavi: Non necessaria — i certificati scadono automaticamente.
Ephemera è un'autorità di certificazione SSH auto-ospitata basata sulle funzionalità native di OpenSSH. Sostituisce le chiavi SSH a lunga durata con certificati a breve durata emessi just-in-time, con presenza fisica esplicita ed escalation dei privilegi verificabile.
È progettato per team che desiderano una governance SSH centralizzata senza proxy MITM, protocolli personalizzati o dipendenze cloud.
Funzionalità principale CA SSH: Pronto per la produzione
Budget di Fiducia: Sperimentale (opt-in, soggetto a modifiche)
Le funzionalità sperimentali sono chiaramente isolate e disabilitate per impostazione predefinita.
L'SSH tradizionale si basa su chiavi private a lunga durata distribuite su laptop e server. Una volta che una chiave perde, l'accesso persiste fino a quando non la si scopre e la si ruota ovunque. Ephemera sostituisce le chiavi statiche con certificati a breve durata che scadono automaticamente, riducendo la finestra di utilizzo improprio da mesi a minuti.
Accesso Just-in-Time : I certificati scadono in pochi minuti (default 5m), riducendo la finestra di opportunità per credenziali rubate.
Applicazione WebAuthn : Il rilascio del certificato richiede interazione MFA fisica (FIDO2) tramite YubiKey o TouchID.
Recupero Sovrano : I backup crittografati sono protetti tramite Shamir's Secret Sharing, richiedendo un quorum per il ripristino.
Audit Verificabile : Tutte le azioni della CA sono registrate in un registro a catena Merkle per una cronologia a prova di manomissione.
RBAC Granulare : Un motore di policy basato su YAML definisce l'accesso in base a ruoli, risorse e condizioni.

Ephemera include un primitivo di governance sperimentale e opt-in chiamato Budget di Fiducia (Trust Budgeting).
Il Budget di Fiducia limita l'autorità privilegiata cumulativa al momento del rilascio del certificato, trattando l'accesso come una risorsa finita e visibile. Ogni rilascio di certificato consuma un budget esplicito. Quando il budget è esaurito, il rilascio normale si ferma fino a quando il budget non viene ripristinato o viene utilizzato un percorso di emergenza separato (break-glass).
Questo meccanismo:
Il Budget di Fiducia è sperimentale e potrebbe cambiare o essere rimosso.
Documentazione: docs/trust_budgeting.md
Ephemera include GateBridge, un sistema di valutazione ombra che convalida le decisioni delle policy rispetto a un motore alternativo (Gate0) senza influenzare il comportamento di produzione.
policy-shadow.log)Ogni voce contiene: