
EpicGuard
EpicGuard - мощная система защиты от ботов для серверов Minecraft. Плагин для Paper и Velocity с 8 настраиваемыми проверками, VPN-фильтрацией и автоматической блокировкой атак.
EpicGuard - это антибот плагин для серверов Minecraft, который решает одну из самых головных болей администраторов: набеги ботов. Если вы когда-нибудь сталкивались с тем, что на ваш сервер залетает сотня фейковых игроков, забивая слоты и лагая всё, то вы знаете, о чем речь. EpicGuard как раз для таких случаев.
Плагин работает на Paper 1.20.1+ (и всех его форках) и Velocity 3.3+. Требуется Java 17.
Что умеет EpicGuard
В плагине целых 8 проверок, которые можно гибко настраивать:
- Географическая проверка - можно заблокировать или разрешить подключения по стране или городу. Удобно, если ваш сервер только для русскоязычных.
- VPN/Proxy проверка - определяет, не заходит ли игрок через прокси или ВПН. Сервисы проверки настраиваются, есть кэширование.
- Проверка ника - блокирует ники по регулярным выражениям (regex). Например, можно отсеять все ники вида "Player12345".
- Проверка переподключения - требует, чтобы игрок перезашел с тем же адресом и ником. Боты такое обычно не умеют.
- Проверка списка серверов - игрок должен сначала пинговать сервер (добавить его в список серверов), прежде чем подключиться. Это стандартное поведение ванильного клиента.
- Проверка настроек - убеждается, что после подключения игрок отправляет пакет настроек (как это делает обычный клиент).
- Lockdown (блокировка) - временно блокирует новые подключения, если их слишком много. Спасает во время массированных атак.
- Проверка похожих ников (BETA) - находит ники, которые отличаются на пару символов.
- Лимит аккаунтов - ограничивает количество подключений с одного IP.
Дополнительные фишки
- Поддержка SQLite и MySQL - данные хранятся в базе.
- Живая статистика на actionbar - видно, идет ли атака прямо сейчас.
- Автоматический вайтлист - можно добавить IP в белый список, чтобы не проверять его каждый раз.
- Фильтр консоли - убирает мусорные сообщения в логах.
Команды и права
Чтобы использовать команды, выдайте себе право epicguard.admin. В зависимости от платформы есть алиасы вроде /guardvelocity или /epicguardpaper.
| Команда | Описание |
|---|---|
| /guard help | Показывает все доступные команды |
| /guard reload | Перезагружает конфиг и сообщения |
| /guard whitelist <add/remove> <ник/адрес> | Добавляет/убирает из белого списка |
| /guard blacklist <add/remove> <ник/адрес> | Добавляет/убирает из черного списка |
| /guard analyze <ник/адрес> | Показывает детальную информацию об адресе или нике |
| /guard status | Включает/выключает статистику атаки на actionbar |
| /guard save | Принудительно сохраняет данные в базу |
Про API
У EpicGuard есть API, но он пока не очень продвинутый. Можно получить доступ к менеджеру атак, проверить, идет ли атака, узнать количество подключений в секунду, получить страну игрока по IP. Пример:
EpicGuardAPI api = EpicGuardAPI.INSTANCE;
AttackManager attackManager = api.attackManager();
boolean isUnderAttack = attackManager.isUnderAttack();
int cps = attackManager.connectionCounter();
String countryId = api.geoManager().countryCode("127.0.0.1");
Важно знать про приватность
Плагин подключается к внешним сервисам:
- Скачивает базы Geolite2 (страны и города) при первом запуске и обновляет раз в неделю. Геолокация проверяется локально на вашем сервере.
- По умолчанию IP-адреса игроков отправляются на https://proxycheck.io/ для проверки на VPN/прокси.
- IP и связанные с ними ники хранятся в локальной базе в открытом виде (plain text).
- Плагин периодически проверяет последнюю версию на GitHub. Это можно отключить.
- Никаких метрик или сбора данных нет.
В целом, EpicGuard - это обновленная версия старого плагина для новых версий Paper и Velocity. Если ваш сервер страдает от ботов - это must-have. Скачайте EpicGuard и забудьте про рейды фейковых игроков.
