📱 Telegram 2FA
Настройки двухфакторной аутентификации через Telegram в BaronessAuth
Telegram 2FA
Путь конфига: content/BaronessAuth/config/methods/telegram.yml
Двухфакторная аутентификация через Telegram бота. Обеспечивает дополнительную безопасность для вашего сервера.
📋 Описание
Telegram 2FA — это метод двухфакторной аутентификации, который использует Telegram бота для подтверждения входа игроков. Когда игрок пытается войти на сервер, он получает уведомление в Telegram с запросом на подтверждение входа.
⚙️ Основные настройки
enabled
Включает или отключает Telegram 2FA.
enabled: true # Включить Telegram 2FA
enabled: false # Отключить Telegram 2FA
display-name
Человеческое название метода, которое показывается игрокам.
display-name: '2FA в Telegram'
🤖 Настройки бота
Токен бота
bot:
token: 'токен-вашего-бота'
Важно: Получите токен у @BotFather в Telegram.
Команды бота
bot:
commands:
- ''
- '/привязать'
- '!привязать'
- '/привязка'
- '!привязка'
- '/link'
Параметры:
commands
- список команд для взаимодействия с ботом- Если указать пустую команду
''
, любое сообщение будет считаться попыткой ввода кода
Обработка команд
bot:
handle-valid-code-even-when-command-is-invalid: true
Параметры:
handle-valid-code-even-when-command-is-invalid
- принимать корректные коды, даже если команда была указана неправильно
Требование подписки на каналы
bot:
require-channel-subscription:
enabled: false
ids:
- -1001603471277
message: '⛔ Для использования бота вы должны подписаться на <вставьте своё>.'
Параметры:
enabled
- включить ли требование подпискиids
- список ID каналов для подпискиmessage
- сообщение при отсутствии подписки
Важно: Бот должен быть добавлен в эти каналы как администратор (права не нужны).
💬 Сообщения бота
Основные сообщения
bot:
messages:
invalid-action: '❓ Это действие больше неактуально.'
too-many-links-for-account: '⭕ Вы не можете привязать ещё больше игроков к этому аккаунту.'
successful-link: '✅ Вы успешно привязали аккаунт <name>!'
select-account: 'Выберите аккаунт:'
Сообщения 2FA
bot:
messages:
2fa-request-start: |-
⚠ На ваш аккаунт, <name>, пытаются войти с IP <address> (<city>, <country>).
**Тот, кто пытается войти, правильно ввёл ваш пароль!**
Если это не вы, отклоните и **смените пароль немедленно** (нажмите "сброс пароля")!
2fa-request-accept: '✅ Вы приняли вход на аккаунт <name> с IP <address> (<city>, <country>).'
2fa-request-decline: |-
⭕ Вы отклонили вход на аккаунт <name> с IP <address> (<city>, <country>).
Если это были не вы, смените пароль немедленно (нажмите "сброс пароля")!
2fa-request-cancel: |-
⭕ На ваш аккаунт, <name>, пытались войти с IP <address> (<city>, <country>).
Процесс был отменён - игрок не вошёл.
Если это были не вы, смените пароль немедленно (нажмите "сброс пароля")!
Уведомления
bot:
messages:
notification-login: |-
🔔 На ваш аккаунт, <name>, вошли, используя <methods>.
Вход был с IP <address> (<city>, <country>).
Сообщения об ошибках
bot:
messages:
invalid-input: |-
❓ Вы хотели привязать аккаунт?
Зайдите на сервер, введите `/link telegram` и полученный код отправьте сюда.
unknown-code: |-
❓ Неизвестный код.
Зайдите на сервер и введите `/link telegram`, чтобы получить новый.
🔘 Кнопки бота
Основные кнопки
bot:
buttons:
# Кнопки для статуса
status:
text: '📊 Статус'
callback: 'status'
# Кнопки для 2FA
accept:
text: '✅ Принять'
callback: 'accept'
decline:
text: '❌ Отклонить'
callback: 'decline'
# Кнопки для управления
reset-password:
text: '🔒 Сброс пароля'
callback: 'reset_password'
unlink:
text: '🔗 Отвязать'
callback: 'unlink'
Настройка кнопок
bot:
buttons:
# Показывать кнопки в сообщениях
show-in-messages: true
# Размер кнопок
button-size: 'SMALL' # SMALL, MEDIUM, LARGE
# Расположение кнопок
inline: true
🔗 Привязка аккаунтов
Настройки привязки
linking:
# Максимальное количество привязок на один Telegram аккаунт
max-links-per-account: 5
# Время жизни кода привязки
code-lifetime: '5 мин'
# Сообщение при успешной привязке
success-message: '✅ Аккаунт успешно привязан к Telegram!'
# Сообщение при ошибке привязки
error-message: '❌ Ошибка привязки аккаунта.'
Команда привязки
linking:
command:
aliases:
- 'link'
- 'привязать'
cooldown: '30 сек'
🔐 Настройки безопасности
Таймауты
security:
# Время ожидания подтверждения 2FA
2fa-timeout: '2 мин'
# Время блокировки после неудачных попыток
lockout-time: '10 мин'
# Максимальное количество неудачных попыток
max-failed-attempts: 3
Геолокация
security:
# Показывать ли информацию о местоположении
show-location: true
# Формат отображения IP
ip-format: '<ip> (<city>, <country>)'
📱 Настройки уведомлений
Типы уведомлений
notifications:
# Уведомления о входах
login:
enabled: true
message: '🔔 Вход на аккаунт <name> с IP <address>'
# Уведомления о попытках входа
login-attempt:
enabled: true
message: '⚠ Попытка входа на аккаунт <name> с IP <address>'
# Уведомления о смене пароля
password-change:
enabled: true
message: '🔒 Пароль на аккаунте <name> был изменён'
📝 Пример полного конфига
enabled: true
display-name: '2FA в Telegram'
bot:
token: 'YOUR_BOT_TOKEN_HERE'
commands:
- ''
- '/привязать'
- '!привязать'
- '/привязка'
- '!привязка'
- '/link'
handle-valid-code-even-when-command-is-invalid: true
require-channel-subscription:
enabled: false
ids:
- -1001603471277
message: '⛔ Для использования бота вы должны подписаться на наш канал.'
messages:
invalid-action: '❓ Это действие больше неактуально.'
too-many-links-for-account: '⭕ Вы не можете привязать ещё больше игроков к этому аккаунту.'
successful-link: '✅ Вы успешно привязали аккаунт <name>!'
select-account: 'Выберите аккаунт:'
2fa-request-start: |-
⚠ На ваш аккаунт, <name>, пытаются войти с IP <address> (<city>, <country>).
**Тот, кто пытается войти, правильно ввёл ваш пароль!**
Если это не вы, отклоните и **смените пароль немедленно** (нажмите "сброс пароля")!
2fa-request-accept: '✅ Вы приняли вход на аккаунт <name> с IP <address> (<city>, <country>).'
2fa-request-decline: |-
⭕ Вы отклонили вход на аккаунт <name> с IP <address> (<city>, <country>).
Если это были не вы, смените пароль немедленно (нажмите "сброс пароля")!
2fa-request-cancel: |-
⭕ На ваш аккаунт, <name>, пытались войти с IP <address> (<city>, <country>).
Процесс был отменён - игрок не вошёл.
Если это были не вы, смените пароль немедленно (нажмите "сброс пароля")!
notification-login: |-
🔔 На ваш аккаунт, <name>, вошли, используя <methods>.
Вход был с IP <address> (<city>, <country>).
invalid-input: |-
❓ Вы хотели привязать аккаунт?
Зайдите на сервер, введите `/link telegram` и полученный код отправьте сюда.
unknown-code: |-
❓ Неизвестный код.
Зайдите на сервер и введите `/link telegram`, чтобы получить новый.
buttons:
status:
text: '📊 Статус'
callback: 'status'
accept:
text: '✅ Принять'
callback: 'accept'
decline:
text: '❌ Отклонить'
callback: 'decline'
reset-password:
text: '🔒 Сброс пароля'
callback: 'reset_password'
unlink:
text: '🔗 Отвязать'
callback: 'unlink'
show-in-messages: true
button-size: 'SMALL'
inline: true
linking:
max-links-per-account: 5
code-lifetime: '5 мин'
success-message: '✅ Аккаунт успешно привязан к Telegram!'
error-message: '❌ Ошибка привязки аккаунта.'
command:
aliases:
- 'link'
- 'привязать'
cooldown: '30 сек'
security:
2fa-timeout: '2 мин'
lockout-time: '10 мин'
max-failed-attempts: 3
show-location: true
ip-format: '<ip> (<city>, <country>)'
notifications:
login:
enabled: true
message: '🔔 Вход на аккаунт <name> с IP <address>'
login-attempt:
enabled: true
message: '⚠ Попытка входа на аккаунт <name> с IP <address>'
password-change:
enabled: true
message: '🔒 Пароль на аккаунте <name> был изменён'
🔧 Настройка бота
1. Создание бота
- Откройте Telegram и найдите @BotFather
- Отправьте команду
/newbot
- Следуйте инструкциям для создания бота
- Получите токен бота
2. Настройка бота
- Скопируйте токен в конфиг
- Добавьте бота в каналы (если требуется подписка)
- Настройте сообщения и кнопки
- Перезапустите сервер
3. Привязка аккаунтов
- Игрок вводит команду
/link telegram
на сервере - Получает код для привязки
- Отправляет код боту в Telegram
- Аккаунт привязывается к Telegram
⚠️ Важные замечания
- Telegram 2FA требует настройки бота и получения токена
- Бот должен быть добавлен в каналы как администратор (если требуется подписка)
- Рекомендуется использовать в сочетании с парольной авторизацией
- Не забудьте настроить безопасные таймауты и ограничения
- Регулярно проверяйте логи бота для выявления подозрительной активности