
# Teampass
### Self-hosted password management your whole team can trust
Folder-level access control · authenticated AES-256-GCM encryption · compliance evidence
**Your secrets never leave your infrastructure.**
**🌐 [teampass.net](https://teampass.net)** ·
**📖 [Documentation](https://documentation.teampass.net)** ·
**💬 [Discussions](https://github.com/nilsteampassnet/TeamPass/discussions)** ·
**🐳 [Docker Hub](https://hub.docker.com/r/teampass/teampass)**
[](https://github.com/nilsteampassnet/TeamPass/releases/latest)
[](LICENSE.md)
[](https://www.php.net/)
[](https://hub.docker.com/r/teampass/teampass)
[](https://github.com/nilsteampassnet/TeamPass)
[](https://github.com/nilsteampassnet/TeamPass/actions/workflows/codeql.yml)
[](https://github.com/nilsteampassnet/TeamPass/actions/workflows/docker-publish.yml)
[](https://github.com/nilsteampassnet/TeamPass/security/advisories)
[](https://github.com/sponsors/nilsteampassnet)
Contents
About
Teampass is an open-source credential vault you run yourself. No account to create, no company behind the curtain holding your data — just a PHP/MySQL application on your own server, with folder-level access control, per-user encryption keys and a full audit trail.
It has been built and maintained since 2009, driven by what real teams actually run into: who should see which credential, how to prove it to an auditor, and how to stop passwords living in chat threads and spreadsheets.
📸 More screenshots
**Items and secrets**
**Folders and roles**
**Authentication and MFA**
**Encryption keys**
**Search, export, one-time view**
**Background tasks**
Who it's for
|
### 🏠 Individuals & Homelab
***Own your vault, literally.***
- Runs on a Raspberry Pi or a €5 VPS
- Personal folders encrypted with your own key
- Import from Bitwarden, LastPass, 1Password or KeePassXC
- Free forever, no sign-up required
|
### 👥 Teams & SMB
***Stop sharing passwords in chat.***
- Folders and roles instead of a shared document
- A record of who accessed what, and when
- Secure Send for clients and contractors
- Browser extension for day-to-day autofill
|
### 🏛️ Enterprise & Regulated
***Prove your access controls, don't just claim them.***
- Access recertification campaigns with immutable decisions
- Compliance reports and evidence export
- LDAP/AD with nested groups, OAuth2 SSO
- Data classification and ownership
|
Security
Encryption you can describe to an auditor
Secrets are encrypted with AES-256-GCM using random nonces and per-secret salts, under 256-bit object keys. The private key that unlocks them is derived from your password with PBKDF2-SHA256 at 600 000 iterations.
- Authenticated encryption — tampering is detected, not silently decrypted - Per-user key distribution — every user holds their own RSA-wrapped copy of each object key, so removing an account actually revokes access instead of just hiding a button
- Lazy migration — format upgrades happen on access, with no maintenance window
Transparency over silence
A password manager that reports no vulnerabilities is not a password manager that has none.
Findings are triaged, fixed and published as GitHub Security Advisories with CVE identifiers.
Found a vulnerability? Please report it privately through GitHub Security Advisories — never in a public issue.
Features
🗂️ Folder and role access control
- [Folders](https://documentation.teampass.net/#/features/folders) — unlimited nesting, per-folder password complexity rules
- [Roles](https://documentation.teampass.net/#/features/roles) — grant access by role, not user by user
- [Rights](https://documentation.teampass.net/#/features/rights) — read, write, no-edit, no-delete, resolved least-permissive-wins
- [Users](https://documentation.teampass.net/#/features/users) — per-user overrides on top of roles
- Personal folders that nobody else can read, including administrators
🔐 Authenticated encryption
- [Encryption model](https://documentation.teampass.net/#/install/encryption) — how keys are derived, wrapped and distributed
- [Encryption improvements](https://documentation.teampass.net/#/install/encryption-improvements) — the AES-256-GCM format and its lazy migration
- [Key management](https://documentation.teampass.net/#/features/keys) — regeneration, recovery, per-user key repair
📊 Security posture
- [Security posture](https://documentation.teampass.net/#/features/security-posture) — a personal score for weak, reused and breached credentials, and Have I Been Pwned checks without sending your passwords
- [Password renewal](https://documentation.teampass.net/#/features/renewal) — expiry policies and reminders
- [Micro-learning](https://documentation.teampass.net/#/features/micro-learning) — in-app nudges instead of a yearly slideshow
🏛️ Governance and audit
- [Access reviews](https://documentation.teampass.net/#/manage/access-reviews) — recertification campaigns with immutable decisions
- [Compliance reports](https://documentation.teampass.net/#/manage/compliance-reports) — evidence you can hand to an auditor
- [Rotation tracking](https://documentation.teampass.net/#/manage/rotation-tracking) — what was rotated, when, by whom
- [Leaver risk](https://documentation.teampass.net/#/features/leaver-risk) — what a departing user could still know
- [Data classification](https://documentation.teampass.net/#/features/classification) — ownership and sensitivity labels
🪪 Identity integration
- [Authentication](https://documentation.teampass.net/#/features/authentication) — local, LDAP/AD with nested groups, OAuth2 / SSO
- Multi-factor: TOTP (Google Authenticator), Duo Security, YubiKey, AGSES
- [Network ACL](https://documentation.teampass.net/#/manage/network-acl) — restrict access by IP range
- [Session management](https://documentation.teampass.net/#/misc/session-management) — timeouts, concurrent sessions, Redis-backed storage
🤖 Automation
- [REST API](https://documentation.teampass.net/#/api/api-basic) — JWT-authenticated, OpenAPI 3.1 spec, Bash and PowerShell clients
- [Browser extension](https://documentation.teampass.net/#/misc/extension) — autofill, capture, one-click auto-configuration
- [Background tasks](https://documentation.teampass.net/#/manage/tasks) — key distribution, notifications, maintenance
- [Real-time collaboration](https://documentation.teampass.net/#/features/collaboration) — WebSocket sync and edition locks
- [Backups](https://documentation.teampass.net/#/features/backups) — scheduled, encrypted database dumps
📦 Migration in and out
- [Import](https://documentation.teampass.net/#/features/import) — Bitwarden, LastPass, 1Password, KeePassXC, CSV
- [Export](https://documentation.teampass.net/#/features/export) — CSV, PDF, and a self-contained encrypted offline HTML vault
- No lock-in: it is your database, on your server, under GPL-3.0
⚡ Daily productivity
- [Search](https://documentation.teampass.net/#/features/search) — across labels, descriptions, tags and custom fields
- [Command palette](https://documentation.teampass.net/#/features/command-palette) — keyboard-first navigation
- [Favourites](https://documentation.teampass.net/#/features/favourites) and quick access to recent items
- [Custom fields](https://documentation.teampass.net/#/features/custom-fields) — individually encryptable, role-restricted
- [Knowledge base](https://documentation.teampass.net/#/features/knowledge-base) and [notification center](https://documentation.teampass.net/#/features/notification-center)
- One-time view links and Secure Send for sharing outside the vault
Get started
Requirements
|
|
| Database |
MySQL 5.7+ or MariaDB 10.7+ |
| PHP |
8.2 or newer (tested against 8.3) |
| Required extensions |
openssl mysqli mbstring bcmath iconv xml gd curl gmp — plus ldap for LDAP/AD |
| Recommended extensions |
apcu (config cache) · opcache (performance) · redis (HA sessions) · pcntl + posix (WebSocket daemon) |
Teampass follows active PHP support. Running the latest stable PHP release is strongly recommended for both security and performance.
🐳 Docker
docker run -d --name teampass \
-p 8080:80 \
-v teampass_data:/var/www/html \
teampass/teampass:latest
Images are published to both registries:
- Docker Hub —
teampass/teampass
- GitHub Container Registry —
ghcr.io/nilsteampassnet/teampass
📖 Docker guide · Migrating an existing install to Docker
🖥️ Bare metal (recommended for production)
Installing directly on a PHP/MySQL server gives the best performance and the most control over your environment.
Documentation
Languages
Teampass ships in 25 languages, translated by the community.
English |
French |
German |
Spanish |
Italian |
Portuguese |
Portuguese (BR) |
Dutch |
Russian |
Ukrainian |
Polish |
Czech |
Hungarian |
Romanian |
Bulgarian |
Greek |
Turkish |
Swedish |
Norwegian |
Estonian |
Catalan |
Chinese |
Japanese |
Vietnamese |
🇸🇦 Arabic (in progress) |
Translations are managed on POEditor — a few strings from you go a long way.

Community
Contributing
Contributions of any kind are very welcome. Fork the repo, make your changes, then open a pull request — see CONTRIBUTING.md for the development setup, coding standards and branch conventions, and CODE_OF_CONDUCT.md for how we work together.

Reporting bugs
If something does not work as it should, raise a ticket. Please include the steps to reproduce, your server configuration, and the diagnostic report from Admin → Bug icon (bottom left).

Asking questions
Questions, deployment advice and ideas belong in Discussions rather than the issue tracker.

Contributors
Teampass is what it is thanks to these people.

Star history

Support Teampass
Teampass is free, GPL-3.0, and has been maintained by one person since 2009. There is no company behind it — which is exactly the point, and also why support matters.
What sponsorship funds
- Security work — triaging reports, fixing them, and publishing advisories with CVEs
- Releases — testing, upgrade paths, and keeping older installations able to move forward
- Documentation — the guides at documentation.teampass.net
- Translations — coordinating 25 languages
- Infrastructure — Docker images, CI, and the project websites
Become a sponsor
The goal is 100 monthly sponsors. Every tier helps, and small recurring amounts help most because they make the work predictable.

Sponsors
Huge thanks to everyone who sponsors this work — you keep Teampass free for everyone else.

Commercial support
Sponsorship funds the free server. The browser extension and professional services fund the roadmap.
|
|
| Pro Extension |
Browser autofill, capture and phishing protection — from €49/year, 30-day trial |
| Services |
Feature development, deployment assistance, priority handling — quoted per engagement |

License
Teampass is released under the GNU General Public License v3.0.
You are free to use, study, modify and redistribute it — including commercially — provided derivative works remain under the same license.
📋 Dependency license compliance report

**Built and maintained by [Nils Laumaillé](mailto:nils@teampass.net) since 2009.**
Copyright © 2009-2026 Nils Laumaillé
[](https://github.com/vshymanskyy/StandWithUkraine/blob/main/docs/README.md)