Repolode
Bubka

Bubka/2FAuth

A self-hosted web app for storing 2FA accounts and generating TOTP, HOTP and Steam Guard security codes, as an alternative to Google Authenticator.

Open-source alternative to:Google AuthenticatorAuthy

Stars
4,214
Forks
308
Open issues
16
Last commit
4 days ago

What is it?

2FAuth is a web-based, self-hosted one-time passcode manager designed for both mobile and desktop use. It lets you store your 2FA accounts in a database you control, so they can be backed up and restored independently of any phone.

Accounts can be added by scanning QR codes or through a custom form, and organized into groups. Codes are generated according to RFC 4226 (HOTP) and RFC 6238 (TOTP). The app supports multiple user accounts, optional database encryption, auto logout, and sign-in with security keys or SSO. Accounts can be imported from 2FAuth JSON, Google Authenticator QR exports, Aegis and 2FAS files.

The project is built on PHP 8.4 and Laravel, can run on a self-hosted server, in Docker, or on Heroku, and is localized in English and French.

Key features

  • 01Generates TOTP, HOTP and Steam Guard codes.
  • 02Adds accounts by scanning QR codes or through a manual form.
  • 03Organizes accounts into groups.
  • 04Supports multiple users with configurable registration rules.
  • 05Encrypts sensitive database fields as an optional setting.
  • 06Imports accounts from several other 2FA apps.

Use cases

  • Keeping 2FA codes on a home server instead of only on a phone.
  • Generating OTP codes on a desktop browser without reaching for a phone.
  • Backing up 2FA accounts in a standalone database.
  • Sharing a self-hosted 2FA manager among a small team with separate user accounts.

Quick start

  1. 1

    Install with Docker (cli) by following the official guide

  2. 2

    Or install with Docker Compose by following the official guide

  3. 3

    Or set up a self-hosted server by following the official guide

Things to know

  • Requires self-hosting a PHP server and database, which takes setup effort.
  • Licensed under AGPL-3.0, a copyleft license that requires sharing modified network-served source code.

In collections

Topics

#2fa#totp#hotp#otp#self-hosted#php#laravel#two-factor-authentication#2factor#qrcode

FAQ

What is 2FAuth?
A self-hosted web app for storing 2FA accounts and generating TOTP, HOTP and Steam Guard security codes, as an alternative to Google Authenticator. 2FAuth is a web-based, self-hosted one-time passcode manager designed for both mobile and desktop use. It lets you store your 2FA accounts in a database you control, so they can be backed up and restored independently of any phone.
Is 2FAuth free to use? What license does it have?
2FAuth is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is 2FAuth still maintained?
Actively maintained. The last commit to 2FAuth was on Nov 3, 2026.
What can I use 2FAuth for?
Keeping 2FA codes on a home server instead of only on a phone. Generating OTP codes on a desktop browser without reaching for a phone. Backing up 2FA accounts in a standalone database. Sharing a self-hosted 2FA manager among a small team with separate user accounts.
How do I install 2FAuth?
Install with Docker (cli) by following the official guide Or install with Docker Compose by following the official guide Or set up a self-hosted server by following the official guide
Where can I get 2FAuth?
The source code and installation instructions are on GitHub: https://github.com/Bubka/2FAuth

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects

Self-hosted multi-factor authentication server supporting OTP, passkeys/FIDO2, push, SMS and smartcards, integrating with AD, LDAP and SQL user stores.

Security#mfa#two-factor-authentication#otp
1.8K+1 this week370PythonAGPL-3.0Updated 11 hours ago