Защита 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
