Аддон XF 2.x.x Known Bots [6.1.0]

Known Bots
Краткое описание:
Улучшая точность разделения пользователей и роботов в режиме онлайн
2
125
Источник
https://xenforo.com/community/resources/known-bots.6489/
Для версий
  1. 2.2
  2. 2.3

Описание Known Bots:​

Аддон для XenForo 2.x добавляет дополнительные определения для обнаружения ботов в сессиях, улучшая точность разделения пользователей и роботов в режиме онлайн.

Основные функции Known Bots:​

  • Расширенное обнаружение ботов:
    • Добавляет более 1400 определений ботов.
    • Поддерживает автоматическое обновление базы данных ботов через KnownBots API.
    • Возможность отправки неизвестных user-agent строк для анализа и добавления в базу данных.
  • Интеграция с интерфейсом XenForo:
    • Показывает список ботов в разделе текущих посетителей: /online/?type=robot.
    • Отображает количество ботов в виджетах «Участники онлайн» и «Статистика онлайн».
    • Опции для отключения отображения статистики ботов.
  • Инструменты админ-панели:
    • Список известных ботов.
    • Проверка user-agent строк на принадлежность к ботам.
    • Список последних 100 обнаруженных ботов и неопознанных user-agent строк.
  • Опции для гибкой настройки:
    • Автоматическое обновление определений ботов.
    • Хранение user-agent строк в базе данных с возможностью автоматической очистки.
    • Период хранения данных настраивается (по умолчанию 90 дней).
    • Отправка неопознанных user-agent строк через API.
  • Новые функции версии 6:
    • Улучшенная производительность — до 15 раз быстрее по сравнению с предыдущими версиями.
    • Вторичная проверка с использованием регулярных выражений для сложных строк user-agent.
    • Автоматическая аутентификация через лицензионный токен XenForo.
    • Депрекация отправки user-agent строк через email.

Требования Known Bots:​

  • XenForo 2.x.
  • PHP 7.0.0 и выше.
  • Для загрузки базы данных требуется расширение Phar.

Получение ботов​

Получение новых ботов через API. Используйте это для запуска собственного cron - выполняет ту же задачу, что и поставляемое задание XenForo Cron.
Bash:
$ php cmd.php known-bots:fetch
Используйте опцию -f для принудительного обновления, обходя флаг «последнее обновление» и заново получая последние определения ботов.

Если вы используете эту команду через свой собственный cron, обязательно отключите поставляемое задание XenForo Cron под названием «Known Bots: Fetch New Bots from API».

Загрузить ботов​

Загрузка данных о ботах из файла knownbots.json, уже находящегося в файловой системе.
Bash:
$ php cmd.php known-bots:load
Аддон ищет файл internal_data/knownbots.json - если вы загрузите его вручную и поместите обновленную версию в это место, вы сможете выполнить приведенную выше команду для загрузки данных без обращения к API.

Повторная обработка пользовательских агентов​

Пройдитесь по пользовательским агентам, хранящимся в базе данных, и обновите определения на основе последних данных об обнаружении ботов.
Bash:
$ php cmd.php known-bots:reprocess
По умолчанию обрабатываются только «неизвестные» агенты пользователей. Используйте параметр -a для обработки всех известных и неизвестных пользовательских агентов - полезно, если бот был неправильно идентифицирован, но обновлен в последних данных API.

Тестирование ботов​

Проверьте предоставленную строку пользовательского агента и определите, является ли она ботом.
Bash:
$ php cmd.php known-bots:test {user-agent}
Не забывайте заключать в кавычки строки агента пользователя, содержащие пробелы. Например:

Bash:
$ php cmd.php known-bots:test "Mozilla/5.0 (compatible; AhrefsBot/7.0; +http://ahrefs.com/robot/)"
Found robot: [ahrefs]
Title: AhrefsBot
Используйте опцию -s, чтобы сохранить строки пользовательского агента в базе данных для дальнейшей обработки.

Проверить API-токен​

(Новое в v6) Проверьте, действителен ли токен API KnownBots.
Bash:
$ php cmd.php known-bots:check-token
Используйте опцию -r или --revalidate для автоматической попытки повторной проверки и генерации нового API-токена в случае неудачи при аутентификации.
Отправлять агентов

(Новое в v6) Отправка вновь обнаруженных агентов пользователей в API KnownBots. Делает то же самое, что и задание cron, но может быть запущено извне через системный cron или вручную в целях тестирования.
Bash:
$ php cmd.php known-bots:send

Разбор файла журнала​

Считывает информацию из лог-файла веб-сервера и составляет список всех обнаруженных ботов.
Bash:
$ php cmd.php known-bots:parse {file}
Используйте опцию -a или --agents, чтобы просто перечислить все пользовательские агенты, найденные в предоставленном файле журнала - обнаружение ботов не происходит.

Команда также будет принимать данные из stdin, если вы укажете дефис в качестве имени файла.

Обратите внимание, что этот инструмент предполагает, что вы используете стандартный формат лог-файлов «Apache», который используется большинством веб-серверов.

Примеры использования:​

Вывести список всех агентов пользователя. Если вы не используете стандартный формат лог-файла Apache, будут возвращены неверные данные (или их отсутствие).
Bash:
$ php cmd.php known-bots:parse --agents /var/log/nginx/xenforo/xenforo.access.log
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36
Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1
Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Mobile Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36 Edg/94.0.992.37
...

Список ботов:​

Bash:
$ php cmd.php known-bots:parse /var/log/nginx/xenforo/xenforo.access.log
[postman                  ] PostmanRuntime/7.28.4
[guzzlehttp               ] GuzzleHttp/7
[postman                  ] PostmanRuntime/7.29.0
[curl                     ] curl/7.68.0
...

Примеры чтения данных из stdin:​

Bash:
$ cat /var/log/nginx/xenforo/xenforo.access.log | php cmd.php known-bots:parse -
...

$ php cmd.php known-bots:parse - < /var/log/nginx/xenforo/xenforo.access.log
...

$ tail -f /var/log/nginx/xenforo/xenforo.access.log | php cmd.php known-bots:parse -

Положение о конфиденциальности​


Краткое описание конфиденциальности​

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

Предусмотрены возможности отключения или обхода определенных функций, если вам неудобно использовать системы так, как они задуманы.

Подробности​

При включенной опции «Fetch new bots» аддон будет автоматически отправлять запрос к API KnownBots, загружая обновленный список определений ботов. Вы можете в любое время напрямую запросить этот API, чтобы посмотреть, что содержится в возвращаемых данных.

Вызовы API аддоном осуществляются с помощью стандартного «недоверенного» HTTP-клиента, встроенного в XenForo, что означает, что они направляются через прокси-сервер, если он у вас настроен. Стандартные файлы журнала веб-сервера на сервере API будут содержать информацию о выполненных запросах, включая IP-адрес вашего сервера (или прокси-сервера, если он используется), а также имя вашего форума, указанное в агенте пользователя HTTP-клиента XenForo. Например:
Код:
2400:8907:e001:xx::xxx - - [15/Aug/2023:00:00:07 +0000] "GET /api/bots?since=1691729327 HTTP/1.1" 200 119647 "-" "XenForo/2.x (https://www.example.com)"

Информация из журнала HTTP-сервера используется исключительно для аналитики и устранения неполадок и никогда не предоставляется третьим лицам.

Включение параметра «Отправлять агентов пользователей через API» требует предоставления токена проверки лицензии XenForo, полученного из вашей учетной записи клиента на сайте XenForo. Этот токен предназначен для предоставления сторонним авторам аддонов с целью проверки лицензий XenForo. В данном случае он используется в качестве простого механизма аутентификации. Вы можете в любое время регенерировать свой токен проверки лицензии через клиентский интерфейс XenForo, что автоматически приведет к отказу аутентификации через API KnownBots, как только истечет срок действия существующего API-токена.

Срок действия API-токенов истекает каждые 28 дней и автоматически регенерируется, если токен проверки лицензии XenForo остается действительным. Данные о клиентах, полученные через API для проверки лицензий XenForo, автоматически удаляются из базы данных после 30 дней бездействия.

При проверке лицензий в API KnownBots отправляется только токен проверки лицензии и URL-адрес форума. После завершения проверки на сервер отправляется только сгенерированный API-токен и список новых агентов пользователей. Для всех вызовов API генерируются журналы веб-сервера, аналогичные описанным выше.

Начиная с версии 6, информация не отправляется автору аддона по электронной почте.

Скриншоты плагина Known Bots​

Known Bots 1


Known Bots 2
Known Bots 3
Known Bots 4
Known Bots 5


Known Bots 6


Known Bots 7

Known Bots 8


Known Bots 9
Known Bots 10
Known Bots 11

Автор

bobobo

Еще ресурсы от bobobo

Constructor
Constructor
Позвольте NPC строить ваши схемы и структуры блок за блоком с Citizens
[AKL] File Manager
[AKL] File Manager
Файловый менеджер позволяет AdminCP управлять файлами и папками, загружать файлы.
The Search
The Search
Прячьте различные блоки (или сущности) в своих лобби и заставляйте игроков находить их
SkyGrid
SkyGrid
Прыгайте между блоками в этом уникальном мире небесной сетки; сможете ли вы выжить и процветать?
Crucible or MythicCrucible DEV BUILDS
Crucible or MythicCrucible DEV BUILDS
Девверсия плагина MythicCrucible (или Crucible)
⭐ FUNGAMES ⭐
⭐ FUNGAMES ⭐
• Casino, Presents, LuckyBlocks, Glowing, Events, Easter eggs, HeadHunt, Sliding Puzzles
⭐ BattlePass ⭐
⭐ BattlePass ⭐
Самый продвинутый плагин квестов
AdvancedJobs
AdvancedJobs
20+ профессий, беспрерывные награды, уровни заданий и легкая настройка для максимального вовлечения
Model Engine Premium 4.x
Model Engine Premium 4.x
Создание и управление модоподобными моделями сущностей без каких-либо модов.
AdvancedMobs
AdvancedMobs
Добавьте 20+ новых мобов в свой мир ⭐ Без ресурспака ⭐ Случайные спавны ⭐ Стак мобов и спавнеров
ВерхНиз