Защита Apache от DDOS атак – Часть 1

В 1й части мы будем устанавливать модуль Apache mod-evasive на Debian сервер. Этот модуль отслеживает количество подключений с определенного клиента и блокирует IP адрес на определенное время при превышении лимита.

sudo apt-get install libapache2-mod-evasive

Или берем отсюда:

http://packages.debian.org/lenny/libapache2-mod-evasive

И устанавливаем так:

dpkg -i libapache2-mod-evasive_x.x.x.deb

Документация на английском языке:

http://www.helicontech.com/ape/doc/mod_evasive.htm

Создаем файл /etc/apache2/mods-available/mod-evasive.conf с вот такими настройками:

<IfModule mod_evasive20.c>
DOSHashTableSize 4096
DOSPageCount 5
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>

Включаем модуль и перезапускаем Apache:

a2enmod mod-evasive
/etc/init.d/apache2 restart

В /usr/share/doc/libapache2-mod-evasive/examples есть скрипт на Perl для проверки модуля – test.pl – копируем его на клиентскую машину и правим адрес сервера:

#!/usr/bin/perl
 
# test.pl: small script to test mod_dosevasive's effectiveness
 
use IO::Socket;
use strict;
 
for(0..100) {
    my($response);
    my($SOCKET) = new IO::Socket::INET( Proto   => "tcp",
    PeerAddr=> "domain.ru:80");
    if (! defined $SOCKET) { die $!; }
    print $SOCKET "GET /?$_ HTTP/1.0\n\n";
    $response = <$SOCKET>;
    print $response;
    close($SOCKET);
}

Запускаем:

chmod 777 test.pl
./test.pl

Без включенного модуля все ответы сервера будут:

HTTP/1.1 200 OK

Со включенным – сервер начнет блокировать доступ на определенное время после превышения количества подключений:

HTTP/1.1 403 Forbidden

P.S.: это спасает лишь от самых примитивных видов атак. :)

Распечатать Распечатать

Другие записи:

Защита Apache от DDOS атак – Часть 2
Следим за файлами сервера с помощью Tripwire
Поднимаем учет трафика на Squid и TraffPRO – Часть 1
С www и без. Сохранение ссылочной популярности сайта.
Укрепляем Apache и PHP
Простой скрипт для проверки отправки почты в PHP
Оптимизация настроек MySQL
Acer Aspire One и Ubuntu 9.10 – усмиряем шум вентилятора
Анализируем log файлы Apache для обнаружения совершенных атак
Поднимаем ClamAV и ClamFS на Ubuntu Server

Добавить комментарий

Ваш e-mail не будет опубликован.

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">