Projet open source
authelia/authelia avatar
authelia/authelia

Authelia : portail SSO et MFA pour applications web derrière un reverse proxy

Le portail multifacteur à authentification unique pour les applications Web, désormais OpenID Certified™

28 977 étoiles1 482 forksGoApache-2.0

En bref

De quoi s’agit-il ?
Le serveur d'authentification Go authelia/authelia (28 728 étoiles, Apache-2.0) ajoute double facteur et single sign-on devant nginx, Traefik ou Caddy, avec une certification OpenID couvrant cinq profils OP.
À qui s’adresse-t-il ?
Authelia s'adresse aux administrateurs qui auto-hébergent des applications derrière nginx, Traefik, Caddy ou HAProxy et veulent ajouter SSO et double facteur sans changer leurs applications ; il demandera plus d'efforts à ceux qui veulent un fournisseur d'identité géré clé en main.
Puis-je l’utiliser commercialement ?
Oui. Apache-2.0 est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Le dépôt a reçu de nouveaux commits au cours des dernières 24 heures.
En quel langage est-il écrit ?
Principalement Go, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 15 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Un serveur d'authentification Go qui autorise, refuse ou redirige les requêtes

Authelia se décrit comme un serveur d'authentification et d'autorisation open source fournissant une authentification à deux facteurs et un single sign-on pour vos applications via un portail web. Son rôle privilégié reste celui de compagnon de reverse proxy : il laisse passer, bloque ou redirige les requêtes selon les règles. Le projet, écrit en Go, affiche 28 728 étoiles, 1 473 forks et 132 tickets ouverts, sur une branche master poussée le 26 mai 2026. La chaîne d'intégration s'appuie sur Buildkite, la couverture Codecov, le badge CII Best Practices du projet 7128, l'OpenSSF Scorecard, SLSA et le Go Report Card du module v4. Le support communautaire passe par Discord et Matrix, le financement par OpenCollective. Le portail propose des thèmes clair et sombre et un écran de choix entre les méthodes de second facteur, ce qui en fait la pièce visible du dispositif pour les utilisateurs finaux.

OpenID Certified sur cinq profils OP, avec une offre encore étiquetée bêta

Authelia est certifiée OpenID Certified pour les profils Basic OP, Implicit OP, Hybrid OP, Form Post OP et Config OP du protocole OpenID Connect, et fonctionne aussi comme serveur OAuth 2.0. Le README assume une nuance : cette offre figure toujours sur la feuille de route comme bêta, tout en étant jugée complète et bien implémentée, la certification couvrant l'ensemble des cinq profils. Concrètement, une application qui sait parler OpenID Connect peut déléguer sa connexion au portail sans passer par un reverse proxy, ce qui ouvre l'intégration aux logiciels qui supportent nativement le protocole. Le guide d'intégration OpenID Connect 1.0 du site authelia.com détaille le statut de certification et les réglages des clients. Pour un administrateur, la conséquence pratique est qu'un même serveur sert à la fois les applications legacy protégées par proxy avec en-têtes, et les applications modernes branchées en OIDC direct.

Second facteur : clés FIDO2, TOTP et pousses Duo, plus passkeys sans mot de passe

Les méthodes de second facteur couvrent trois familles. Les clés de sécurité FIDO2 WebAuthn du type YubiKey, le mot de passe à usage unique basé sur le temps avec les applications d'authentification compatibles, et les notifications pousses mobiles via Duo. L'authentification sans mot de passe existe aussi, via WebAuthn avec des passkeys, ce qui permet de se connecter au seul appareil de déverrouillage. Le README ajoute la réinitialisation de mot de passe avec vérification d'identité par courriel de confirmation, et la restriction d'accès après trop de tentatives d'authentification invalides, deux mécanismes qui relèvent du socle attendu d'un portail d'entreprise mais restent rares dans les outils d'auto-hébergement. La politique se règle par règle d'accès : une même instance peut exiger un seul facteur sur une application interne de lecture, et deux facteurs sur la console d'administration, avec en sus le support de l'authentification basique pour les points de terminaison protégés par la politique à un facteur.

Règles d'accès affinées par sous-domaine, groupe, URI, méthode et réseau

Le contrôle d'accès d'Authelia repose sur des règles qui croisent des critères précis : sous-domaine, utilisateur, appartenance à un groupe, URI de la requête, méthode HTTP et réseau d'origine. Chaque règle choisit entre politique à un facteur et à deux facteurs, ce qui permet de moduler la friction selon la sensibilité du service visé. Ce modèle par règles s'applique aussi bien en mode proxy, où Authelia répond aux demandes ForwardAuth du serveur frontal, qu'en mode fournisseur OpenID Connect où les scopes et claims gouvernent l'accès. La compatibilité proxy est listée nommément : nginx, Traefik, Caddy, Skipper, Envoy et HAProxy. Traefik fonctionne sans configuration additionnelle grâce au middleware ForwardAuth, Caddy via la directive forward_auth, et LinuxServer maintient une configuration soignée dans son conteneur SWAG accompagnée d'un guide de mise en place. Ce choix d'être un composant du périmètre réseau plutôt qu'une usine à identités explique en partie sa popularité auprès des auto-hébergeurs.

Paquets AUR, APT et FreeBSD, bundles docker compose Local et Lite, Helm en bêta

L'installation couvre un spectre large : paquets AUR (authelia, authelia-bin, authelia-git), dépôt APT stable pour Debian sur apt.authelia.com, FreeBSD Ports, binaire statique ou paquet .deb depuis les releases GitHub, conteneur Docker, et déploiement Kubernetes. Le déploiement Kubernetes peut passer par le chart Helm hébergé sur charts.authelia.com, encore étiqueté bêta, qui s'appuie sur les contrôleurs d'ingress ; les contrôleurs documentés vont d'ingress-nginx aux IngressRoute Traefik, en passant par Istio et Envoy Gateway. Pour démarrer, deux bundles docker compose servent de points de départ : le bundle Local pour tester sans exposer le serveur, avec des domaines définis dans le fichier hosts local et des certificats auto-signés, et le bundle Lite pour un serveur exposé sur Internet, avec DNS à configurer et certificats générés par Let's Encrypt. Les deux demandent une personnalisation, aucun n'est prêt pour la production tel quel.

Haute disponibilité par base distante et Redis, rythme de releases et licence

Pour les montées en charge, le README décrit une haute disponibilité obtenue avec une base de données distante et Redis comme magasin clé-valeur hautement disponible, ce qui distingue plusieurs instances Authelia derrière un même frontal. Le rythme de maintenance est visible dans les releases : v4.39.18 le 10 avril, v4.39.19 le 12 avril, puis v4.39.20 le 26 mai 2026, une cadence de correctifs régulière sur la branche 4.39. La licence Apache-2.0 autorise l'usage commercial, la modification et la redistribution, avec la réserve habituelle sur les mentions de provenance. Le site authelia.com centralise la documentation, la feuille de route et le guide de démarrage. Pour évaluer le projet sur pièce, le chemin le plus court reste le bundle Local : le lever, se connecter au portail avec le compte d'exemple, enregistrer une passkey, puis lire la configuration générée pour comprendre le couplage ForwardAuth avant de reproduire le schéma sur votre propre proxy.

Conclusion éditoriale

Authelia s'adresse aux administrateurs qui auto-hébergent des applications derrière nginx, Traefik, Caddy ou HAProxy et veulent ajouter SSO et double facteur sans changer leurs applications ; il demandera plus d'efforts à ceux qui veulent un fournisseur d'identité géré clé en main. Avant d'adopter, déployez le bundle docker compose Local avec ses certificats auto-signés sur un réseau interne, testez le second facteur WebAuthn avec votre propre clé, puis consultez la release v4.39.20 du 26 mai 2026 et la licence Apache-2.0.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté