/symbol>

Защита от ДДОС атак

ДДОС - это вид атак, при которых выполняется множество запросов на сервер. Обработка этих запросов занимает все ресурсы, что затормаживает или полностью останавливает работу сервера. Она неприятна тем, что даже установив точку входа атаки бывает невозможно оставить сервер в рабочем состоянии без блокировки этого сайта.

Определить такую атаку можно по количеству одновременных соединений, командой
netstat -na | grep :80 | wc -l

Посмотреть на какой домен чаще всего идут запросы такой командой. 
tcpdump -npi eth0 port domain

Если у Вас немного сайтов и логи доступа находятся в одной папке удобно отслеживать атаку просматривая размер логов доступа. Следующей командой можно каждые 2 секунды будут выводить список логов apache. Если размер верхнего файла быстро растет, почти наверняка атака идет на этот сайт.
watch 'ls -laS /var/www/httpd-logs/'
(путь к папке с логами доступа может быть разной в зависимости от дистрибутива и используемой панели управления сервером)
Увидеть последние запросы в этом файле можно командой tail имя_файла . В этих строках показано с каких IP исходят запросы.

Когда точка входа атаки определена можно приступить к блокировке IP с которых исходят запросы. Проще всего это сделать добавив правило в фаерволле iptables.
Заблокировать доступ с IP по протоколу tcp и 80 порту можно командой
iptables -A INPUT -p tcp --dport 80 -s xxx.xxx.xxx.xxx -j DROP
(xxx.xxx.xxx.xxx - IP, который нужно заблокировать)

Полностью заблокировать доступ с IP можно командой
iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP

Посмотреть сколько уже добавленых правил можно такой командой
iptables -L -n --line-numbers

Убрать случайно заблокированный IP из списка можно так
iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP

В некоторых случаях атаки исходят из абсолютно разных IP и подсетей. Блокировка отдельных адресов в этом случае малоэффективна. Чтобы сохранить работу сервера рекомендуется полностью закрыть доступ к атакуемому сайту через директиву deny from all в файле .htaccess для этого сайта, а также в А записях домена указать IP 127.0.0.1. Так запросы на Ваш сайт будут возвращаться обратно их отправителю.

Related Articles

Как рекурсивно изменить права и владельца папки

При переносе сайта на сервер и переходе по нему в браузере может возникнуть неприятная ошибка -...

Закончилось место на диске. Что делать?

Частой причиной некорректной работы служб на VPS или выделенном серевере является превышение...

Мониторинг CPU

Для поддержки сервера в рабочем состоянии важно отслеживать загруженность процессора и определять...

Как подключиться к серверу по ssh

Несмотря на огромное количество панелей управления сервером все же основным администрирования...

Инструкция по созданию персонального VPN-сервиса на базе VPS-сервера

Чтобы создать собственный VPN-сервис на базе VPS-сервера вам понадобится: VPS сервер. Если вы...