5.5 KiB
5.5 KiB
title: Defguard created: 2026-06-06 updated: 2026-06-06 type: app tags: [catalogue, 2FA, VPN, identity-management, security, rust] confidence: high contested: false sources: [https://selfh.st/apps/?tag=2FA, https://github.com/DefGuard/defguard]
🔐 Defguard
Solution VPN + SSO + 2FA tout-en-un pour entreprises. Stack complet d'identité et d'accès réseau, basé sur WireGuard.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | defguard.net |
| GitHub | DefGuard/defguard |
| License | Custom (source-available, gratuit) |
| Langage | Rust (backend), React (frontend) |
| Étoiles GitHub | 3k ⭐ |
| Dernière MAJ | 2026-06-05 |
| Catégorie | [[cat-2fa |
| Note | Pas 100% OSI-open, mais source-available |
📝 Description
Defguard est un bundle entreprise qui combine en une seule plateforme :
- VPN WireGuard : gestion centralisée des peers, clés, configurations
- SSO / SAML / OIDC : authentification unique
- 2FA / MFA : TOTP, WebAuthn, YubiKey
- Gestion d'utilisateurs : LDAP-like intégré
- Admin UI web : interface moderne pour gérer le tout
- API REST : intégrations tierces
Public cible : PME/ETI qui veulent remplacer un stack complexe (WireGuard + Auth0 + 2FA séparé) par une solution unifiée.
Différence avec WireGuard seul : WireGuard est juste le protocole VPN. Defguard ajoute la couche de gestion (qui a accès à quoi, comment il s'authentifie).
🚀 Installation
Option 1 : Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
defguard:
image: ghcr.io/defguard/defguard:latest
container_name: defguard
restart: unless-stopped
environment:
- DEFGUARD_URL=https://defguard.example.com
- DEFGUARD_LOG_LEVEL=INFO
- DATABASE_URL=postgres://defguard:***@db:5432/defguard
- REDIS_URL=redis://redis:6379
- SECRET_KEY=*** - COOKIE_DOMAIN=defguard.example.com
- COOKIE_SECURE=true
- JWT_SECRET=*** - RUST_LOG=info
volumes:
- defguard-data:/app/data
depends_on:
- db
- redis
labels:
- "traefik.enable=true"
- "traefik.http.routers.defguard.rule=Host(`defguard.example.com`)"
- "traefik.http.routers.defguard.entrypoints=websecure"
- "traefik.http.routers.defguard.tls.certresolver=letsencrypt"
- "traefik.http.services.defguard.loadbalancer.server.port=8000"
networks:
- proxy
db:
image: postgres:15
container_name: defguard-db
restart: unless-stopped
environment:
- POSTGRES_USER=defguard
- POSTGRES_PASSWORD=*** - POSTGRES_DB=defguard
volumes:
- defguard-db:/var/lib/postgresql/data
networks:
- proxy
redis:
image: redis:7
container_name: defguard-redis
restart: unless-stopped
networks:
- proxy
volumes:
defguard-data:
defguard-db:
networks:
proxy:
external: true
Option 2 : WireGuard integration
Defguard gère uniquement la couche d'auth et de config. Le serveur WireGuard réel doit être installé séparément (sur la machine ou via un module kernel) :
# Installation WireGuard (Debian/Ubuntu)
sudo apt install wireguard
# Defguard s'occupera de :
# - Générer les clés
# - Pousser la config aux clients
# - Gérer les peer entries
⚙️ Configuration Initiale
- Lancer les conteneurs (Docker Compose ci-dessus)
- Accéder à l'UI sur
https://defguard.example.com - Créer le premier admin via l'UI
- Configurer votre serveur WireGuard (adresse IP publique, port, sous-réseau)
- Importer un réseau WireGuard dans Defguard
- Créer des utilisateurs ou connecter un LDAP/Active Directory
- Activer le 2FA (TOTP, WebAuthn)
- Distribuer le client Defguard aux utilisateurs
🔄 Alternatives
Open Source
- WireGuard seul (sans couche de gestion)
- Headscale — Serveur Tailscale open-source
- NetBird — Alternative à WireGuard avec UI
- Pritunl — VPN open-source avec interface
Comparaison Defguard vs autres
| Critère | Defguard | Headscale | NetBird | Pritunl |
|---|---|---|---|---|
| VPN | WireGuard | WireGuard | WireGuard | OpenVPN/WireGuard |
| UI intégrée | ✅ Complète | ⚠️ Basique | ✅ Moderne | ✅ Complète |
| SSO/SAML | ✅ | ❌ | ✅ | ✅ |
| 2FA intégré | ✅ | ❌ | ✅ | ✅ |
| Gestion users | ✅ | ❌ | ✅ | ✅ |
| Licence | Custom | BSD-3 | LGPL-3 | Source-available |
Verdict : Defguard est le plus complet pour une entreprise. Pour un usage perso, Headscale ou NetBird sont plus simples.
Propriétaires (ce que Defguard remplace)
- Tailscale Business — 6$/user/mois
- Cloudflare Tunnel + Access
- Okta + Cisco AnyConnect — Très cher
- Palo Alto GlobalProtect — Très cher
🔐 Sécurité
- WireGuard : crypto state-of-the-art (Curve25519, ChaCha20)
- 2FA : TOTP, WebAuthn, YubiKey
- SSO : SAML 2.0, OIDC
- Audit log complet
- Code source auditable : publié sur GitHub
📚 Ressources
Pages Liées
- cat-2fa — Catégorie 2FA
- cat-vpn — Catégorie VPN
- vpn — Concept VPN
- zero-trust — Modèle Zero Trust
- oauth-2 — Protocole d'autorisation