Руководство по интеграции

В этом документе рассматривается процедура интеграции вашего веб сайта с сервисом BotGuard. В зависимости от используемого вами ПО и ваших потребностей, возможен выбор из нескольких представленных способов интеграции.

В случае возникновения затруднений при выборе необходимого варианта интеграции, обратитесь в поддержку — специалисты BotGuard подберут оптимальный вариант интеграции. Возможна полная настройка вашего сайта силами наших специалистов.

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

  1. Вы используете выделенный сервер, виртуальный сервер или разделяемый хостинг?

    В случае если используется разделяемый (shared) хостинг, переходите к пункту 3, иначе проверьте тип используемого веб-сервера, пункт 2.
    Как проверить?
    Уточните у вашего поставщика услуг хостинга, какой тарифный план вы используете.
  2. Используется веб-сервер Nginx?

    В случае, если на сайте используется этот веб-сервер, следуйте инструкции по интеграции с сервером Nginx.
    Как проверить?
    С помощью онлайн сервисов, например BrowserSpy, можно определить тип используемого веб-сервера вашего сайта (apache, nginx или другой).
  3. На сайте используется система управления содержанием WordPress?

    В случае, если вы используете WordPress, следуйте инструкции по интеграции с WordPress.
    Как проверить?
    Перейдите в административную панель вашего сайта. В случае, если вы используете WordPress, в левом верхнем углу вы увидите логотип этой системы:
  4. Веб-сайт разработан с помощью языка программирования PHP?

    BotGuard предоставляет модуль для интеграции сервиса с любым веб приложением, написанном на PHP. Следуйте инструкции по интеграции с PHP-приложениями.
    Как проверить?
    Зайдите в панель управления файлами вашего сайта через вашего поставщика услуг хостинга. Если в перечне файлов сайта есть файл index.php, то ваш сайт разработан с помощью PHP.
  5. Требуется индивидуальное решение?

    В прочих случаях у нас пока нет типовых вариантов интеграции. Обратитесь в поддержку и мы придумаем, что можно сделать.



 

Инструкции по интеграции с веб-сервером Nginx

Для интеграции веб сервера Nginx с сервисом BotGuard не требуется устанавливать дополнительное ПО, необходимо только внести изменения в конфигурационные файлы Nginx.

  1. Убедитесь, что Nginx скомпилирован с модулем http_auth_request_module, выполнив следующую команду:
    2>&1 nginx -V | tr -- - '\n' | grep -q http_auth_request_module && echo 'Test successfull' || echo 'Test failed'
    Если результатом выполнения этой команды будет «Test successfull», то всё в порядке. Если «Test failed», то попробуйте установить другую версию Nginx из системного репозитория или с официального сайта.
  2. Уточните используемую версию Nginx. Для этого выполните следующую команду:
    nginx -v
  3. Загрузите архив с примером конфигурационного файла BotGuard для Nginx и распакуйте его. В случае, если вы используете Nginx версии 1.11.7 и старше, отредактируйте файл nginx/botguard/botguard.conf. Найдите строку:
    # proxy_set_header
    и удалите символ "#" ("расскоментируйте"), чтобы получилось:
     proxy_set_header
    Всего в файле 4 таких строки, это нужно сделать с каждой из них.
  4. Отредактируйте файл nginx/conf.d/botguard-upstream.conf. В текстовом фрагменте:
    server xxx.botguard.net fail_timeout=1;
    server yyy.botguard.net backup;
    замените xxx.botguard.net на адрес основного сервера BotGuard, назначенный вашему сайту, а yyy.botguard.net на адрес дополнительного сервера.
  5. Скопируйте папку botguard с файлом botguard.conf внутри на ваш сервер в каталог /etc/nginx/. Скопируйте файл botguard-upstream.conf на ваш сервер в каталог /etc/nginx/conf.d/.
  6. Найдите на вашем сервере файл с конфигурацией вашего сайта, он должен содержать такой фрагмент:
    server {
    ...
    server_name ваш_домен
    Обычно он находится в каталоге /etc/nginx/sites-available/ или /etc/nginx/conf.d/ или /etc/nginx/vhosts/www-root/. В найденном файле после строки:
    server_name ваш_домен
    необходимо добавить строку:
    include botguard/botguard.conf;
    Далее, в файле необходимо найти строку
    location / {
    и после неё добавить:
    auth_request /botguard_check;
    В зависимости от вашей индивидуальной конфигурации Nginx, если существуют другие точки входа, может потребоваться добавить такую строку и в другие секции location ... { }, см в примере nginx/sites-available/default.conf.
  7. Сохраните изменения в файле конфигурации на ваш сервер и проверьте, что настройка выполнена верно, выполнив команду:
    nginx -t
    В результате, вы должны получить сообщение:
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  8. Примените сделанные изменения, выполнив команду:
    service nginx restart

После перезапуска сервера Nginx проверьте, что всё работает нормально, нажав кнопку «Проверить» в панели управления BotGuard.




 

Инструкции по интеграции с системой управления содержанием (CMS) WordPress

BotGuard предоставляет модуль («плагин») для WordPress. Исходный код модуля доступен на GitHub.

Установка модуля производится общепринятым в WordPress способом:

  1. Загрузите файл модуля для WordPress.
  2. Перейдите в панель управления WordPress. В панели управления перейдите в раздел «Плагины» и нажмите кнопку «Добавить новый»:

  3. На странице добавление плагина нажмите кнопку «Загрузить плагин»:

  4. Нажмите кнопку «Обзор», выберите файл botguard-1.0.4.zip, который был загружен на шаге 1. После этого нажмите кнопку «Установить сейчас»:

  5. Через пару секунд плагин будет установлен. Нажмите кнопку «Активировать плагин»:

  6. Перейдите на страницу настроек плагина. Для этого в меню выберите пункт «Настройки» → «BotGuard»:

  7. Введите адрес главного и вспомогательного сервера BotGuard, установите флажок «Включить» и нажмите кнопку «Сохранить изменения»:

    Необходимые значения адреса серверов BotGuard вы можете получить в панели управления BotGuard.




 

Прочие PHP приложения

Если вы являетесь веб-разработчиком, то воспользуйтесь нашей библиотекой для интеграции сервиса с любым веб приложением, написанном на PHP. Библиотека доступна на GitHub, там же вы найдёте инструкции по подключению к вашему проекту и примеры использования.

Если вы — не веб-разработчик, то следуйте этой простой инструкции:

  1. Загрузите архив с необходимыми файлами и распакуйте его — он содержит 3 файла: index.php, BotGuard.php и Profile.php.
  2. Отредактируйте файл index.php. Замените в тексте xxx.botguard.net на адрес основного сервера BotGuard, назначенный вашему сайту, а yyy.botguard.net на адрес дополнительного сервера.
  3. С помощью средства доступа к файлам на хостинге (панель загрузки файлов хостинга или FTP-клиент) найдите файл index.php в корневом каталоге файлов вашего сайта. Переименуйте найденный файл в index.php.original.
  4. Скопируйте новые файлы index.php, BotGuard.php и Profile.php в корневой каталог вашего сайта на сервере.

После того, как файлы скопированы, проверьте, что всё работает нормально, нажав кнопку «Проверить» в панели управления BotGuard.