▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
LoginTo

LoginTo

Плагин LoginTo для Minecraft - это полноценное решение для аутентификации игроков на сервере. Поддерживает BCrypt-хэширование паролей, премиум-автовход, гибкую настройку сообщений и базу данных. Обеспечивает безопасность и удобство.

3.7/5(3)
66.2K
35

Что такое LoginTo?

LoginTo - это плагин для аутентификации на серверах Minecraft. Если у тебя сервер с пиратским доступом или просто хочешь защитить аккаунты игроков от кражи - это то, что нужно. Вместо стандартной ванильной системы, где любой может зайти под чужим ником, LoginTo требует пароль. Причём всё настраивается: от сообщений до типа базы данных.

Почему стоит выбрать LoginTo?

Плагин прост в установке, но при этом даёт мощные фишки:

  • Премиум-аутентификация - автовход для лицензионных игроков
  • Безопасное хэширование паролей через BCrypt
  • Логирование всех входов и регистраций
  • Гибкая конфигурация - подкрутишь под любой сервер

Собственно, главная идея - обезопасить сервер, не усложняя жизнь админу и игрокам.

Обновления

LoginTo активно обновляется. В версии 3.x упор идёт на стабильность и производительность. Баги фиксят, новые фичи добавляют - всё как надо.

Плагин

Конфигурация
  ConfigVersion: "1.9" # НЕ МЕНЯТЬ
# -------------------------------------------------------------------------------------------------- #
#                                                                                                    #
#                                       Конфигурация LoginTo                                         #
#                                                                                                    #
# -------------------------------------------------------------------------------------------------- #

commands-settings:
# Команды, которые можно использовать до входа (сам /login и /register всегда доступны, алиасы вроде /l и /r - нет)
pre-login-allowed-commands:
  - "l"
  - "r"

auth-security:

# Кикать игрока при неверном пароле?
kick-on-invalid-password: true
# Максимум попыток входа до кика
max-login-attempts: 3

# Кикать, если игрок долго не авторизуется?
kick-on-auth-timeout: true
# Секунд на авторизацию до кика
auth-timeout-seconds: 10

password-requirements:
# Требовать спецсимволы в пароле?
require-special-chars: false
# Список обязательных символов
required-char-list: ''

# Ограничения длины пароля
length-check:
  enabled: true
  min-length: 8
  max-length: 32

# Мир и телепортация
spawn-settings:
# Автотелепорт в точку при входе?
teleport-on-join: false

# Измерение для телепорта (world, world_nether, world_the_end)
target-dimension: 'world'

# Координаты точки спавна
spawn-coordinates:
  x: 0
  y: -64
  z: 0
  
# Возвращать игрока на его прошлую позицию после входа?
restore-previous-location: true

# Интеграции и вебхуки
integrations:

proxy:
  # Сервер, куда отправлять игрока после входа (например, 'lobby-1'). Оставь пустым, если не нужно.
  server-post-login: ""

discord:
  # Вебхуки и кастомные сообщения (поддерживается Discord Markdown и PAPI)
  # Переменные: %playerName%, %targetPlayer%
  
  register-webhook-url: ''
  register-message: "**%playerName%** завершил регистрацию"

  login-webhook-url: ''
  login-message: "**%playerName%** завершил вход"
  
  delete-account-webhook-url: ''
  delete-account-message: "**%playerName%** удалил аккаунт **%targetPlayer%**"

  password-change-webhook-url: ''
  password-change-message: "**%playerName%** сменил пароль"

# Хранилище
storage:

# Тип БД: sqlite, mysql, postgre, h2
# Менять только после полной перезагрузки сервера
storage-type: "sqlite"

database:
  # Данные для подключения (для sqlite/h2 меняй только имя)
  host: "localhost"
  port: 3306
  name: "LoginTo_DB"
  user: ""
  password: ""

# Премиум-система
premium:
# Включает автовход, команды /premium, /cracked и блокирует прокси-команды до входа.
# Требует прокси (Velocity/Bungee) с плагином. Если прокси и сервер на разных машинах или используешь Pterodactyl - ставь mysql.
enable-premium-features: false

storage:
  # Тип БД для общения между серверами (mysql или h2), рекомендуется mysql
  database-type: "h2"

  database:
    host: "localhost"
    # Если порт 0, будет стандартный порт БД (3306 для mysql, 9092 для h2)
    port: 0
    user: "sa"
    password: ""
    # Только для MySQL; H2 по умолчанию использует 'LoginTo_Sharing'
    database-name: "LoginTo_Sharing"

logging:
# Логировать всех входящих игроков?
logging: true

# Формат даты и времени
# Не используй пробел для времени, можно "hh-mm-ss dd-MM-yyyy", но не "hh mm ss dd MM yyyy"
# Если хочешь, чтобы игроки использовали /getlogs <user> без указания дня, формат даты должен оставаться "dd/MM/yyyy"
date-format: "HH:mm:ss dd/MM/yyyy"

plugin-utility:
# Проверять обновления при запуске?
enable-update-checker: true

# Показывать водяной знак 'Service offered by LoginTo'?
show-watermark: true

# Если false - плагин потребует отдельный PacketEvents. Если true - использует встроенный API.
# Рекомендуется ставить false и устанавливать PacketEvents отдельно, чтобы избежать проблем совместимости.
use-built-in-packetevents-api: true
Сообщения
    MessageVersion: "1.6" # НЕ МЕНЯТЬ
# -------------------------------------------------------------------------------------------------- #
#                                                                                                    #
#                                    Конфиг сообщений LoginTo                                        #
#                                                                                                    #
# -------------------------------------------------------------------------------------------------- #

register:
  # Сообщения при регистрации

  error:  

    # Когда игрок уже зарегистрирован
    already-registered: "Вы уже зарегистрированы!"

    # Пароль не содержит обязательные символы
    register-character-error: "Ваш пароль должен содержать эти символы: %characters%"
# Пароль слишком длинный или короткий
password-length: "Длина пароля должна быть от %min_length% до %max_length% символов"

# Пароли не совпадают
password-mismatch: "Пароли не совпадают!"

# Неправильное использование команды
register-usage: "Ошибка: Используйте /register <пароль> <подтверждение>"

Приглашение при входе для незарегистрированных

register-prompt: "Добро пожаловать! Используйте /register <пароль> <подтверждение> для регистрации."

То же, но с требованием символов

register-prompt-characters: "Добро пожаловать! Используйте /register <пароль> <подтверждение> для регистрации. Убедитесь, что пароль содержит один из этих символов: %characters%"

Успешная регистрация

register-success: "Регистрация завершена, приятной игры"

login:

Сообщения при входе

error:

# Игрок не зарегистрирован
not-registered: "Вы ещё не зарегистрированы!"

# Уже вошёл
already-logged-in: "Вы уже вошли."

# Неправильное использование команды
login-usage: "Ошибка: Используйте /login <пароль>"

# Неверный пароль
wrong-password: "Неверный пароль"

Приглашение для зарегистрированных

login-prompt: "Пожалуйста, используйте /login <пароль> для входа."

Успешный вход

login-success: "Вход выполнен! С возвращением."

delacc:

Удаление аккаунта

error:

# Игрок не существует
player-doesnt-exist: "Такой игрок не найден."

# Не указано подтверждение
delacc-not-confirmed: "Ошибка: Напишите 'confirm' после имени игрока."

# Неправильное использование
delacc-usage: "Использование: /delacc <ник> <confirm>"

Админ удалил аккаунт (для админа)

account-deleted: "Аккаунт успешно удалён."

Игроку, чей аккаунт удалили

admin-deleted-account: "Ваш аккаунт был удалён администратором. Перезайдите, чтобы создать новый."

changepassword:

Смена пароля

error:

# Неправильное использование
changepassword-usage: "Использование: /changepassword <старый_пароль> <новый_пароль>"

# Старый пароль неверен
old-password-wrong: "Старый пароль неверен. Если забыли - обратитесь к администратору."

Пароль изменён, игрок отключается

password-changed: "Ваш пароль изменён. Перезайдите и войдите снова."

cracked:

Команда /cracked

error:

# Уже в этом статусе
already-cracked: "Вы уже отмечены как cracked или premium пользователь."

Предупреждение

cracked-warn: "§l§6ПРЕДУПРЕЖДЕНИЕ:§c Вы используете команду cracked. Это значит, что вы зайдёте на сервер как пиратский пользователь. Это защищает ваш аккаунт от премиум-игроков, которые могут занять ваше имя.\nВведите §2/cracked§c для подтверждения."

Успешно

cracked-done: "Теперь вы пиратский пользователь."

premium:

Команда /premium

error:

# Уже премиум
already-premium: "Вы уже премиум-пользователь."

Предупреждение

premium-warn: "§l§6ПРЕДУПРЕЖДЕНИЕ:§c Если у вас пиратский аккаунт и вы переключаетесь на премиум, вы можете потерять прогресс, если имена не совпадают.\nВведите §2/premium§c для подтверждения."

Успешно

premium-done: "Теперь вы премиум-пользователь."

loginto-command:

Системные сообщения

error:

# Команда только для консоли
player-execute-console-command: "Эту команду может выполнять только консоль."

errors:

Общие ошибки

general:

# Нет прав
no-permission: "У вас нет прав для выполнения этой команды."

# Функция отключена
feature-not-enabled: "Эта функция сейчас отключена."

Ошибки до входа

activity-before-login:

# Команда до авторизации
oncommand-when-not-authenticated: "Пожалуйста, авторизуйтесь перед использованием команд."

# Чат до входа
chatting-before-login: "Вы должны войти, прежде чем писать в чат."

Ошибки входа

login-fail:

# Слишком много попыток
onkick-for-failed-login: "Слишком много неудачных попыток входа. Перезайдите и попробуйте снова."

# Тайм-аут
onkick-for-long-waiting: "Время авторизации истекло. Перезайдите и попробуйте снова."

# Кик при входе с таким же ником
onkick-for-joining-with-same-name: "Другой игрок с таким ником уже на сервере"
</details>

<details>
  <summary style="background-color: #4a4a4a; border-radius: 5px; margin-top: 20px; cursor:pointer;">
    Команды
  </summary>

  <div style="margin-top: 10px">

  <pre>/register &lt;пароль> &lt;подтверждение></pre>
  <p>Регистрирует новый аккаунт.<br>
  <strong>Алиасы:</strong> /r, /reg</p>
  <hr>

  <pre>/login &lt;пароль></pre>
  <p>Вход в аккаунт.<br>
  <strong>Алиасы:</strong> /l</p>
  <hr>

  <pre>/delacc &lt;игрок> &lt;confirm></pre>
  <p>Удаляет аккаунт игрока.<br>
  <strong>Право:</strong> OP (по умолчанию)</p>
  <hr>

  <pre>/changepassword &lt;старый_пароль> &lt;новый_пароль></pre>
  <p>Меняет пароль от аккаунта.</p>
  <hr>

  <pre>/premium [игрок]</pre>
  <p>Устанавливает премиум-статус себе или другому игроку.</p>
  <hr>

  <pre>/cracked</pre>
  <p>Переключает аккаунт в пиратский режим (отключает премиум-проверку).</p>
  <hr>

  <pre>/getlogs &lt;игрок> [дата: дд/ММ/гггг]</pre>
  <p>Показывает логи входа и регистрации игрока.</p>

  </div>
</details>

<details>
  <summary style="background-color: #4a4a4a; border-radius: 5px; margin-top: 20px; cursor:pointer;">
    Права
  </summary>

  <div style="margin-top: 10px">

  <pre>loginto.register</pre>
  <p>Разрешает использовать <code>/register</code>.<br>
  <strong>По умолчанию:</strong> Все</p>
  <hr>

  <pre>loginto.login</pre>
  <p>Разрешает использовать <code>/login</code>.<br>
  <strong>По умолчанию:</strong> Все</p>
  <hr>

  <pre>loginto.delacc</pre>
  <p>Разрешает удалять аккаунты через <code>/delacc</code>.<br>
  <strong>По умолчанию:</strong> OP</p>
  <hr>

  <pre>loginto.changepassword</pre>
  <p>Разрешает менять пароль через <code>/changepassword</code>.<br>
  <strong>По умолчанию:</strong> Все</p>
  <hr>

  <pre>loginto.premium.me</pre>
  <p>Разрешает устанавливать себе премиум-статус.<br>
  <strong>По умолчанию:</strong> Все</p>
  <hr>

  <pre>loginto.premium.other</pre>
  <p>Разрешает устанавливать премиум-статус другим через <code>/premium &lt;игрок></code>.<br>
  <strong>По умолчанию:</strong> OP</p>
  <hr>

  <pre>loginto.cracked</pre>
  <p>Разрешает переключаться в пиратский режим.<br>
  <strong>По умолчанию:</strong> Все</p>
  <hr>

  <pre>loginto.getlogs</pre>
  <p>Разрешает просматривать логи через <code>/getlogs</code>.<br>
  <strong>По умолчанию:</strong> OP</p>

  <hr>
  <pre>loginto.flag-banned-client</pre>
  <p>Игроки с этим правом получают сообщение о клиенте другого игрока (если клиент помечен).<br>
  <strong>Право для прокси</strong></p>

  </div>
</details>

## Важно знать

Если у тебя сервер на пиратке - LoginTo буквально must-have. Без него любой может зайти под ником твоего друга и натворить дел. Плагин решает эту проблему: пароли хранятся в захэшированном виде (BCrypt), так что даже если базу украдут - пароли не сольют.

Ещё удобно, что можно настроить автовход для лицензионных игроков - им не нужно каждый раз вводить пароль. А для пиратских - обязательная регистрация. Всё гибко.

Из нюансов: если используешь прокси (Velocity/Bungee) и хочешь премиум-фичи, придётся ставить плагин и на прокси, и на сервер. И лучше использовать MySQL, чтобы данные синхронизировались между серверами.

Скачать плагин LoginTo и попробовать на своём сервере - хорошая идея, если хочешь обезопасить игроков без лишнего геморроя.
Партнёрский материал

Сервер для плагина LoginTo - как у профи

Плагин LoginTo создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином LoginTo для друзей можно за пару минут - BungeeHost всё уже подготовил.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

26.3.x26.2.x26.1.x1.21.x1.20.x1.19.x1.18.x1.17.x1.16.x1.15.x1.14.x1.13.x1.12.x1.11.x1.10.x1.9.x1.8.x

Поддерживаемые окружения

Сервер

Ссылки

Создатели

Детали

Лицензия:
Опубликован:1 год назад
Обновлён:1 неделю назад
Главная