
TeamPass v3.2.2.0
Gestionnaire de mots de passe collaboratif
Teampass
Gestionnaire de mots de passe auto-hébergé auquel toute votre équipe peut faire confiance
Contrôle d'accès par dossier · chiffrement authentifié AES-256-GCM · preuves de conformité
Vos secrets ne quittent jamais votre infrastructure.
🌐 teampass.net · 📖 Documentation · 💬 Discussions · 🐳 Docker Hub
Sommaire
- À propos
- À qui s'adresse-t-il
- Sécurité
- Fonctionnalités
- Pour commencer
- Documentation
- Langues
- Communauté
- Soutenir Teampass
- Licence
À propos
Teampass est un coffre-fort d'identifiants open source que vous hébergez vous-même. Aucun compte à créer, aucune entreprise derrière le rideau qui détient vos données — juste une application PHP/MySQL sur votre propre serveur, avec un contrôle d'accès par dossier, des clés de chiffrement par utilisateur et une piste d'audit complète.
Il est développé et maintenu depuis 2009, guidé par les problèmes réels rencontrés par les équipes : qui doit voir quel identifiant, comment le prouver à un auditeur, et comment empêcher que les mots de passe vivent dans des fils de discussion et des feuilles de calcul.
📸 Plus de captures d'écran
Éléments et secrets
Dossiers et rôles
Authentification et MFA
Clés de chiffrement
Recherche, export, vue à usage unique
Tâches en arrière-plan
À qui s'adresse-t-il
🏠 Particuliers & HomelabPossédez votre coffre-fort, littéralement.
|
👥 Équipes & PMEArrêtez de partager les mots de passe dans le chat.
|
🏛️ Entreprises & secteurs réglementésProuvez vos contrôles d'accès, ne vous contentez pas de les revendiquer.
|
Sécurité
Un chiffrement que vous pouvez décrire à un auditeur
Les secrets sont chiffrés avec AES-256-GCM en utilisant des nonces aléatoires et des sels par secret, sous des clés d'objet de 256 bits. La clé privée qui les déverrouille est dérivée de votre mot de passe avec PBKDF2-SHA256 à 600 000 itérations.
- Chiffrement authentifié — la falsification est détectée, pas déchiffrée en silence
- Distribution de clés par utilisateur — chaque utilisateur détient sa propre copie enveloppée RSA de chaque clé d'objet, donc supprimer un compte révoque réellement l'accès au lieu de simplement masquer un bouton
- Migration paresseuse — les mises à niveau de format se font à l'accès, sans fenêtre de maintenance
La transparence plutôt que le silence
Un gestionnaire de mots de passe qui ne signale aucune vulnérabilité n'est pas un gestionnaire de mots de passe qui n'en a aucune.
Les signalements sont triés, corrigés et publiés sous forme d'avis de sécurité GitHub avec des identifiants CVE.
Vous avez trouvé une vulnérabilité ? Veuillez la signaler de manière privée via GitHub Security Advisories — jamais dans un problème public.
Fonctionnalités
🗂️ Contrôle d'accès par dossier et rôle
- Dossiers — imbrication illimitée, règles de complexité de mot de passe par dossier
- Rôles — accordez l'accès par rôle, pas utilisateur par utilisateur
- Droits — lecture, écriture, sans modification, sans suppression, résolution par le moins permissif gagnant
- Utilisateurs — dérogations par utilisateur en plus des rôles
- Dossiers personnels que personne d'autre ne peut lire, y compris les administrateurs
🔐 Chiffrement authentifié
- Modèle de chiffrement — comment les clés sont dérivées, enveloppées et distribuées
- Améliorations du chiffrement — le format AES-256-GCM et sa migration paresseuse
- Gestion des clés — régénération, récupération, réparation de clé par utilisateur
📊 Posture de sécurité
- Tableau de bord de posture de sécurité notant les identifiants faibles, réutilisés et compromis
- Détection de fuite — vérifications Have I Been Pwned sans envoyer vos mots de passe
- Renouvellement des mots de passe — politiques d'expiration et rappels
- Micro-apprentissage — incitations dans l'application au lieu d'un diaporama annuel
🏛️ Gouvernance et audit
- Revues d'accès — campagnes de recertification avec décisions immuables
- Rapports de conformité — des preuves que vous pouvez remettre à un auditeur
- Suivi des rotations — ce qui a été roté, quand, par qui
- Risque de départ — ce qu'un utilisateur partant pourrait encore savoir
- Classification des données — propriété et étiquettes de sensibilité
🪪 Intégration d'identité
- Authentification — locale, LDAP/AD avec groupes imbriqués, OAuth2 / SSO
- Multi-facteurs : TOTP (Google Authenticator), Duo Security, YubiKey, AGSES
- ACL réseau — restreindre l'accès par plage IP
- Gestion des sessions — délais d'expiration, sessions simultanées, stockage basé sur Redis
🤖 Automatisation
- API REST — authentifiée par JWT, spécification OpenAPI 3.1, clients Bash et PowerShell
- Extension de navigateur — remplissage automatique, capture, auto-configuration en un clic
- Tâches en arrière-plan — distribution des clés, notifications, maintenance
- Collaboration en temps réel — synchronisation WebSocket et verrous d'édition
- Sauvegardes — vidages de base de données planifiés et chiffrés
📦 Migration entrante et sortante
⚡ Productivité quotidienne
- Recherche — dans les libellés, descriptions, étiquettes et champs personnalisés
- Palette de commandes — navigation orientée clavier
- Favoris et accès rapide aux éléments récents
- Champs personnalisés — chiffrables individuellement, restreints par rôle
- Base de connaissances et centre de notifications
- Liens de vue à usage unique et Secure Send pour le partage en dehors du coffre-fort
Pour commencer
Prérequis
| Base de données | MySQL 5.7+ ou MariaDB 10.7+ |
| PHP | 8.2 ou plus récent (testé avec 8.3) |
| Extensions requises | openssl mysqli mbstring bcmath iconv xml gd curl gmp — plus ldap pour LDAP/AD |
| Extensions recommandées | apcu (cache de configuration) · opcache (performances) · redis (sessions HA) · pcntl + posix (démon WebSocket) |
Teampass suit le support PHP actif. L'utilisation de la dernière version stable de PHP est fortement recommandée pour la sécurité et les performances.
🐳 Docker```bash
docker run -d --name teampass
-p 8080:80
-v teampass_data:/var/www/html
teampass/teampass:latest
Les images sont publiées sur les deux registres :
- Docker Hub — `teampass/teampass`
- GitHub Container Registry — `ghcr.io/nilsteampassnet/teampass`
📖 [Guide Docker](https://github.com/nilsteampassnet/teampass/blob/HEAD/docs/DOCKER.md) · [Migrer une installation existante vers Docker](https://github.com/nilsteampassnet/teampass/blob/HEAD/docs/DOCKER-MIGRATION.md)
### 🖥️ Installation sur serveur dédié (recommandée pour la production)
Installer directement sur un serveur PHP/MySQL offre les meilleures performances et le plus grand contrôle sur votre environnement.
- 📖 [Guide d'installation officiel](https://documentation.teampass.net/#/install/installation)
- 🔄 [Guide de mise à niveau](https://documentation.teampass.net/#/install/upgrade)
- 🔑 [Permissions des fichiers](https://documentation.teampass.net/#/install/file-permissions)
- 🎥 [Tutoriel vidéo](https://youtu.be/eXieWAIsGzc?feature=shared)
---
## Documentation
| | |
|---|---|
| 📖 **[Documentation complète](https://documentation.teampass.net)** | Installation, fonctionnalités, administration |
| 🚀 **[Installation](https://documentation.teampass.net/#/install/installation)** | Première configuration pas à pas |
| 🔄 **[Mise à niveau](https://documentation.teampass.net/#/install/upgrade)** | Passage entre les versions |
| 🛡️ **[Durcissement de la sécurité](https://documentation.teampass.net/#/install/security-hardening)** | Liste de contrôle pour la production |
| ⚙️ **[Performances](https://documentation.teampass.net/#/install/performance)** | PHP-FPM, cache, optimisation |
| 🔌 **[API REST](https://documentation.teampass.net/#/api/api-basic)** | Points de terminaison, authentification JWT, clients |
| 🧩 **[Extension de navigateur](https://documentation.teampass.net/#/misc/extension)** | Configuration et utilisation |
| 🩺 **[Dépannage](https://documentation.teampass.net/#/misc/troubleshooting)** | Quand quelque chose ne fonctionne pas |
---
## Langues
Teampass est disponible en **25 langues**, traduites par la communauté.
<table>
<tr>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/us.png" width="16" alt="" /> Anglais</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/fr.png" width="16" alt="" /> Français</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/de.png" width="16" alt="" /> Allemand</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/es.png" width="16" alt="" /> Espagnol</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/it.png" width="16" alt="" /> Italien</td>
</tr>
<tr>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/pr.png" width="16" alt="" /> Portugais</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/br.png" width="16" alt="" /> Portugais (BR)</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/nl.png" width="16" alt="" /> Néerlandais</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/ru.png" width="16" alt="" /> Russe</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/ua.png" width="16" alt="" /> Ukrainien</td>
</tr>
<tr>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/pl.png" width="16" alt="" /> Polonais</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/cz.png" width="16" alt="" /> Tchèque</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/hu.png" width="16" alt="" /> Hongrois</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/ro.png" width="16" alt="" /> Roumain</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/bg.png" width="16" alt="" /> Bulgare</td>
</tr>
<tr>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/gr.png" width="16" alt="" /> Grec</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/tr.png" width="16" alt="" /> Turc</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/se.png" width="16" alt="" /> Suédois</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/no.png" width="16" alt="" /> Norvégien</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/ee.png" width="16" alt="" /> Estonien</td>
</tr>
<tr>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/catalonia.png" width="16" alt="" /> Catalan</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/cn.png" width="16" alt="" /> Chinois</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/ja.png" width="16" alt="" /> Japonais</td>
<td><img src="https://raw.githubusercontent.com/nilsteampassnet/teampass/HEAD/public/assets/images/flags/vi.png" width="16" alt="" /> Vietnamien</td>
<td>🇸🇦 Arabe <sub>(en cours)</sub></td>
</tr>
</table>
Les traductions sont gérées sur POEditor — quelques chaînes de votre part suffisent à faire la différence.
[](https://poeditor.com/join/project?hash=0vptzClQrM)
---
## Communauté
### Contribuer
Toutes les contributions, quel qu'en soit le type, sont les bienvenues. Forkez le dépôt, apportez vos modifications, puis ouvrez une pull request — voir [CONTRIBUTING.md](https://github.com/nilsteampassnet/teampass/blob/HEAD/.github/CONTRIBUTING.md) pour la configuration de développement, les normes de codage et les conventions de branches, et [CODE_OF_CONDUCT.md](https://github.com/nilsteampassnet/teampass/blob/HEAD/CODE_OF_CONDUCT.md) pour la manière dont nous collaborons.
[](https://github.com/nilsteampassnet/TeamPass/compare)
### Signaler des bugs
Si quelque chose ne fonctionne pas comme prévu, ouvrez un ticket. Veuillez inclure les étapes pour reproduire le problème, votre configuration serveur et le rapport de diagnostic depuis **Admin → Icône Bug (en bas à gauche)**.
[](https://github.com/nilsteampassnet/TeamPass/issues/new/choose)
### Poser des questions
Les questions, les conseils de déploiement et les idées ont leur place dans les Discussions plutôt que dans le suivi des tickets.
[](https://github.com/nilsteampassnet/TeamPass/discussions)
### Contributeurs
Teampass est ce qu'il est grâce à ces personnes.
[](https://github.com/nilsteampassnet/TeamPass/graphs/contributors)
### Historique des étoiles
[](https://star-history.com/#nilsteampassnet/TeamPass&Date)
---
## Soutenir Teampass
Teampass est gratuit, sous licence GPL-3.0, et est maintenu par une seule personne depuis 2009. Il n'y a aucune entreprise derrière — c'est précisément le but, et c'est aussi pourquoi le soutien compte.
### Ce que finance le parrainage
- **Travail de sécurité** — tri des signalements, corrections et publication d'avis avec CVE
- **Versions** — tests, chemins de mise à niveau et maintien de la capacité des anciennes installations à évoluer
- **Documentation** — les guides sur documentation.teampass.net
- **Traductions** — coordination des 25 langues
- **Infrastructure** — images Docker, CI et sites web du projet
### Devenir sponsor
L'objectif est de **100 sponsors mensuels**. Chaque palier aide, et les petits montants récurrents aident le plus car ils rendent le travail prévisible.
[](https://github.com/sponsors/nilsteampassnet)
[](https://www.paypal.com/donate/?hosted_button_id=XUVWYJ7J92X6L)
### Sponsors
Un immense merci à tous ceux qui sponsorisent ce travail — vous gardez Teampass gratuit pour tous les autres.
[](https://github.com/sponsors/nilsteampassnet)
### Support commercial
Le parrainage finance le serveur gratuit. L'extension de navigateur et les services professionnels financent la feuille de route.
| | |
|---|---|
| **Extension Pro** | Remplissage automatique du navigateur, capture et protection contre le phishing — à partir de 49 €/an, essai de 30 jours |
| **Services** | Développement de fonctionnalités, assistance au déploiement, traitement prioritaire — devis par engagement |
[](https://teampass.net/pricing.html)
---
## Licence
Teampass est publié sous la **[GNU General Public License v3.0](https://github.com/nilsteampassnet/teampass/blob/HEAD/LICENSE.md)**.
Vous êtes libre de l'utiliser, de l'étudier, de le modifier et de le redistribuer — y compris à des fins commerciales — à condition que les œuvres dérivées restent sous la même licence.
📋 [Rapport de conformité des licences des dépendances](https://github.com/nilsteampassnet/teampass/blob/HEAD/LICENSE_COMPLIANCE_REPORT.md)
---
<div align="center">
<img src="https://teampass.net/images/madeinfrance.png" width="90" alt="Made in France" />
**Conçu et maintenu par [Nils Laumaillé](mailto:[email protected]) depuis 2009.**
Copyright © 2009-2026 Nils Laumaillé
<br />
[](https://github.com/vshymanskyy/StandWithUkraine/blob/main/docs/README.md)
</div>