Files
2026-06-09 18:40:21 +02:00

89 lines
3.9 KiB
Markdown

---
title: Warpgate
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, remote-access, bastion, zero-trust, ssh, mysql]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Remote+Access, https://github.com/warp-tech/warpgate]
---
# 🌐 Warpgate
> Bastion SSH/HTTP/MySQL moderne, intelligent et sans agent, basé sur une approche zero-trust.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | Warpgate |
| **Slug** | warpgate |
| **Description** | Bastion zero-trust pour SSH, HTTP et MySQL sans agent client |
| **Site officiel** | https://warpgate.warp-tech.dev |
| **Repository** | https://github.com/warp-tech/warpgate |
| **Stars** | 7 098 ⭐ |
| **Licence** | Apache-2.0 / commercial (dual) |
| **Langage principal** | Rust |
| **Catégorie** | Remote Access |
| **Tags** | [catalogue, remote-access, bastion, zero-trust, ssh, mysql] |
## 📝 Description
Warpgate est un bastion SSH/HTTP/MySQL écrit en Rust qui se place devant vos services internes pour exposer un point d'accès unique, auditable et sécurisé. Contrairement à un VPN, il fonctionne par application : l'utilisateur s'authentifie auprès de Warpgate, puis accède de manière contrôlée aux services backend sans configurer de tunnel.
Le positionnement est celui du "smart bastion" : pas besoin d'agent sur la machine cible, pas de forwarding de port à gérer, et un modèle de permissions déclaratif (rôles + targets) lisible dans un fichier TOML. Chaque session est enregistrée (logs, métadonnées) et peut être rejouée pour SSH.
Cas d'usage typiques : administrer un parc hétérogène (Linux/Windows) sans VPN, offrir un accès ponctuel à un prestataire sur une cible précise, ou centraliser l'authentification MySQL pour des développeurs.
## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
services:
warpgate:
image: ghcr.io/warp-tech/warpgate:latest
container_name: warpgate
restart: unless-stopped
ports:
- "2222:2222" # SSH
- "8443:8443" # HTTPS UI/admin
volumes:
- ./data:/data
environment:
- WARPGATE_ADMIN_PASSWORD=ChangeMe!
```
### Installation manuelle
Télécharger le binaire statique Rust depuis la page GitHub Releases, créer un utilisateur dédié `warpgate`, exécuter `warpgate setup` puis `warpgate run --config /etc/warpgate.toml`.
## ⚙️ Configuration
- Définir des **targets** (hôte + protocole + port) et des **rôles** accordant l'accès à certaines targets.
- Authentification locale ou via **OIDC / SAML** (Keycloak, Google, Azure AD).
- **Session recording** natif pour SSH (rejouable en TTY).
- Logs structurés en JSON exportables vers Loki, Elasticsearch ou un syslog distant.
- Pas d'agent : Warpgate relaie la connexion au backend.
## 🔗 Alternatives
- **Apache Guacamole** — passerelle RDP/VNC/SSH HTML5, plus polyvalente mais plus lourde.
- **Teleport** — bastion zero-trust entreprise, plus complet (RDP, Kubernetes, DB) mais payant en version advanced.
- **Cloudflared / Pangolin** — reverse tunnels avec authentification centralisée.
## 🔒 Sécurité
- Approche **zero-trust** : authentification systématique, pas de confiance implicite au réseau.
- **MFA** supportée via TOTP et OIDC (délégué à l'IdP).
- **Audit log** complet : qui s'est connecté, à quelle target, quand, combien de temps.
- Codebase Rust sans dépendance système lourde, surface d'attaque réduite.
## 📚 Ressources
- Documentation officielle : https://warpgate.warp-tech.dev/docs
- Démo en ligne : https://warpgate.warp-tech.dev/demo
- Article de présentation : https://smallstep.com/blog/warpgate-zero-trust-bastion/
## 🔗 Pages Liées
- [[cat-remote-access]]
- [[app-guacamole]] — alternative RDP/VNC/SSH HTML5
- [[app-meshcentral]] — gestion de machines distantes
- [[app-traefik]] — reverse proxy pour exposer l'UI Warpgate
- [[securisation-home-lab]]
- [[recettes-docker-compose]]