
Gateway di accesso SSH self-hosted in Go con autenticazione OIDC/LDAP, RBAC, MFA, registrazione delle sessioni, esportazione dei log di audit, cifratura dei dati at-rest, regole IP e applicazione delle policy.
GateKeeper è un gateway di accesso SSH self-hosted scritto in Go.
Agisce come livello di controllo centralizzato davanti a SSH, fornendo controllo degli accessi, applicazione dell'MFA, registrazione delle sessioni, auditing e applicazione delle policy --- il tutto distribuito come un singolo binario con una web UI integrata.
Nessun control plane esterno. Nessuna dipendenza SaaS.
GateKeeper non è un tradizionale "bastion host" minimale nel senso classico di jump-box irrobustita.
È invece un gateway di accesso SSH progettato per centralizzare autenticazione, autorizzazione e auditing per ambienti SSH.
L'obiettivo è l'accesso controllato e la visibilità --- non un modello di OS irrobustito a zero servizi.
GateKeeper è funzionante e attivamente testato.
GateKeeper è pensato per Linux. Linux è la piattaforma di produzione supportata.
Docker è il modo consigliato per eseguire GateKeeper per distribuzioni coerenti e sicure.
Le build per Windows e macOS possono funzionare per lo sviluppo, ma le distribuzioni in produzione dovrebbero usare Linux.
git clone https://github.com/judsenb/gatekeeper.git
cd gatekeeper
make build
./gatekeeper
Al primo avvio, apri:
docker compose up -d
SQLite è il default. Configura Postgres tramite variabili d'ambiente se necessario.
GateKeeper usa un file di configurazione YAML con override tramite variabili d'ambiente.
Variabili d'ambiente comuni:
Se i file TLS sono presenti, HTTP reindirizza a HTTPS. I certificati si ricaricano automaticamente quando aggiornati.
make build
make test
make cover
make check
I test usano SQLite in-memory. La CI esegue linting, test e controlli di vulnerabilità.
MIT