Vous utilisez Dolibarr pour la comptabilité, la gestion commerciale, les stocks ou les ressources humaines ? Découvrez comment sécuriser votre instance avec l’authentification à deux facteurs (2FA) et comment organiser votre travail pour gagner du temps au quotidien.
1. Pourquoi la 2FA est indispensable dans un environnement de production
| Risque sans 2FA | Impact potentiel | Bénéfice de la 2FA |
|---|---|---|
| Accès non autorisé via un mot de passe volé ou deviné | Fuite de données clients, factures, stocks | Ajoute une couche de vérification (code, appli, clé) |
| Conformité RGPD / exigences légales | Sanctions, perte de confiance | Traçabilité des connexions, audit simplifié |
| Difficulté à faire évoluer les procédures de sécurité | Charge supplémentaire pour l’équipe IT | Sécurité « built‑in » qui s’adapte aux besoins de chaque collaborateur |
En bref : la 2FA réduit de plus de 90 % les risques liés aux mots de passe tout en offrant une expérience utilisateur fluide.
2. Activer la 2FA sur Dolibarr
2.1. Choisir le bon module
| Module | Méthode d’authentification | Installation | Particularités |
|---|---|---|---|
| 2FA (Dolibarr Addons) | TOTP (Google Authenticator, Authy) | Plugin officiel (dolibarr-addons) |
Simple, compatible avec toutes les versions ≥ 12 |
| OpenID Connect | Authentification via fournisseur externe (Google, Azure AD) | Nécessite configuration du serveur OAuth | Idéal en SSO multi‑applications |
| YubiKey / FIDO2 | Clé physique ou authentificateur de sécurité | Plugin spécifique (ex. yubikey) |
Solution sans smartphone, très résistante au phishing |
Recommandation production : installer le plugin 2FA – TOTP car il est stable, aucune dépendance externe et intégration native dans le formulaire de connexion.
2.2. Étapes d’installation (via le menu « Modules > Extensions »)
- Télécharger le plugin
wget https://github.com/Dolibarr/dolibarr-addons/releases/download/v12.0.0/2fa_totp-12.0.0.tgz - Décompresser « `bash
tar -xzf 2fa_totp-12.0.0.tgz -C /chemin/dolibarr/htdocs/ - Activer le module
Menu → Modules → Extensions → 2FA – TOTP → Enable. -
Configurer la politique
- Force 2FA :
Obligatoirepour les comptes rôles “admin”, “comptable”, etc. - Exemption : utilisateurs “guest” ou “demo” peuvent rester en simple mot de passe.
- Récupération : définir un nombre de codes de secours (ex. 5 codes imprimés).
- Force 2FA :
-
Enrôlement des utilisateurs
- À la première connexion, le système affiche un QR Code et la clé secrète.
- Scannez le QR Code avec Google Authenticator, Authy ou tout autre app TOTP.
- Saisissez le code à 6 chiffres pour valider l’enrôlement.
- Tester
- Déconnectez‑vous, reconnectez‑vous : vous devez saisir mot de passe + code TOTP.
Astuce : créez un groupe de test avec 2‑3 employés avant le déploiement complet. Profitez‑en pour affiner les messages d’erreur et la procédure de récupération.
3. Bonnes pratiques pour gagner du temps en production
3.1. Centraliser les secrets de configuration- Fichier unique de configuration (/conf/dolibarr.conf) : répertoriez les paramètres 2FA ($txt['2fa_enable'], $txt['2fa_secret']).
- Versionner le fichier avec Git (ou autre VCS) pour éviter les dérives manuelles.
- Automatisez le déploiement via Ansible ou Docker‑Compose : le plugin se télécharge toujours à la même version stable.
# Exemple de snippet Docker‑Compose
services:
dolibarr:
image: dolibarr/dolibarr:latest
volumes:
- ./conf:/srv/dolibarr/conf
- ./addons:/srv/dolibarr/htdocs/modules/addons
environment:
- DOMAIN_NAME=erp.monsite.com ports:
- "80:80"
3.2. Rédiger des procédures “one‑pager”
| Étape | Description | Temps moyen |
|---|---|---|
| Création du compte | Remplir le formulaire interne → activation automatique du groupe 2FA | 2 min |
| Enrôlement | Recevoir le QR code par mail (ou QR affiché) → scanner avec l’app | 1 min |
| Aide dépannage | Guide PDF “Comment récupérer mes codes 2FA ?” | Consultation 30 s |
Résultat : chaque collaborateur peut se “self‑service” sans appel au support IT, ce qui évite les tickets redondants.
3.3. Automatiser la dé‑provision et le reset de 2FA
- Script Bash (exécuté par l’administrateur) :
#!/bin/bash
USER=$1# Supprimer les secrets TOTP de la table Users
mysql -e "UPDATE llx_user SET totp_secret='', totp_validated='0' WHERE login='$USER';"
# Forcer la ré‑enrôlement à la prochaine connexion
php -r "require('src/dolibarr.php'); $user = new User($user); $user->user['totp_enabled']=0;"
- Intégrer ce script à votre playbook Ansible pour le déclencher lors d’un turnover ou d’une perte de token.
3.4. Utiliser les urières de connexion unique (SSO) quand c’est possible
- Si votre entreprise possède déjà un Azure AD, Okta ou Keycloak, configurez un OpenID Connect avec Dolibarr.
- Le flux SSO inclut déjà une authentification à deux facteurs côté IdP, donc vous n’avez plus besoin du TOTP interne. – Gains de temps : les utilisateurs n’ont plus à gérer qu’une seule authentification, et les administrateurs disposent d’un tableau de bord centralisé pour désactiver un compte.
3.5. Mettre en place l’accès hors ligne pour les cas de panne
- Codes de secours pré‑imprimés (5‑10 codes) à placer dans le coffre-fort numérique ou le coffre-fort physique.
- Limiter le nombre d’utilisations par code pour éviter les abus.
- Après un incident, regénérez les codes et notifiez les utilisateurs ; la opération ne prend que 5 minutes grâce à votre script de génération.
4. Checklist « Déploiement 2FA » (à coller dans votre Wiki)
[ ] 1. Installer le plugin 2FA – TOTP (version stable)
[ ] 2. Configurer le groupe d’utilisateurs cible (ex. "Production_Admin")
[ ] 3. Activer le mode « Force 2FA » pour le groupe
[ ] 4. Tester le flux complet sur environnement de pré‑prod
[ ] 5. Créer les scripts de récupération (QR reset, reset secret)
[ ] 6. Documenter la procédure One‑Pager (création de compte → scan QR)
[ ] 7. Planifier la formation de 5 minutes (Webinar interne)
[ ] 8. Mettre en place les codes de secours (impression + stockage)
[ ] 9. Ajouter le hook de désactivation 2FA dans Ansible
[ ]10. Surveiller les logs de connexion pendant les 48 h inaugurales
KPIs à suivre : taux d’acceptation 2FA, nombre de tickets liés à l’authentification, temps moyen de résolution d’incident de connexion.
5. FAQ rapides
| Question | Réponse courte |
|---|---|
| Dois‑je désactiver la 2FA pour les_tests automatiques ? | Oui, créez un compte automation avec 2FA désactivée ou utilisez un token de service interne. |
| Le 2FA fonctionne‑t‑il avec les API ? | Le plugin expose une clé API séparée qui ne requiert pas de TOTP. Utilisez‑la pour les scriptsbatch. |
| Quel impact sur la performance ? | Négociable : aucun impact perceptible, seul un appel supplémentaire à la table llx_user est ajouté. |
| Puis‑je forcer la 2FA uniquement pour certaines IP ? | Oui, via la configuration du serveur web (ex. Apache Require ip 10.0.0.0/8). |
| Comment réinitialiser le secret si le smartphone est perdu ? | Accédez à l’interface admin → "Utilisateurs → Réinitialiser le secret TOTP". Un nouveau QR code est généré. |
6. Conclusion
En combinant :
- L’activation native de la 2FA (TOTP) via le plugin officiel,
- Une configuration centralisée et automatisée,
- Des procédures « self‑service » et des scripts de récupération,
vous transformez la sécurité de Dolibarr en un levier de productivité, non plus en une contrainte.
Le mot de la fin : la 2FA ne doit pas ralentir vos équipes, mais les protéger efficacement. En suivant la checklist et les scripts décrits ci‑dessus, votre déploiement sera à la fois sûr, scalable et rapide.
Bon renforcement de la sécurité ! 🚀