Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
zttp — Proxy bastion SSH à confiance zéro avec gestion des clés basée sur Vault, application des politiques RBAC, enregistrement complet des sessions et interface TUI d’administration pour un accès auditable à l’infrastructure de production. | Kitploit
Outils/GitLabGitLab/nihal799/zttp
Authentification et AutorisationSécurité de l'Infrastructure CloudOutils DéfensifsSécurité RéseauDevSecOpsGestion des Identités et des Accès (IAM)
GitLabnihal799/zttp

zttp

Proxy bastion SSH à confiance zéro avec gestion des clés basée sur Vault, application des politiques RBAC, enregistrement complet des sessions et interface TUI d’administration pour un accès auditable à l’infrastructure de production.

Voir le dépôt
111il y a 12 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

ZTTP : Proxy bastion SSH Zero-Trust

🔗 Miroirs du projet : GitHub | GitLab

ZTTP est un proxy bastion SSH Zero-Trust auto-hébergé et durci, écrit en Golang, avec gestion des clés assurée par HashiCorp Vault, application des politiques RBAC, enregistrement complet des sessions et une TUI d'administration interactive — conçu pour les équipes qui ont besoin d'un accès auditable et zero-trust à leur infrastructure de production.


Table des matières

  • Pourquoi ZTTP
  • Vue d'ensemble de l'architecture
  • Points forts
  • Prérequis
  • Démarrage rapide — Serveur
  • Démarrage rapide — Client
  • Configuration
  • Rôles et politique RBAC
  • Console d'administration
  • Journaux d'audit et enregistrements de sessions
  • Compilation depuis les sources
  • Référence du Makefile
  • Captures d'écran et démo
  • Structure du projet
  • Modèle de sécurité
  • Contribuer
  • Licence

Pourquoi ZTTP

Les équipes d'ingénierie modernes ont besoin d'un moyen de donner aux développeurs le minimum d'accès nécessaire à l'exercice de leurs fonctions — ni plus, ni moins. La distribution traditionnelle de clés SSH est source d'erreurs : les clés sont partagées, oubliées sur des ordinateurs portables et révoquées des jours trop tard.

Le proxy SSH ZTTP résout ce problème en agissant comme l'unique porte zero-trust vers votre infrastructure :

ProblèmeSolution ZTTP
Clés SSH partagées sur les ordinateurs portablesLes clés résident uniquement dans HashiCorp Vault — jamais sur disque
Aucune visibilité sur qui a fait quoiChaque frappe est enregistrée au format .ttyrec
Accès global à la productionLe moteur de politiques basé sur les rôles applique des règles par environnement
Aucun moyen d'arrêter une session activeUn point de terminaison gRPC kill-switch met fin à toute session en cours
Accès opaque pour les auditeursTUI d'administration avec relecture des sessions, journaux texte et journaux des actions d'administration

Vue d'ensemble de l'architecture

Developer Laptop
      │
      │  zttp
      │  (Under the hood: SSH over port 2224)
      ▼
┌─────────────────────────────────────────────────────────┐
│                     ZTTP Proxy                          │
│                                                         │
│  ① Auth Gate     — bcrypt/Argon2id login TUI           │
│  ② RBAC Engine   — environment-aware policy check      │
│  ③ Vault Fetch   — ephemeral SSH key retrieval         │
│  ④ Bridge        — transparent TCP tunnel              │
│  ⑤ Audit Writer  — ttyrec frame recorder               │
└──────────┬──────────────────────────────────────────────┘
           │  ssh (private IP, ephemeral key)
           ▼
     Target Server

Services d'infrastructure (Docker Compose) :

ServiceObjectif
zttp-proxyLe proxy bastion SSH ZTTP principal (binaire Golang)
zttp-postgresBase de données du plan de contrôle (utilisateurs, serveurs, politiques RBAC)
zttp-vaultHashiCorp Vault — stocke les clés privées SSH
zttp-nginxSert les installateurs CLI à l'adresse /release/
zttp-init-auditConteneur à exécution unique qui corrige les permissions des volumes

Fonctionnalités principales

  • 🔐 Authentification zero-trust — TUI de connexion SSH interactive avec hachage des mots de passe bcrypt, limitation du débit et verrouillage du compte après 5 tentatives échouées
  • 🛡️ Moteur de politiques RBAC — Contrôle d'accès par rôle et par environnement avec un seul JOIN PostgreSQL optimisé (sans allers-retours)
  • 🗝️ Clés SSH stockées dans Vault — Les clés privées ne touchent jamais le disque ; récupérées de manière éphémère à chaque session depuis HashiCorp Vault
  • 📹 Enregistrement complet des sessions — Toutes les sessions sont enregistrées au format .ttyrec avec des trames horodatées
  • 🖥️ TUI d'administration interactive — Interface terminal complète pour la gestion des utilisateurs, l'enregistrement des serveurs, l'attribution des accès et la consultation des journaux
  • 🔍 Visionneuse de journaux d'audit — Parcourez les sessions par serveur, rejouez les enregistrements ou lisez les journaux texte directement depuis la console d'administration
  • ⚡ Kill Switch — Point de terminaison gRPC pour terminer instantanément toute session active
  • 📋 Journal des actions d'administration — Chaque action administrative (création d'utilisateur, attribution d'accès, consultation des journaux) est consignée dans une piste d'audit persistante
  • 🌍 Client multiplateforme — CLI en binaire unique pour Linux, macOS (amd64/arm64) et Windows

Prérequis

Serveur (hôte proxy) :

  • Docker ≥ 24 et Docker Compose ≥ 2.20
  • Une IP publique ou accessible sur le LAN sur le port 2224
  • make (facultatif, mais recommandé)

Développeur (client) :

  • N'importe quel client SSH (commande ssh)
  • Une machine Linux, macOS ou Windows

Démarrage rapide — Serveur

1. Cloner le dépôt

git clone https://gitlab.com/Nihal799/zttp.git
cd zttp

2. Configurez votre environnement

cp .env.example .env

Modifiez .env et définissez au minimum :

PROXY_NODE_IP=<your-server-public-ip>
POSTGRES_PASSWORD=<a-strong-password>
VAULT_TOKEN=<a-strong-vault-token>

⚠️ Ne validez jamais votre fichier .env. Il est listé dans .gitignore.

3. Démarrer tous les services

make docker-up
# or directly:
docker compose -f deploy/docker-compose.yml up -d --build

4. Vérifier que les services sont opérationnels

make docker-ps
curl http://localhost:8080/healthz

5. Compiler et publier les installateurs CLI

make release PROXY_ADDR=<your-server-ip>:2224

Cela compile de manière croisée les clients pour toutes les plateformes et met automatiquement à jour dist/install.sh et dist/install.ps1 avec l'URL du serveur correcte. Le conteneur Nginx sert ces fichiers à l'adresse http://<your-server-ip>:8555/.


Démarrage rapide — Client

Linux / macOS

curl -fsSL http://<proxy-ip>:8555/install.sh | bash

Windows (PowerShell, exécuter en tant qu'administrateur)

irm http://<proxy-ip>:8555/install.ps1 | iex

Connexion

Une fois installé, connectez-vous à la passerelle ZTTP :

zttp
# or directly:
ssh -p 2224 <your-username>@<proxy-ip>

Vous serez accueilli par un écran de connexion au terminal. Après authentification, vous verrez une liste des serveurs auxquels vous êtes autorisé à accéder.


Configuration

Toute la configuration se fait via des variables d'environnement (ou un fichier .env). Consultez .env.example pour la référence complète.

Télécharger l’outil