Личный центр аутентификации без привязки к смартфону

06 May, 2026

Знакомая история: вы переустановили прошивку на телефоне или, что еще хуже, потеряли его, а вместе с ним улетели и все токены двухфакторки из Google Authenticator. Если вы не сохранили бэкап-коды (признайтесь, кто их хранит прилежно?), начинается долгий квест по восстановлению доступов через техподдержку. Автор проекта 2FAuth прошел через этот ад и решил, что пора завязывать с хранением ключей в закрытых мобильных экосистемах.

screens

Что это за зверь

2FAuth — это self-hosted веб-приложение для управления вашими 2FA-аккаунтами. По сути, это ваш личный сервер, который генерирует одноразовые пароли (OTP). Главная прелесть в том, что он работает везде, где есть браузер. Больше не нужно судорожно искать смартфон, когда вы сидите за десктопом и нужно залогиниться в консоль AWS или на GitHub.

Кому это пригодится? В первую очередь тем, кто ценит автономность и хочет иметь полный контроль над своими данными. Если у вас уже крутится домашний сервер или пара контейнеров в облаке, 2FAuth станет отличным дополнением.

Чем он хорош на практике

Главная проблема большинства мобильных приложений для 2FA — интерфейс. Когда у вас двадцать аккаунтов, и все они одновременно показывают тикающие таймеры, это создает лишнюю суету. В 2FAuth подход спокойнее: вы видите только то, что вам нужно в данный момент.

Вот несколько фишек, которые мне понравились:

  • Группировка аккаунтов. Можно разложить токены по папкам: «Работа», «Личное», «Крипта». Это сильно упрощает навигацию, когда список переваливает за десяток позиций.
  • Работа с QR-кодами. Приложение умеет сканировать коды прямо через камеру или из загруженного файла. Если QR-кода нет, можно вбить секретный ключ руками через продвинутую форму.
  • Поддержка Steam Guard. Редкая птица для подобных приложений. Обычно для Steam нужно отдельное приложение, но здесь генерация кодов встроена нативно.
  • Импорт из всего подряд. Переход на новый софт всегда пугает переносом данных. 2FAuth умеет подтягивать базы из Aegis, 2FAS и даже экспорты из Google Authenticator.

Безопасность и технологии

Внутри это классический стек на PHP и Laravel. Приложение легковесное, не требует монструозных ресурсов и заводится практически на любом «утюге», будь то старая Raspberry Pi или копеечный VPS.

Что касается защиты данных:

  1. Шифрование базы. По умолчанию оно выключено, но я настоятельно советую его активировать в настройках. Тогда даже если кто-то получит доступ к файлу базы данных, вытащить оттуда секретные ключи без вашего APP_KEY не получится.
  2. Аппаратные ключи. Приложение поддерживает WebAuthn. Это значит, что для входа в саму панель 2FAuth можно использовать Yubikey или другие ключи безопасности.
  3. Автовыход. Можно настроить систему так, чтобы сессия закрывалась сразу после копирования кода в буфер обмена. Параноидально? Возможно. Безопасно? Однозначно.

Как развернуть у себя

Самый быстрый способ — Docker Compose. Это избавит от необходимости возиться с зависимостями PHP и настройкой веб-сервера.

services:
  2fauth:
    image: bubka/2fauth:latest
    ports:
      - "8000:8000"
    volumes:
      - ./2fauth_data:/2fauth
    environment:
      - APP_NAME=2FAuth
      - APP_ENV=production
      - APP_DEBUG=false

После запуска приложение будет доступно на 8000 порту. Первым делом нужно будет создать учетную запись администратора. Кстати, 2FAuth — это строго однопользовательское приложение. Оно создано для личного использования, а не для того, чтобы вы открывали публичный сервис для регистрации всех желающих.

Стоит ли переходить

Если вы устали зависеть от смартфона и хотите иметь надежный бэкап своих 2FA-токенов, который не удалится вместе с облаком Google или Apple, то 2FAuth — отличный вариант.

Из минусов: вам придется самостоятельно заботиться о бэкапах самой базы приложения (хотя это просто один файл, если использовать SQLite). Также стоит помнить, что self-hosted решение требует базовых навыков администрирования.

В остальном это добротный, опенсорсный инструмент с открытым исходным кодом под лицензией AGPL-3.0, который просто делает свою работу и не пытается вытянуть из вас данные или подсадить на подписку.

Кстати, у проекта есть живое демо, где можно потыкать интерфейс перед установкой. Логин и пароль для входа — demo@2fauth.app / demo.