Как защитить свой сайт от DDoS-атак или ботов

Anti-DDoS-Lite (приложение Anti-Crawler) — это небольшое PHP-приложение для защиты вашего сайта от DDoS-атак или сканирования веб-сайта ботами.

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

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

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

Anti-DDoS-Lite blocking screen

Как использовать

1. Включите приложение в качестве первой строки в index.php различными способами:

 1.1. Скачайте, распакуйте архив в основную папку сайта и включите приложение:

<?php
// This file have to be very first included
require "anti-ddos-lite/anti-ddos-lite.php";

//
// index.php code bellow
// ...

?>

1.2. Или установите приложение с помощью пакета composer:

composer require cleantalk/anti-ddos-lite

<?php
// Init the app before your web app's main logic
\Cleantalk\CleantalkAntiDdosLite\CleantalkAntiDdosLite::init();

2. Создайте новое значение для переменной $anti_ddos_salt. Вы можете найти его в файле anti-ddos-lite.php.

Как протестировать

1. Отключите JavaScript в вашем браузере.

2. Откройте свой сайт, и вы увидите экран блокировки:

Anti-DDoS-Lite blocking screen

Пропуск защиты для посетителей из доверенных сетей, автономных систем (АС)

Настройте GeoIP, откройте файл anti-ddos-lib.php и перечислите исключенные автономные системы в переменной $notRatedAs.

// List of trusted Autonomous systems.

$notRatedAs = [13238,15169,8075,10310,36647,13335,2635,32934,38365,55967,
        16509,2559,19500,47764,17012,1449,43247,32734,15768,33512,18730,30148];

Пропуск доверенных User-Agent

Найти его можно по этому пути: anti-ddos-lite\src\not_rated_ua.php. Допускаются регулярные выражения, пример ниже.

$not_rated_ua = array(
        'CleanTalk Uptime bot.+',
        'Googlebot', 
        'Bingbot',
        'Baiduspider',
        'YandexBot',
        'facebot',
        'facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)',
        'ia_archiver'
);

Затем в основном файле anti-ddos-lite.php найдите переменную test_not_rated_ua и измените false на true.

Как изменить входные данные

Например, если вы хотите изменить задержку перенаправления, сделайте следующее:

1. Откройте основной файл anti-ddos-lite.php.

2. Найдите массив $data и найдите в нем переменную redirect_delay.

3. Измените значение на новое.

Anti-DDoS-Lite change of input data

После этих изменений пользователи будут автоматически перенаправлены на запрошенную страницу через 10 секунд.

 

Если вы не нашли ответ на свой вопрос, пожалуйста, свяжитесь с нашей службой поддержки.

 

Была ли эта информация полезной?

Будет так же интересно

Copied to clipboard