- Баллы
- 173
- Имя в Minecraft
- linkinkov
Версия плагина: 1.0
Под версию сервера: 1.7-1.11.2 (может и на более ранних версиях будет работать)
В чем суть?
Цель была в создании простого плагина на проверку входящего игрока по IP. Более того, плагин изначально предназначался для работы в связке с сайтом, поэтому в текущей версии и нет ни одной команды, как и permission. При входе плагин проверяет в бд наличие игрока с его ником, если в бд есть игрок, который входит, то производится сверка IP с тем, что имеется в БД. Проверка производится только на имеющихся записях, а не на всех игроках, так как в первую очередь ориентирована она для защиты администраторов, модерации от взлома. Если имеющийся в базе игрок входит под левым IP, его не пускает на сервер и выполняется указанная в конфиге команда. К примеру по умолчанию там блокировка IP, у меня на своих проектах стоит - команда, которая отправляет сообщение в Telegram
Особенности:
Пример таблицы listip:
Пример таблицы errorcheckip:
Будущие изменения:
Под версию сервера: 1.7-1.11.2 (может и на более ранних версиях будет работать)
В чем суть?
Цель была в создании простого плагина на проверку входящего игрока по IP. Более того, плагин изначально предназначался для работы в связке с сайтом, поэтому в текущей версии и нет ни одной команды, как и permission. При входе плагин проверяет в бд наличие игрока с его ником, если в бд есть игрок, который входит, то производится сверка IP с тем, что имеется в БД. Проверка производится только на имеющихся записях, а не на всех игроках, так как в первую очередь ориентирована она для защиты администраторов, модерации от взлома. Если имеющийся в базе игрок входит под левым IP, его не пускает на сервер и выполняется указанная в конфиге команда. К примеру по умолчанию там блокировка IP, у меня на своих проектах стоит - команда, которая отправляет сообщение в Telegram

Особенности:
- Все данные хранятся в MySQL базе данных. Тестировал на удаленной БД, просадки в производительности нет. Я не силен в потоках, буду рад помощи.
- Сверка происходит по нику, хотя в новой версии будет по UUID.
- Работает быстро, при проблемах с коннектом к MySql может закрыть сервер или пускать всех.
db:
url: jdbc:mysql://localhost:3306/dbname
username: username
password: password
#Название таблицы со списком игроков для проверки
table_list: listip
#Название таблицы со списком IP не прошедших проверку
table_error: errorcheckip
options:
# Если проблемы с подключением к бд
# true = когда бд не доступна, то кикает всех игроков и не дает войти
# false = когда бд не доступна, то пускает всех
kick-if-db-error: true
# Команда что будет исполняться, если входит игрок с неверным IP. Где %s - заменяется на ник
ban-cmd: ban-ip %s
url: jdbc:mysql://localhost:3306/dbname
username: username
password: password
#Название таблицы со списком игроков для проверки
table_list: listip
#Название таблицы со списком IP не прошедших проверку
table_error: errorcheckip
options:
# Если проблемы с подключением к бд
# true = когда бд не доступна, то кикает всех игроков и не дает войти
# false = когда бд не доступна, то пускает всех
kick-if-db-error: true
# Команда что будет исполняться, если входит игрок с неверным IP. Где %s - заменяется на ник
ban-cmd: ban-ip %s
Пример таблицы listip:
Пример таблицы errorcheckip:
Будущие изменения:
- Проверка будет производится только по UUID.
- Добавлю внутриигровые команды для добавления, удаления игроков из БД.
- Файл переводов сделаю удобнее и наверно разберусь с потоками.