
Passerelle d'accès SSH auto-hébergée en Go avec authentification OIDC/LDAP, RBAC, MFA, enregistrement de session, export d'audit, chiffrement au repos, règles IP et application des politiques.
GateKeeper est une passerelle d'accès SSH auto-hébergée écrite en Go.
Elle agit comme une couche de contrôle centralisée devant SSH, fournissant le contrôle d'accès, l'application du MFA, l'enregistrement de session, l'audit et l'application des politiques --- le tout livré sous forme d'un binaire unique avec une interface web intégrée.
Aucun plan de contrôle externe. Aucune dépendance SaaS.
GateKeeper n'est pas un « bastion host » minimal traditionnel au sens classique d'une jump-box durcie.
Il s'agit plutôt d'une passerelle d'accès SSH conçue pour centraliser l'authentification, l'autorisation et l'audit pour les environnements SSH.
L'objectif est un accès contrôlé et de la visibilité --- pas un modèle d'OS durci sans service.
GateKeeper est fonctionnel et activement testé.
GateKeeper est conçu pour Linux. Linux est la plateforme de production prise en charge.
Docker est la méthode recommandée pour exécuter GateKeeper afin d'obtenir des déploiements cohérents et sécurisés.
Les builds Windows et macOS peuvent fonctionner pour le développement, mais les déploiements en production devraient utiliser Linux.
git clone https://github.com/judsenb/gatekeeper.git
cd gatekeeper
make build
./gatekeeper
Au premier lancement, ouvrez :
docker compose up -d
SQLite est la valeur par défaut. Configurez Postgres via des variables d'environnement si nécessaire.
GateKeeper utilise un fichier de configuration YAML avec des substitutions par variables d'environnement.
Variables d'environnement courantes :
Si des fichiers TLS sont présents, HTTP redirige vers HTTPS. Les certificats se rechargent automatiquement lorsqu'ils sont mis à jour.
make build
make test
make cover
make check
Les tests utilisent SQLite en mémoire. La CI exécute le linting, les tests et les vérifications de vulnérabilités.
MIT