Плагин для серверов Майнкрафт с Geyser, который защищает UDP-подключения игроков Майнкрафт Бедрок от пакетных атак и некорректных датаграмм. Он отсекает вредоносный трафик до того, как тот нагружает сетевую часть сервера.
Возможности
- Блокирует пустые, повреждённые и слишком большие UDP-пакеты.
- Ограничивает частоту пакетов отдельно для каждого IP и для всех подключений сразу.
- Использует систему нарушений: краткий всплеск при переподключении, лаге или общем мобильном IP не приводит к бану.
- Временно банит IP за повторяющиеся подозрительные пакеты; баны сохраняются после перезапуска.
- При работе с IPv6 умеет банить всю подсеть
/64, чтобы нельзя было обойти блокировку сменой адреса. - Может не отвечать на Bedrock-пинги: сервер не появляется у сканеров и инструментов для пинг-флуда, но обычные подключения игроков продолжают работать.
- Ограничивает число отслеживаемых IP и удаляет самые старые неактивные записи, защищая сервер от переполнения памяти при атаках с подменой адресов.
- Подавляет поток предупреждений Geyser и Netty о повреждённых пакетах в консоли, блокируя источник.
- Показывает администраторам оповещения в игре, чате и консоли; IP в них можно скрывать.
Команды
/geyserguard status— состояние защиты./geyserguard stats— самые активные IP и заблокированные события./geyserguard bans— сохранённые баны с причиной и временем./geyserguard unban <IP>— снять временный бан с IP./geyserguard reload— перечитатьconfig.yml, включая белый список.
Права
geyserguard.admin— доступ ко всем командам управления.geyserguard.alerts— игровые оповещения об атаках.
Операторы получают права по умолчанию. Для выдачи прав игрокам подойдёт LuckPerms.
Настройка
В config.yml доступны лимиты packet-protection.pps-limit для одного IP и packet-protection.global-pps-limit для всего сервера. Параметры packet-protection.suspicious-hit-threshold, ban-seconds и packet-protection.rate-limit-strikes-before-ban задают условия и длительность блокировки.
packet-protection.block-ping-response отключает ответы на Bedrock-пинги, packet-protection.log-threshold определяет порог оповещений, а ipv6.group-by-subnet включает бан подсети IPv6. В whitelist добавляют доверенные IP и CIDR — например, адреса прокси или балансировщика. Плагин поддерживает английский и испанский языки сообщений.
Требования
Работает на серверах Spigot, Paper и Purpur, а также на прокси Velocity. Предназначен для серверов, принимающих игроков Майнкрафт Бедрок через Geyser; внешние зависимости не требуются.
