- Документация
- https://modrinth.com/plugin/xlogin
Назначение
xLogin — серверный плагин аутентификации для одиночных серверов и сетей с прокси. Он предназначен для регистрации и входа игроков, локального хранения учётных данных и дополнительных проверок в сетевой схеме. Клиентская сторона помечена как неподдерживаемая, серверная — как обязательная. Проект распространяется по MIT, автор выбранных версий — jn_willfrydev.
Категории проекта — оптимизация, хранение и утилиты. Для оценки важны топология сети, сохранность базы, корректность UUID и восстановление.
Скриншоты и внешний вид
Кому подходит
xLogin рассчитан на администраторов, которым нужна единая система входа без обязательного внешнего сервера базы данных. В описании заявлена работа как на самостоятельном сервере, так и в сети с прокси. Возможные сценарии:
• отдельный Bukkit-совместимый сервер;
• сеть с BungeeCord, Velocity или Waterfall;
• выделенное лобби аутентификации;
• локальное хранение в H2;
• автоматический вход для подтверждённых официальных аккаунтов в прокси-режиме;
• защита имён официальных аккаунтов от подмены.
Выбор следует сопоставить с режимом сервера, прокси и другими компонентами подключения.
Подтверждённые функции
Официальное описание указывает локальную потокобезопасную базу H2 в файле data.mv.db, а также создание резервных копий базы штатными внутриигровыми средствами. Внешняя MySQL для заявленного базового сценария не требуется.
Для сетей упомянуты совместимость с BungeeCord и Velocity, автоматическое определение режима, проверка UUID и перенаправление игрока из Auth-Lobby после успешного входа. Функция premium доступна только для сетей и прокси: игрок с официальным аккаунтом может включить автоматический вход, а проверка выполняется через прокси с обращением к валидации Mojang.
В части защиты заявлены BCrypt, противодействие подмене имени официального аккаунта и anti-bot CAPTCHA. Подробности CAPTCHA в фрагменте обрываются, поэтому её формат не подтверждён.
Совместимость и топология
В метаданных перечислены Bukkit, BungeeCord, Folia, Paper, Purpur, Spigot, Velocity и Waterfall. Версии Minecraft охватывают ветки от 1.12 до 1.21.11, включая промежуточные выпуски, а также обозначения 26.1, 26.1.1, 26.1.2 и 26.2. Такой перечень относится к проекту в целом и не подтверждает любую комбинацию конкретного JAR, ядра и прокси.
Перед установкой фиксируют:
• точную версию Minecraft и Java;
• серверное ядро;
• тип и версию прокси;
• расположение точки аутентификации;
• выбранный файл xLogin;
• наличие прокси-дополнения;
• способ резервного копирования базы.
Обязательные project dependencies не указаны. Для proxy mode официальный текст требует дополнение на прокси, но его название, версия и совместимость в основе отсутствуют.
Файлы и хеши
Зафиксированы два JAR:
• xLogin-v1.0.8-Pre.jar, версия v1.0.8-Pre, 7676090 байт;
• xLogin-v1.0.7.jar, версия v1.0.7, 7661368 байт.
SHA-512 предварительной версии: 66fc81832fc1aa1c10048215a1889638c005487bd6b270def8624dd263535b3005126d1123fe6b11d88e8b27b1545b5d526150a3db8fec357f044dacb119c9d2. SHA-1: c4220289b943a5be160e3d0f6b4002646ef99a0b.
SHA-512 версии v1.0.7: 81da0b5812e7cd0db584a0c31496b94bc63b358e865628b2f558605c34084b607f3cd9cbb471e5fb38410ab121cc3a6627b4e6ea39feada217c5cb979c65ec0e. SHA-1: e9839a980b9d08b66e69fc8cf0e2485b6396215a.
Файлы получены по официальному HTTPS, локально сверены по хешам и статически проверены по структуре и путям. Динамический запуск не проводился. Суффикс Pre у v1.0.8-Pre указывает на предварительное обозначение файла, но его точная стабильность и изменения относительно v1.0.7 в источнике не описаны.
Установка
JAR помещают в папку plugins совместимого компонента. Для одиночного сервера и прокси-сети порядок различается, поэтому сначала выбирают топологию. Безопасная базовая процедура:
• остановить серверы и прокси;
• сохранить предыдущий JAR, конфигурацию и data.mv.db;
• проверить размер и хеш нового файла;
• убрать старый JAR, исключив дубликаты;
• установить файл на предусмотренную сторону;
• для сети проверить включение proxy mode и наличие требуемого дополнения;
• запустить компоненты в контролируемом порядке;
• изучить журнал до допуска игроков.
Конфигурацию между разными топологиями переносят только после проверки маршрута входа.
Проверка результата
Тесты проводят на отдельных учётных записях без доступа к ценным данным. Минимальный набор:
• регистрация нового игрока;
• успешный и ошибочный вход;
• повторное подключение;
• перезапуск сервера с сохранением учётной записи;
• ограничение действий до аутентификации;
• переход из Auth-Lobby после успешного входа;
• отказ при неверной сетевой проверке;
• резервное копирование и тестовое восстановление H2;
• вход официального и неофициального профиля в прокси-сценарии;
• проверка premium-функции только в поддерживаемой сети.
Отдельно проверяют постоянство UUID и защиту имени официального аккаунта. Сопоставляют журналы всех узлов сети.
Ограничения и безопасность
BCrypt, CAPTCHA и проверка официального аккаунта — отдельные защитные механизмы, но не гарантия полной безопасности. Итог зависит от сетевой изоляции, настроек прокси, сохранности базы, прав персонала и актуальности компонентов.
В предоставленных данных не указаны:
• параметры стоимости BCrypt;
• политика длины и сложности паролей;
• лимиты попыток входа;
• срок блокировки;
• формат и частота CAPTCHA;
• шифрование резервных копий;
• правила миграции базы;
• точные версии прокси-дополнения.
Эти пробелы нельзя заполнять предположениями. Доступ к базе и копиям ограничивают, а восстановление проверяют до обновления.
Безопасное обновление
Перед обновлением создают согласованную копию конфигурации, data.mv.db, JAR и прокси-дополнения. Затем копию сети запускают изолированно и проверяют регистрацию, обычный вход, premium-сценарий, перенаправление, UUID и резервное восстановление.
Для перехода с v1.0.7 на v1.0.8-Pre нет списка изменений и правил миграции. Нужны тест на копии и готовый откат.
Откат
Для отката возвращают прежние JAR, конфигурацию, базу и прокси-дополнение. Совместимость схем H2 между версиями не описана.
После возврата проверяют:
• чтение прежних учётных записей;
• обычный и ошибочный вход;
• UUID одного тестового профиля;
• переход между лобби и backend;
• premium-сценарий;
• создание и восстановление копии.
До завершения проверки доступ игроков лучше ограничить, чтобы не смешивать записи двух версий.
Диагностика
Проблему локализуют по этапу соединения: прокси, аутентификационное лобби, xLogin, база или целевой сервер. Начинают с первой ошибки и синхронного времени журналов всех узлов.
Если регистрация проходит, но повторный вход нет, проверяют чтение data.mv.db и идентификатор профиля. Если вход успешен, но перенаправление не происходит, исследуют proxy mode и маршрут Auth-Lobby. Если premium-функция недоступна, сначала подтверждают, что используется сеть с прокси. При сбое после обновления сравнивают чистую установку и копию старой базы.
Лицензия
xLogin распространяется по MIT. При локализации сохраняют название, авторство jn_willfrydev и лицензионные сведения. Операционные рекомендации по защите сети и копированию базы не являются заявлениями автора.
FAQ
Нужна ли установка на клиент?
Нет. Клиентская сторона не поддерживается; компонент устанавливается на серверную инфраструктуру.
Требуется ли MySQL?
В описанном базовом режиме используется локальная H2-база data.mv.db, и необходимость MySQL не заявлена.
Где доступна premium-функция?
Только в сетях и прокси. Для одиночного сервера её доступность не подтверждена.
Что выбрать: v1.0.7 или v1.0.8-Pre?
v1.0.8-Pre обозначена как предварительная. Без списка изменений безопаснее оценивать её на копии и сохранять v1.0.7 для отката.
Достаточно ли BCrypt для защиты?
Нет. Хеширование паролей — один слой. Также важны сетевой маршрут, UUID, доступ к базе, резервные копии и ограничения попыток входа.
Что проверить после установки первым?
Регистрацию, ошибочный и успешный вход, сохранение после перезапуска, затем прокси-переходы, UUID и восстановление базы.