1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [SEC] BotNagibator v0.3 - простая защита от ботов [1.7.9 / 1.8.3]

Тема в разделе "Неподтвержденные плагины", создана пользователем InterVi, 25 сен 2015.

  1. Автор темы
    InterVi

    InterVi Старожил Пользователь

    Баллы:
    173
    BotNagibator
    Версия: 0.3
    Под версию сервера:
    • 0.1 под 1.7.9
    • 0.3 под 1.8.3
    • BotNagibatorBungee под BungeeCord #1083 и старше
    Простая защита от ботов, для прохождения проверки игроку требуется ударить блок / моба. Как именно устроить проверку - на ваше усмотрение. Включается только в момент атаки (можно сделать постоянно включенной). Есть белый список ip, чтобы игроки не проходили проверку много раз.

    Не гарантирует абсолютную безопасность, так как все зависит от возможностей вашего железа. Предположительно легко обходится, если не лень писать обход.

    На тестах было замечено, что нагрузка во время атаки не превышает по 40% на всех ядрах. Атаковал гидрой, без использования прокси, скорость примерно > 20 ботов в секунду. Память жрется приемлемо, в пределах 300мб на банжу и 300мб на фильтр-сервер.

    В архиве содержится:
    • BotNagibator.jar для фильтр-сервера (в нем запакован guid.txt с описанием установки MySQL)
    • BotNagibator1.7.jar, версия 0.1 кривая (кому надо 0.3 подпилите чтобы в 1.7 работало)
    • BotNagibatorBungee для BungeeCord

    Установка
    BotNagibator кладем в папку плагинов фильтр-сервера, это обычный сервер Spigot с пустой картой, где в пустоте находится ваша небольшая постройка. Как создать пустой мир описано здесь. В настройках сервера выключите спаун мобов, дальность прорисовки на 2 чанка (при 1 мобы невидимы), отключите ад, край и все лишнее.

    BotNagibatorBungee кладем в папку плагинов BungeeCord. При настройке банжи желательно выставить force_default_server на true, где дефолтным сервером прописан фильтр-сервер. В последней версии после багофиксов правильное распределение игроков во время атаки не тестировалось, предположительно данную опцию можно не включать.

    Небольшой гайд по настройке банжи тут. Описывать не буду - сами разбирайтесь, все настройки названы понятно, есть офф сайт с описаниями каждой опции.

    Установка MySQL в Linux
    Внимательно просмотрите, это мой пример настройки под себя. Вы можете выкинуть некоторые команды.
    Код:
    apt-get install mysql-server mysql-client
    echo skip-character-set-client-handshake >> /etc/mysql/my.cnf
    echo character-set-server = utf8 >> /etc/mysql/my.cnf
    echo init-connect='SET NAMES utf8' >> /etc/mysql/my.cnf
    echo collation-server=utf8_general_ci >> /etc/mysql/my.cnf
    echo skip-innodb >> /etc/mysql/my.cnf
    echo skip-bdb >> /etc/mysql/my.cnf
    echo skip-networking >> /etc/mysql/my.cnf
    nano /etc/init.d/rc add in top: ulimit -s 1024
    service mysql restart
    Создание базы с нужной таблицей
    Код:
    mysql -u username -p
    SET names utf8;
    CREATE DATABASE dbname;
    USE dbname
    CREATE TABLE nicks (name VARCHAR(200));
    exit
    Настройка крона для чистки данных
    crontab -e
    Код:
    @midnight rm -rf /home/bungee/empty/playerdata/* && rm -rf /home/bungee/empty/stats/*
    @weekly find /home/bungee/logs/* -type f -name "*.gz" -delete >> /home/bungee/logs/clearlog.log
    Данные игроков чистятся раз в сутки, логи раз в неделю. Пути подставляйте свои.

    Настройка
    !!! ВАЖНО!!!
    Эти опции под нагрузкой не работают:
    • kickfastcom
    • iplimit
    safecon и kickfastcheck можно не включать.
    Чем выше maxcon, тем меньше нагрузка (странности).

    Настройки MySQL задавайте такие, какие вбивали при установке MySQL-сервера. При первом старте плагина подключение к MySQL не происходит воизбежание крашей.

    Использование
    /bnb-reload - для банжи, перезагружает конфиг (перм botnagibatorbungee.reload)
    /bnb - для фльтр-сервера, список команд

    Чтобы поработать на фильтр-сервере, нужно OPнуть себя. Проверку проходить не потребуется, все запреты не будут действовать. Можно убивать заданного для прохождения проверки моба, есть команда на убийство всех мобов в мире.

    Лог правок
    • v0.1 - приватный релиз, тестирование
    • v.0.2 - большой багофикс
    • v0.3 - большой багофикс, публичный релиз

    Скачать
    зеркало 1 / зеркало 2
    Просьба не лупить мой сервер, мы все равно закрываемся и все хотели бы доиграть спокойно.
     
    Последнее редактирование: 25 сен 2015
  2. Juice987

    Juice987 Активный участник Пользователь

    Баллы:
    76
    Спасибо. Забрал
     
  3. slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну а смысл от этого? Если твою банджу тупо ушатают ботами, если захотят положить.
     
  4. Автор темы
    InterVi

    InterVi Старожил Пользователь

    Баллы:
    173
    Все зависит от железа. Гидра например не смогла, нужно что-то помощнее, чтобы в 20 потоков и чтобы комп / инет это тянул. Школьникам такие атаки не под силу. На последнем тесте гидрой была 10-20% нагрузка на 2 ядра, вообще фигня. Это у меня хост так себе, а если 4ггц с мощным каналом вообще запаришься ложить.
     
  5. slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну как. Есть бот у которого 10к конектов в секунду. Если поставить 200 ботов и начать реконектиться постоянно то банджа тупо ляжет.
     
  6. Автор темы
    InterVi

    InterVi Старожил Пользователь

    Баллы:
    173
    Ну так под него комп нужен хороший, у школьников редко такое есть. Плюс им надо прокси собрать, настроить это все. Тем более если бот приватный вообще нечего парится. А кому приспичит пусть пилят свою банжу, либо фаерволл с фильтром коннектов.

    Я к этому всему хотел добавить анализатор для бана ip по ipset, но теперь уже руки не дойдут.

    Добавил в описание настройку крона для чисток.
    Вообще, я же не писал что это волшебная защита от атак любой мощности. Для небольших серверов этого хватит вполне, ведь нормальных бесплатных аналогов нет.
     
  7. slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну против школьных ботов хватит обычного сервера с порталом.
     
  8. FYNTIK1996

    FYNTIK1996 Активный участник Пользователь

    Баллы:
    76
    Skype:
    fynjy9913
    Имя в Minecraft:
    FynTiK
    зазазза вчера банжи офнули коннектами мне)
     
  9. GameGuardSU

    GameGuardSU Активный участник Пользователь

    Баллы:
    68
    Имя в Minecraft:
    GameGuard
    По нашей статистике ежедневно поступают атаки различной мощности, от 1k/s и вплоть до 20k/s - а все потому, что кое-кто "слил" fuckbot'a в общий доступ.
     
  10. BestMark

    BestMark Старожил Пользователь

    Баллы:
    103
    Skype:
    BestMarkBukkit
    Имя в Minecraft:
    BestMark
    BotNagibator - топ защита. GameGuard до него ещё далеко!
     
  11. Автор темы
    InterVi

    InterVi Старожил Пользователь

    Баллы:
    173
    Со среднего компа реально им такую "защиту" завалить?
     
  12. slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Его бот почти ничего не жрёт.
     
  13. GameGuardSU

    GameGuardSU Активный участник Пользователь

    Баллы:
    68
    Имя в Minecraft:
    GameGuard
    VPS за 200 рублей выдает 20к\с
     
  14. DarKillers54

    DarKillers54 Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    DarKillers54
    Можно ссылку на этот софт? Если да, то напишу вам в лс.
     
  15. CraftCoder

    CraftCoder Старожил Пользователь

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Можно ссыльку? И когда сайт уже заработает?
     
  16. GameGuardSU

    GameGuardSU Активный участник Пользователь

    Баллы:
    68
    Имя в Minecraft:
    GameGuard
    Насчет сайта - завтра. Насчет софта - тот кому надо сам найдет.
     
  17. CraftCoder

    CraftCoder Старожил Пользователь

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    (((
     
  18. BrainRTP

    BrainRTP Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    Есть под 1.8.8?
     
  19. BestMark

    BestMark Старожил Пользователь

    Баллы:
    103
    Skype:
    BestMarkBukkit
    Имя в Minecraft:
    BestMark
    Он и так подходит под 1.8.8.
     
  20. BrainRTP

    BrainRTP Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    Спс. Просто в шапке написано 1.7.9/1.8.3
     

Поделиться этой страницей