UltimateServerProtector - плагин на уникальный админ-пароль для каждого игрока!

Для ядра UltimateServerProtector - плагин на уникальный админ-пароль для каждого игрока! 33.0

Нет прав для скачивания
Поддерживаемые версии
  1. 1.8
  2. 1.9
  3. 1.10
  4. 1.11
  5. 1.12
  6. 1.13
  7. 1.14
  8. 1.15
  9. 1.16
  10. 1.17
  11. 1.18
  12. 1.19
  13. 1.20
Ядра и Прокси
  1. Spigot
  2. Paper
Описание: Это невероятно гибкий плагин на админ-пароль. У вас есть возможность самим настроить права, за которые игроку будет необходимо ввести админ-пасс и самое важное - установить каждому игроку свой личный админ-пасс. В плагине устранены все недочеты его предшественников!

Особенности: Главными особенностями стоит считать функцию добавления прав на проверку и создание каждому игроку личного админ-пароля! Всё вместе это создает фактически непреодолимый барьер для взломщика.

Каждая попытка входа админа может быть записана в логи в отдельном файле в папке плагина. Также может логгироваться каждое включение и выключение поагина.

Вы можете добавить список админских 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:
UltimateServerProtector.svg
Исходный код
https://github.com/Overwrite987/UltimateServerProtector
Команды и права
Разрешения:
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
Автор
Overwrite
Скачивания
373
Просмотры
17 548
Первый выпуск
Обновление
Оценка
5.00 звёзд 6 оценок

Другие ресурсы пользователя Overwrite

Поделиться ресурсом

Последние обновления

  1. 33.0

    Улучшена защита от сторонних проникновений. Ранее любой плагин, использующий API мог без труда...
  2. 32.1

    Исправлен баг с ошибкой при входе. Исправлен номер версии.
  3. 32.0

    Теперь плагин работает на java 17 и выше! Исправлен критический баг с ipwhitelist, который не...

Последние рецензии

Жду поддержки датабаз.
Не знаю зачем, но это же модно и молодёжно сейчас, а ещё вроде как безопаснее
Overwrite
Overwrite
Уже есть.
Насчет безопасности - я бы сказал напротив, менее безопасно в нашем контексте, но всё же аддон на mysql у меня есть. Выложу когда-нить в паблик, а пока - на бусти
вайт лист на запрещённые права как то криво работает, а так хороший плагин
Считаю что плагин имеет право получить оценку в виде 5 звёзд. Имеет вполне понятную и важную функцию, да ещё и за "спасибо". Работает исправно, никаких проблем не было замечено. Ну тут уж грех ставить оценку ниже. Спасибо за плагины!)
Отличный плагин! даже если найдут уязвимость получат опку сразу забанит этот чудесный плагин
А что если игрок находясь на сервере получит каким-нибудь образом опку, то что с этим будет делать плагин?
Overwrite
Overwrite
Если наказания на отсутствие в конфиге включены - сделает то, что прописано в разделе punish. Если отключены - заставить вводить пас.
Весьма хороший плагин, качественно сделан.
Может и не всё есть что хотелось бы, ну не беда.
Overwrite
Overwrite
А чего нет - то будет в обновах ;)
Назад
Сверху Снизу