- Поддерживаемые версии
- 1.8
- 1.9
- 1.10
- 1.11
- 1.12
- 1.13
- 1.14
- 1.15
- 1.16
- 1.17
- 1.18
- 1.19
- 1.20
- Ядра и Прокси
- Spigot
- Paper
Описание: Это невероятно гибкий плагин на админ-пароль. У вас есть возможность самим настроить права, за которые игроку будет необходимо ввести админ-пасс и самое важное - установить каждому игроку свой личный админ-пасс. В плагине устранены все недочеты его предшественников!
Особенности: Главными особенностями стоит считать функцию добавления прав на проверку и создание каждому игроку личного админ-пароля! Всё вместе это создает фактически непреодолимый барьер для взломщика.
Каждая попытка входа админа может быть записана в логи в отдельном файле в папке плагина. Также может логгироваться каждое включение и выключение поагина.
Вы можете добавить список админских IP адресов и если кто-то захочет взломать аккаунт админа, к нему будет применено наказание.
Также есть возможность добавлять команды, которые игрок сможет писать еще до ввода админ-пароля, что удобно, если вы используете плагины по типу AuthMe.
Стоит сказать, что если игрок не записан в конфиге, но имеет админ-права, то при включенной функции punish, вы сможете наказать игрока, незаконно получившего админ-права как угодно.
Чужой админ-пасс использовать для входа кстати не выйдет.
Конфигурация:
Статистика bStats:
Особенности: Главными особенностями стоит считать функцию добавления прав на проверку и создание каждому игроку личного админ-пароля! Всё вместе это создает фактически непреодолимый барьер для взломщика.
Каждая попытка входа админа может быть записана в логи в отдельном файле в папке плагина. Также может логгироваться каждое включение и выключение поагина.
Вы можете добавить список админских IP адресов и если кто-то захочет взломать аккаунт админа, к нему будет применено наказание.
Также есть возможность добавлять команды, которые игрок сможет писать еще до ввода админ-пароля, что удобно, если вы используете плагины по типу AuthMe.
Стоит сказать, что если игрок не записан в конфиге, но имеет админ-права, то при включенной функции punish, вы сможете наказать игрока, незаконно получившего админ-права как угодно.
Чужой админ-пасс использовать для входа кстати не выйдет.
Конфигурация:
YAML:
# Основные настройки
main-settings:
# Форматирование текста.
# LEGACY - цвет через &, MINIMESSAGE - цвет через <цвет>
# MINIMESSAGE был добавлен в новых версиях (1.17+)
serialiser: LEGACY
# Если стоит true - сообщения будут отправляться по всей сети серверов которые стоят на прокси.
proxy: false
# Префикс плагина
prefix: '&f&l[&c&lЗащита&f&l]'
# Если указано false, то для ввода пароля нужно будет написать пароль в чат
use-command: true
# Команда ввода пароля. (указывается без / в начале) (по умолчанию - pas) (на spigot команда не регистрируется!)
pas-command: 'pas'
# Включить ли команды добавления новых игроков в конфиг
enable-admin-commands: false
# Отправлять ли анонимную статистику (советую не отключать)
enable-metrics: true
# Проверять ли на наличие обновлений (советую не отключать)
update-checker: true
# Интервал основной проверки в тиках (не трогайте, если не знаете, как это работает)
check-interval: 40
# Настройки шифрования паролей
encryption-settings:
# Включить ли шифрование
# При использовании шифрования пароль в data.yml необходимо будет указывать в уже зашифрованном формате и в отдельной графе encrypted-pass:
# Чтобы узнать как будет выглядеть пароль в зашифрованном виде можно использовать команду /usp encrypt <пароль>
# Однако, если включена опция auto-encrypt-passwords - в data.yml можно будет указать обычный пароль в старом формате pass: и плагин автоматически конвертирует его
enable-encryption: false
# Метод шифрования паролей (Поддерживаемые типы: BASE64, MD5, SHA224, SHA256, SHA384, SHA512, SHA3-224, SHA3-256, SHA3-384, SHA3-512)
# BASE64 - Это "шифрование" не обеспечивает защиту данных; это просто метод преобразования данных в другой формат для передачи по сети или хранения.
# Используйте BASE64 только в случае, если боитесь "случайно показать файл с паролями на демке" и вам не нужно конкретно скрывать данные или же для усложнения шифрования
# MD5 - Старый метод шифрования, подверженный коллизиям (случай, когда 2 разных значения в зашифрованом виде дают одинаковые значени)
# Используйте MD5 в случае, если хотите скрыть данные и в то же время что-то легкое
# SHA256 и прочие SHA - разновидности алгоритма SHA
# Используйте SHA256 если хотите надежно скрыть пароли без возможности расшифровки и SHA512 для еще более эффективного шифрования
# SHA3-256 и прочие SHA3 - аналог обычного SHA с измененным алгоритмом шифрования.
# Используйте SHA3 в случае если желаете сделать нестандартное и одновременно сильное шифрование
# Вы можете использовать 2 и более шифрования одновременно для большей сохранности ваших паролей, чтобы их нельзя было так просто сбрутить
# Шифрование будет выполняться по порядку 1;2;3 и так далее. Важно - глубокое шифрование может занять много времени, по этому не используйте их много
# Для наложения соли (рандомной строки к уже существующему паролю) используется SALT. Накладывать можно лишь 1 раз
encrypt-method: 'BASE64;SALT;MD5'
# Если вы использовали какой-либо метод шифрования и по какой-либо причине решили его заменить - вы можете указать его здесь, чтобы не потерять данные
old-encrypt-methods: []
# Длинна динамически-генерируемой соли. Чем она больше, тем более эффективно защищены пароли.
salt-length: 24
# Включить ли автоматическое шифрование всех имеющихся паролей из файла data.yml при запуске и рестарте плагина
# Данная функция автоматически переведет все пароли из формата pass: в формат encrypted-pass:, зашифровав имеющиеся на данный момент пароли
# Если данных файле много - автоматическое шифрование может занять много времени! Отключите в случае возникновения проблем.
auto-encrypt-passwords: true
# Настройки файлов
file-settings:
# Имя файла с данными игроков. (по умолчанию - data.yml)
data-file: 'data.yml'
# Имя файла с логами. (по умолчанию - log.yml)
log-file: 'log.yml'
# Если эта настройка включена, то вам нужно будет указать полный путь до файла
# Пример: root/server/plugins/UltimateServerProtector/data.yml
use-full-path: false
# Путь к файлу data.yml
data-file-path: '/root/server/plugins/UltimateServerProtector/'
# Путь к файлу log.yml
log-file-path: '/root/server/plugins/UltimateServerProtector/'
# Настройки дополнительных блокировок
blocking-settings:
# Блокировать ли выбрасывание предметов
block-item-drop: true
# Блокировать ли подбор предметов
block-item-pickup: true
# Блокировать ли таб-комплит (работает против /ver + tab)
block-tab-complete: true
# Делать ли игрока бессмертным во время ввода пароля
block-damage: true
# Блокировать ли возможность наносить вред мобам и игрокам во время ввода пароля
block-damaging-entity: true
# Блокировать ли возможность открывать инвентари во время ввода пароля (меню и т.п.)
block-inventory-open: false
# Скрывать ли игрока из таб листа при вводе пароля
hide-on-entering: true
# Скрывать ли других игроков от человека вводящего пароль
hide-other-on-entering: true
# Настройки сессии
session-settings:
# Сохранять ли данные об игроке чтобы ему не нужно было вводить админ пас при перезаходе
session: true
# Удалять ли данные об игроке через некоторое время
session-time-enabled: false
# Время через которое данные о зарегистрированном игроке удалятся в секундах (отсчет идет от момента ввода пароля)
session-time: 21600 #(6 часов)
# Настройки наказаний
punish-settings:
# Включить ли наказания за неверно введенный админ-пароль
enable-attempts: true
# Максимальное число попыток ввода админ-пароля
max-attempts: 3
# Включить ли время на ввод админ-пароля
enable-time: true
# Время за которое игрок будет должен ввести админ-пароль в секундах
time: 60
# Настройка боссбара (работает только, если включено время для входа)
bossbar-settings:
# Включить ли боссбар
enable-bossbar: true
# Цвет боссбара (PINK, BLUE, RED, GREEN, YELLOW, PURPLE, WHITE)
bar-color: RED
# Тип боссбара (SOLID, SEGMENTED_6, SEGMENTED_10, SEGMENTED_12, SEGMENTED_20)
bar-style: SEGMENTED_12
# Настройки повышенной безопасности
secure-settings:
# Применять ли наказания к операторам которых нет в списке
enable-op-whitelist: false
# Применять ли наказания к тем, кто не находится в конфиге, но имеет админ-права
enable-notadmin-punish: false
# Применять ли наказания к людям, которые имеют запрещенные права
enable-permission-blacklist: false
# Включить ли IPWhitelist для администраторов
enable-ip-whitelist: false
# Включить ли возможность использовать команду /usp только из консоли
only-console-usp: false
# Выключать ли сервер, если отключается плагин
shutdown-on-disable: true
# Выключать ли сервер только если включены плугмано-подобные плагины
shutdown-on-disable-only-if-plugman: true
# Разрешить ли ряду игроков входить в игру без админ пароля (отключено по умолчанию и небезопасно)
enable-excluded-players: false
# Вызывать ли ServerProtectorPasswordEnterEvent при вводе пароля игроком? (Отключено по умолчанию в целях безопасности)
call-event-on-password-enter: false
# Настройки показа сообщений
message-settings:
# Задержка между авто-сообщениями и тайтлами в секундах
delay: 2
# Включить ли сообщения на весь экран
send-titles: true
# Включить ли оповещения для администраторов
enable-broadcasts: true
# Включить ли оповещения для консоли
enable-console-broadcasts: true
# Настройки звуков, которые будут проигрываться при вводе команд/действиях
sound-settings:
# Включить ли звуки при командах
enable-sounds: true
# Звук при поимке админа с правами (формат - ЗВУК;ГРОМКОСТЬ;ТОНАЛЬНОСТЬ)
on-capture: ENTITY_ITEM_BREAK;1.0;1.0
# Звук при неверном пароле
on-pas-fail: ENTITY_VILLAGER_NO;1.0;1.0
# Звук при верном пароле
on-pas-correct: ENTITY_PLAYER_LEVELUP;1.0;1.0
# Настройка эффектов, которые даются до ввода пароля
effect-settings:
# Включить ли эффект, который будет выдаваться админу, до ввода пароля
enable-effects: true
# Какие эффекты накладывать на игрока (ЭФФЕКТ;УРОВЕНЬ)
effects:
- 'BLINDNESS;3'
# Настройки логгирования
logging-settings:
# Записывать ли в файл удачные/неудачные попытки ввода пароля
logging-pas: true
# Записывать ли в файл присоединения игроков с админ-правами
logging-join: true
# Записывать ли в файл включение и отключение плагина
logging-enable-disable: true
# Записывать ли в файл исполнение команд плагином из раздела ниже?
logging-command-execution: true
# Команды, которые будут применяться к нарушителям
commands:
# Команды, которые будут применяться к тем, у кого есть админ-права, но кого нет в конфиге
not-in-config:
- 'kick %player% Вас нет в списке администраторов!'
- 'deop %player%'
# Команды, которые будут применяться к тем, у кого есть админ-права, но он не прописан в вайтлисте
not-in-opwhitelist:
- 'deop %player%'
#- 'ban %player% Вам нельзя иметь права оператора!'
# Команды, которые будут применяться к тем, кто имеет запрещенные права (отключено по умолчанию)
have-blacklisted-perm:
- 'lp user %player% permission clear'
#- 'ban %player% Вам нельзя иметь такие права!'
# Команды, которые будут применяться к тем, кто вошел с админ-правами, указан в конфиге, но имеет не админский IP (отключено по умолчанию)
not-admin-ip:
- 'kick %player% Ваш IP не находится в вайтлисте'
#- 'deop %player'
# Команды, которые будут применяться к тем, кто ввел пас неверно за отведенные ему попытки
failed-pass:
- 'ban %player% Вы ввели админ-пароль неверно, ваш аккаунт заморожен'
- 'deop %player%'
# Команды, которые будут применяться к тем, кто не ввел пас за отведенное время
failed-time:
- 'ban %player% Вы не успели ввести админ-проль за отведенный срок'
- 'deop %player%'
# Права, за которые игроку будет необходимо ввести админ-пароль (не стесняйтесь добавлять свои!)
permissions:
- '*'
- 'bukkit.*'
- 'minecraft.*'
- 'essentials.*'
- 'cmi.*'
- 'worldguard.*'
- 'worldedit.*'
- 'fawe.*'
- 'permissions.*'
- 'luckperms.*'
- 'luckperms.editor'
- 'luckperms.applyedits'
- 'citizens.*'
- 'citizenscmd.*'
- 'znpcs.*'
- 'holograms.*'
- 'multiverse.*'
- 'coreprotect.*'
- 'mycommand.*'
- 'towny.*'
- 'matrix.*'
- 'vulcan.*'
- 'dh.admin'
- 'ls.admin'
- 'fawe.admin'
- 'authme.admin'
- 'protocol.admin'
- 'placeholderapi.admin'
- 'plugman.admin'
- 'plugman.download'
- 'serverprotector.admin'
# Права, которые никто, кроме игроков из раздела excluded-players, не сможет иметь (отключено по умолчанию.)
blacklisted-perms:
- '*'
# Команды, которые можно вводить до ввода админ-пароля (указывать вместе с /)
allowed-commands:
- '/l'
- '/login'
- '/reg'
- '/register'
- '/captcha'
# Каким игрока разрешно иметь ОП права
op-whitelist:
- Overwrite
- test99999
# С каких IP и каким игрокам разрешено входить с админ-правами
# Вы можете указать только часть IP адреса, чтобы разрешить вход людям с динамическим IP. К примеру 1.2.3.4 -> 1.2.3.*
ip-whitelist:
# Игрок 1
test99999:
- 127.0.0.1
- 0.0.0.0
# Игрок 2
test123123:
- 228.13.37.*
# Какие игроки будут исключены из проверок (каждой проверке - свой тип)
excluded-players:
# Игроки, которым не нужно будет вводить админ-пароль
admin-pass:
- test99999
- test123123
# Игроки, которые не будут проверяться на наличие в op-whitelist
op-whitelist:
- test99999
- test123123
# Игроки, которые не будут проверяться на наличие в ip-whitelist
ip-whitelist:
- test99999
- test123123
# Игроки, которым можно будет иметь заблокированные права
blacklisted-perms:
- test99999
- test123123
YAML:
# Сообщения которые будет выводиться людям при вводе команды и при наличии админ-прав
msg:
message: '%prefix% &fУ вас обнаружены админ-права. Вы должны ввести админ-пароль!'
incorrect: '%prefix% &cВведенный тобой пароль неверен!'
correct: '%prefix% &aПароль верный. Добро пожаловать на сервер.'
noneed: '%prefix% &fВам не нужно вводить админ-пароль или он уже был введен.'
cantbenull: '%prefix% &fПас не может быть пустым.'
playeronly: '%prefix% &fТолько для игроков'
# Оповещения для консоли и администраторов сервера
broadcasts:
failed: '%prefix% &fАдминистратор &3%player% &fввел админ-пас &cнеудачно! &fIP адрес: &c%ip%'
passed: '%prefix% &fАдминистратор &3%player% &fввел админ-пас &aуспешно! &fIP адрес: &c%ip%'
joined: '%prefix% &fАдминистратор &3%player% &fвошел в игру. &fIP адрес: &c%ip%'
captured: '%prefix% &fИгрок &3%player% &fбыл пойман с админ-правами! &fIP адрес: &c%ip%'
disabled: '%prefix% &6&lВнимание! &fПлагин был отключен!'
# Как сообщения будут отображаться в логах
log-format:
enabled: '%date% [UltimateServerProtector - плагин включён]'
disabled: '%date% [UltimateServerProtector - плагин выключён]'
failed: '%date% Администратор %player% ввел админ-пас неудачно! IP адрес: %ip%'
passed: '%date% Администратор %player% ввел админ-пас успешно! IP адрес: %ip%'
joined: '%date% Администратор %player% вошел в игру. IP адрес: %ip%'
captured: '%date% Игрок %player% был пойман с админ-правами! IP адрес: %ip%'
# Сообщения которые будут высвечиваться на экране
titles:
message: '&e&l⚠ &c&lЗащита &e&l⚠;&fОбнаружены админ-права! Вводи админ-пароль!;10;60;15'
incorrect: '&e&l⚠ &c&lЗащита &e&l⚠;&cПароль неверен!;10;60;15'
correct: '&e&l⚠ &c&lЗащита &e&l⚠;&aПароль верный. Добро пожаловать.;10;60;15'
# Сообщение в босс-баре
bossbar:
message: '&fОсталось: &c%time% секунд'
# Сообщение при вводе команды /usp (админ-команд)
uspmsg:
consoleonly: '&cДанная команда может быть исполнена только из консоли!'
playeronly: '&cДанная команда может быть исполнена только игроком!'
logout: '&aВаша сессия была сброшена'
reloaded: '&aПлагин перезагружен'
rebooted: '&aПлагин перезапущен'
playernotfound: '&cАккаунт %nick% не найден в системе!'
alreadyinconfig: '&aДанный аккаунт уже находится в конфиге'
notinconfig: '&cДанный аккаунт не находится в конфиге'
playeradded: '&aИгрок %nick% успешно добавлен'
playerremoved: '&aИгрок успешно удалён'
ipadded: '&aIP %ip% успешно добавлен'
setpassusage: '&f/%cmd% setpass (ник) (пароль)'
addopusage: '&f/%cmd% addop (ник)'
addipusage: '&f/%cmd% addip (ip)'
rempassusage: '&f/%cmd% rempass (ник)'
remopusage: '&f/%cmd% remop (ник)'
remipusage: '&f/%cmd% rempip (ip)'
usage: '&7&l> &7Использование:'
usage-logout: '&6/%cmd% logout&7 - завешить сессию'
usage-reload: '&6/%cmd% reload&7 - перезагрузить конфиг'
usage-reboot: '&6/%cmd% reboot&7 - перезапустить плагин'
usage-setpass: '&6/%cmd% setpass (ник) (пароль) &7- установить пароль игроку'
usage-rempass: '&6/%cmd% rempass (ник) &7- удалить пароль игроку'
usage-addop: '&6/%cmd% addop (ник) &7- добавить игрока в op-whitelist'
usage-remop: '&6/%cmd% remop (ник) &7- удалить игрока из op-whitelist'
usage-addip: '&6/%cmd% addip (ник) (ip) &7- добавить игрока и его ip в ip-whitelist'
usage-remip: '&6/%cmd% remip (ник) (ip) &7- удалить игрока и его ip из ip-whitelist'
otherdisabled: |-
&7Прочие команды отключены.
&7Для их включения выставьте &6enable-admin-commands: &atrue
YAML:
# Уникальные пароли для игроков
data:
Overwrite: # игрок 1
pass: '123123' # админ-пасс игрока 1
test99999: # игрок 2
pass: '321321' # админ-пасс игрока 2
Статистика bStats:
- Команды и права
- Разрешения:
serverprotector.protect - при наличии просит игрока ввести админ-пароль. Вставлен в плагин для того, чтобы вам не пришлось указывать лишний пермишн в конфиге.
serverprotector.admin - позволяет использовать команду /usp и видеть оповещения об успешных/провальных попытках ввода пароля
Команды:
/pas <пароль> - необходимо иметь админ-права или ОП, чтобы ввести её.
(эту команду вы можете изменить в конфиге)
/usp reload - команда перезагрузки конфига
/usp reboot - команда перезапуска плагина
Админ команды, которые можно включить в конфиге:
/usp setpass (ник) (пас) - добавить игрока и его пас в конфиг
/usp addop (ник) - добавить игрока в список операторов
/usp addip (ip) - добавить IP в adminipwhitelist
/usp rempass (ник) - удалить пароль игрока
/usp remop (ник) - удалить игрока из списка операторов
/usp remip (ip) - удалить IP из adminipwhitelist
Насчет безопасности - я бы сказал напротив, менее безопасно в нашем контексте, но всё же аддон на mysql у меня есть. Выложу когда-нить в паблик, а пока - на бусти