Description
2FAuth est une application web qui vous permet de gérer vos codes 2FA depuis n'importe quel navigateur, sans dépendre d'une app mobile spécifique.
Fonctionnalités :
- Interface web responsive (utilisable sur mobile aussi)
- Multi-utilisateurs avec authentification intégrée
- Organisation par groupes et tags
- Icônes auto-détectées pour les services connus
- Import depuis Google Authenticator, Aegis, etc.
- API REST pour les intégrations
- OAuth2/OIDC pour le login externe
- WebAuthn pour la sécurisation du compte
- Mode hors-ligne (PWA)
Installation
Via Docker Compose (recommandé)
services:
2fauth:
image: 2fauth/2fauth:latest
container_name: 2fauth
restart: unless-stopped
environment:
- APP_NAME=2FAuth
- APP_ENV=production
- APP_KEY=base64:VOTRE_CLE_32_CHARS_ICI=
- APP_URL=https://2fa.example.com
- DB_CONNECTION=sqlite
- DB_DATABASE=/var/www/html/database/2fauth.sqlite
- SESSION_LIFETIME=120
volumes:
- 2fauth-data:/var/www/html/database
- 2fauth-logs:/var/www/html/storage/logs
volumes:
2fauth-data:
2fauth-logs:
Avec MySQL (production)
services:
2fauth:
image: 2fauth/2fauth:latest
container_name: 2fauth
restart: unless-stopped
environment:
- APP_URL=https://2fa.example.com
- DB_CONNECTION=mysql
- DB_HOST=db
- DB_PORT=3306
- DB_DATABASE=2fauth
- DB_USERNAME=2fauth
- DB_PASSWORD=*** depends_on:
- db
volumes:
- 2fauth-data:/var/www/html/storage
db:
image: mariadb:10.11
container_name: 2fauth-db
restart: unless-stopped
environment:
- MARIADB_DATABASE=2fauth
- MARIADB_USER=2fauth
- MARIADB_PASSWORD=*** - MARIADB_RANDOM_ROOT_PASSWORD=*** volumes:
- 2fauth-db:/var/lib/mysql
volumes:
2fauth-data:
2fauth-db:
Configuration
- Générer une APP_KEY :
docker run --rm 2fauth/2fauth:latest php artisan key:generate --show - Lancer le conteneur avec cette clé
- Créer le premier compte via l'UI
- Configurer SMTP pour la récupération de mot de passe
- Importer vos codes 2FA existants
Alternatives
Open Source
- Ente Auth — Mobile/desktop natif, chiffré E2E
- Vaultwarden — Inclut 2FA dans le gestionnaire de mots de passe
- Aegis (Android) — Populaire, local-only
Propriétaires
- Google Authenticator — Pas de sync, pas chiffré
- Authy — Demande un numéro de téléphone
- Microsoft Authenticator — Tracking Microsoft
Sécurité
- Chiffrement des secrets 2FA au repos (chiffrement Laravel)
- WebAuthn et TOTP pour sécuriser l'accès à 2FAuth lui-même
- Session timeout configurable
- HTTPS obligatoire en production
- 100% self-hosted, pas de tracking
