🔐 Добавлена полная поддержка 2FA авторизации

 Улучшения:
   Расширенная обработка ошибок при вводе пароля 2FA
   Различие между неверным паролем и другими ошибками
   Подробные подсказки для пользователя при ошибках
   Поддержка восстановительных кодов 2FA
   Улучшенное сообщение при запросе пароля 2FA

📖 Документация:
   Создан 2FA_GUIDE.md (подробное руководство)
   Обновлена информация о 2FA в боте (auth_info)
   Добавлены примеры и советы по использованию

🔐 Обработка ошибок:
  • Неверный пароль - ясное сообщение + подсказки
  • Пароль истек - предложение повторить
  • SMS-код истек - инструкция по получению нового
  • Много попыток - информация о ограничениях

📱 Процесс с 2FA:
  1. Номер телефона
  2. SMS-код (5 цифр)
  3. Пароль 2FA (если включена)
  4.  Авторизация успешна

💡 Основные преимущества:
  • Ясные объяснения на каждом этапе
  • Подсказки при забывании пароля
  • Безопасное обращение с паролями (не сохраняются)
  • Поддержка восстановительных кодов
This commit is contained in:
2025-12-21 12:33:29 +09:00
parent b4f86a33cb
commit c849866fbd
7 changed files with 308 additions and 66 deletions

147
2FA_GUIDE.md Normal file
View File

@@ -0,0 +1,147 @@
# 🔐 Двухфакторная аутентификация (2FA) - Подробное руководство
## Что такое 2FA?
Двухфакторная аутентификация (2FA) - это дополнительный уровень безопасности для вашего аккаунта Telegram. Помимо пароля, Telegram требует второй фактор проверки.
## 🚀 Как работает авторизация с 2FA
### Этап 1: Отправка номера телефона
```
Вы → Введите номер телефона → Бот отправляет SMS
```
### Этап 2: Ввод SMS-кода
```
Вы → Получите SMS → Введите 5-значный код
```
### Этап 3: Проверка 2FA пароля ⭐ (если включена 2FA)
```
Система → Требуется пароль 2FA
Вы → Введите пароль, который вы установили в Telegram
```
## ❌ Ошибка: "Требуется двухфакторная аутентификация"
Это означает, что в вашем аккаунте Telegram **включена 2FA**.
### Решение: Введите пароль
Когда бот просит пароль 2FA:
1. Это тот пароль, который вы установили в настройках Telegram
2. **НЕ** это SMS-код
3. **НЕ** это пароль от почты
Пароль 2FA обычно:
- От 5 до 255 символов
- Может содержать буквы, цифры, спецсимволы
- Чувствителен к регистру
### Пример
```
Бот: Требуется двухфакторная аутентификация
Введите пароль вашего аккаунта Telegram:
Вы: MySecurePassword2024
```
## 🆘 Если забыли пароль 2FA
### Вариант 1: Использовать восстановительный код
Когда вы установили 2FA, Telegram дал вам **восстановительный код** (обычно 32 символа).
```
Бот: Требуется двухфакторная аутентификация
Вы: (введите восстановительный код вместо пароля)
```
### Вариант 2: Отключить 2FA через веб-версию
1. Откройте https://web.telegram.org/
2. Авторизуйтесь (без 2FA проверки в веб-версии)
3. Перейдите в Настройки → Приватность и безопасность → Двухфакторная аутентификация
4. Отключите 2FA
5. Повторите авторизацию в боте
### Вариант 3: Восстановить доступ
Если не можете сделать ничего из выше:
1. Напишите в поддержку Telegram
2. Восстановите доступ через SMS
## ✅ Как включить 2FA (для тех, кто хочет)
В Telegram:
1. Настройки → Приватность и безопасность
2. Двухфакторная аутентификация → Включить
3. Установите пароль (не SMS-код!)
4. **Сохраните восстановительный код в безопасном месте!**
## 📊 Типичные ошибки при вводе пароля
| Ошибка | Причина | Решение |
|--------|---------|---------|
| "Неверный пароль" | Пароль введен неправильно | Проверьте регистр, опечатки |
| "Пароль истек" | Слишком долго не вводили | Повторите авторизацию |
| "Код истек" | SMS-код действовал ~5 минут | Получите новый код, повторите |
| "Много попыток" | Много неверных попыток | Подождите 1-2 часа |
## 💡 Советы
1. **Запомните пароль 2FA** - он не вводится часто
2. **Сохраняйте восстановительный код** - только вы должны его знать
3. **Используйте надежный пароль** - минимум 8 символов
4. **Не делитесь кодами** - никто не должен просить восстановительный код
## 🔐 Безопасность в боте
Когда вы вводите пароль 2FA в бот:
- ✅ Пароль не сохраняется в базу данных
- ✅ Пароль обрабатывается только Telethon
- ✅ Пароль не логируется
- ✅ После авторизации сессия сохраняется (пароль больше не нужен)
## 📝 Полный процесс с 2FA
```
1. /start
2. 🤖 UserBot → 🔐 Авторизация
3. 🚀 Начать авторизацию
4. Введите номер: +7 (999) 123-45-67
5. 📨 SMS отправлен на ваш номер
6. Введите SMS-код: 12345
7. ⚠️ Требуется пароль 2FA!
8. Введите пароль: MySecurePassword2024
9. ✅ Авторизация успешна!
10. UserBot готов к работе
```
## ⚡ Быстрая помощь
**Q: Где найти пароль 2FA?**
A: Это пароль, который **ВЫ установили** в Telegram. Не SMS-код, не пароль от почты.
**Q: Что если забыл?**
A: Используйте восстановительный код или выключите 2FA через веб-версию.
**Q: Можно ли не вводить пароль?**
A: Нет, если 2FA включена, пароль обязателен для авторизации.
**Q: Это опасно вводить пароль?**
A: Нет, бот обрабатывает пароль безопасно (не сохраняет, не логирует).
**Q: Нужен ли пароль при каждой авторизации?**
A: Нет, только первый раз. Дальше сессия используется автоматически.
---
**Нужна помощь? Проверьте логи бота или напишите в поддержку Telegram.**