Retour à l'accueil

Warpgate pour l'accès SSH avec SSO et IaC

L'article décrit la migration d'Ansible/jump-host vers Warpgate pour un accès SSH centralisé. Intégration SSO Keycloak, IaC Terraform, audit sans agents sur les serveurs. Avantages pratiques pour les environnements multi-projets.

Warpgate : bastion avec SSO au lieu des jump-hosts
Advertisement 728x90

Gestion centralisée des accès SSH avec Warpgate, SSO et IaC

Dans des environnements avec plusieurs infrastructures isolées gérées par une équipe d'ingénierie partagée, l'approche traditionnelle consistant à distribuer des clés SSH via des playbooks Ansible sur plus de 100 machines virtuelles devient un goulet d'étranglement. L'accès était lié à la possession de clés plutôt qu'aux rôles d'entreprise, entraînant un onboarding manuel, des retards dans la révocation des permissions et des maux de tête pour les audits. La nouvelle configuration exploite Warpgate comme proxy transparent avec SSO et RBAC pour un contrôle d'accès automatisé — sans agents sur les serveurs.

Limites principales de l'approche legacy

La gestion manuelle des utilisateurs via Ansible créait des points de douleur majeurs :

  • Pas d'intégration SSO : le statut d'entreprise n'influençait pas l'accès.
  • Exécutions manuelles de playbooks pour les changements de projet.
  • Retards dans la révocation : les hôtes hors ligne gardaient des clés obsolètes.
  • Journaux d'audit décentralisés dispersés sur les serveurs.

Exigences pour un remplaçant : intégration SSO d'entreprise, gestion déclarative IaC, résilience Kubernetes et support sans agent pour SSH/HTTPS/DB/K8s.

Google AdInline article slot

Fonctionnalités de Warpgate

Warpgate est un bastion host open source qui proxyfie les connexions après authentification des utilisateurs et vérification des rôles. Il supporte OIDC SSO, 2FA, enregistrement de sessions et audit de commandes. Il fonctionne sans modifier les ressources cibles et propose une interface web pour l'historique des connexions.

Comparaison avec les alternatives

| Fonctionnalité | Warpgate | Jump Host | VPN | Teleport |

|---------|----------|-----------|-----|----------|

Google AdInline article slot

| Liaison précise aux services | ✅ | Non | Non | ✅ |

| Pas de client requis | ✅ | Non | Non | ✅ |

| 2FA | ✅ | PAM | Variable | ✅ |

Google AdInline article slot

| SSO | ✅ | PAM | Variable | Payant |

| Audit de commandes | ✅ | Non | Non | ✅ |

| Enregistrement de sessions | ✅ | Non | Non | ✅ |

| Connexions non interactives | ✅ | Limité | ✅ | Wrapper |

| Auto-hébergé | ✅ | ✅ | Variable | SaaS |

Avantages pour les setups multi-projets : pas de coûts de licence, configuration IaC et scalabilité fluide.

Architecture avec Keycloak et Terraform

Intégration SSO

Le fournisseur OIDC Keycloak mappe les groupes aux rôles Warpgate. Exemple warpgate.yaml :

sso_providers:
  - name: keycloak
    label: "Connexion avec Keycloak"
    auto_create_users: true
    provider:
      type: custom
      client_id: warpgate
      client_secret: $OIDC_CLIENT_SECRET
      issuer_url: $ISSUER_URL
      scopes: ["openid", "email"]
      role_mappings:
        '/teams/devops/warpgate-admin': 'warpgate:admin'
        '/teams/devops/project-A': 'project-A'
        '/teams/devops/project-B': 'project-B'

Le groupe /teams/devops/project-A donne accès aux ressources du Projet A. Les changements Keycloak prennent effet instantanément.

IaC avec le provider Terraform

Terraform définit les rôles, ressources et gateways. Structure : Warpgate racine + dossiers par projet. Pour les réseaux internes, utilisez un Warpgate interne comme gateway. Cela reste déclarative pour plus de 100 VMs, sans ajustements manuels dans l'UI.

Déploiement Kubernetes avec replicas élimine les points de défaillance uniques.

Limites et compatibilité

Warpgate ne remplace pas totalement Ansible : les VMs ont besoin d'un utilisateur technique unique pour les connexions proxyfiées. Les permissions d'ingénierie sont appliquées au bastion — pas de clés personnelles sur les hôtes. Il scale sans effort vers de nouveaux projets sans playbooks.

Changements pratiques

  • Onboarding : Ajout au groupe Keycloak.
  • Révocation : Suppression du groupe.
  • Audit : Journaux de sessions centralisés.
  • Scaling : Multi-tenant sans risques d'accès orphelins.

Réduit la charge opérationnelle de 80 % sur la gestion d'accès.

Points clés à retenir

  • Accès basé sur rôles via SSO, sans agents sur serveurs.
  • Config Terraform déclarative pour 100+ ressources.
  • Enregistrement complet de sessions et audit au niveau commande.
  • Auto-hébergé, sans licence, prêt pour Kubernetes.
  • Proxy pour SSH/HTTPS/DB/K8s avec support non interactif.

— Editorial Team

Advertisement 728x90

Lire ensuite