93 lines
3.6 KiB
Markdown
93 lines
3.6 KiB
Markdown
---
|
|
title: Rauthy
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, authentication, sso, oidc, rust, idm]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Authentication, https://github.com/sebadob/rauthy]
|
|
---
|
|
|
|
# 🔐 Rauthy
|
|
|
|
> Serveur d'Identity Management écrit en Rust : simple, léger, performant, et conçu pour les homelabs qui veulent un IdM complet sans la lourdeur de Keycloak.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Attribut | Valeur |
|
|
|----------|--------|
|
|
| **Nom** | Rauthy |
|
|
| **Slug** | app-rauthy |
|
|
| **Description** | IdM simple et léger en Rust, alternative moderne à Keycloak |
|
|
| **Site officiel** | https://rauthy.io |
|
|
| **Repository** | https://github.com/sebadob/rauthy |
|
|
| **Stars** | 1 169 ⭐ |
|
|
| **Licence** | MIT |
|
|
| **Langage principal** | Rust |
|
|
| **Catégorie** | Authentication |
|
|
| **Tags** | [catalogue, authentication, sso, oidc, rust, idm] |
|
|
|
|
## 📝 Description
|
|
Rauthy est un serveur d'Identity Management (IdM) / SSO écrit en **Rust**, ce qui lui confère une empreinte mémoire très faible et d'excellentes performances. Le projet vise à offrir les fonctionnalités d'un IdM complet (OIDC, OAuth 2.0, sessions, MFA, gestion d'utilisateurs) avec une complexité opérationnelle bien moindre que Keycloak.
|
|
|
|
L'application supporte **OIDC** (Authorization Code, Client Credentials, Device Code), le **MFA** (TOTP, WebAuthn, passkeys, email), la gestion de **groupes et rôles**, l'**HIERARCHICAL groups** (très utile pour les organisations), le chiffrement des secrets au repos (AES-GCM), et fournit une **Admin UI** intégrée. Le backend supporte SQLite, PostgreSQL et le cache in-memory.
|
|
|
|
Idéal pour les homelabs exigeants qui veulent un IdM **vraiment léger** (un seul binaire Rust) sans sacrifier les fonctionnalités essentielles. L'API est bien documentée et l'UI d'admin est claire.
|
|
|
|
## 🚀 Installation
|
|
### Via Docker (recommandé)
|
|
```yaml
|
|
# docker-compose.yml
|
|
services:
|
|
rauthy:
|
|
image: ghcr.io/sebadob/rauthy:latest
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
- rauthy-data:/app/data
|
|
environment:
|
|
RAUTHY_ADMIN_EMAIL: admin@example.com
|
|
RAUTHY_ADMIN_PASSWORD: changeme
|
|
RAUTHY_LISTEN_ADDRESS: 0.0.0.0:8080
|
|
RAUTHY_ENC_KEYS_PATH: /app/data/keys
|
|
restart: unless-stopped
|
|
volumes:
|
|
rauthy-data:
|
|
```
|
|
|
|
### Installation manuelle
|
|
Télécharger le binaire depuis GitHub Releases ou compiler depuis les sources (`cargo build --release`). Binaire unique, configuration par variables d'environnement.
|
|
|
|
## ⚙️ Configuration
|
|
- **Database** : SQLite (par défaut, idéal homelab) ou PostgreSQL
|
|
- **Encryption** : clés AES-GCM générées au premier démarrage
|
|
- **OIDC clients** : enregistrement via Admin UI ou API
|
|
- **MFA** : TOTP, WebAuthn, email OTP, passkeys
|
|
- **Sessions** : stateless JWT ou stateful (configurable)
|
|
|
|
## 🔗 Alternatives
|
|
- **Keycloak** — IdM enterprise, plus complet mais plus lourd
|
|
- **authentik** — IdM moderne Python, UI soignée
|
|
- **Authelia** — reverse proxy SSO, plus limité en IdM
|
|
|
|
## 🔒 Sécurité
|
|
- Sauvegarder le volume `rauthy-data` (contient la DB et les clés)
|
|
- Activer **WebAuthn/passkeys** pour le MFA
|
|
- Mettre à jour régulièrement (le projet est actif)
|
|
- Forcer **HTTPS** via reverse proxy
|
|
|
|
## 📚 Ressources
|
|
- Site officiel : https://rauthy.io
|
|
- Repository GitHub : https://github.com/sebadob/rauthy
|
|
- Documentation : https://github.com/sebadob/rauthy#documentation
|
|
|
|
## 🔗 Pages Liées
|
|
- [[cat-authentication]]
|
|
- [[app-keycloak]] — IdM enterprise Java
|
|
- [[app-authentik]] — IdM moderne Python
|
|
- [[app-authelia]] — SSO reverse proxy
|
|
- [[app-traefik]]
|
|
- [[recettes-docker-compose]]
|
|
- [[securisation-home-lab]]
|