Мощный сервер спокойно падает от ДДоса

G2
На сайте с 16.02.2013
Offline
35
#111

Стоит скрипт:

#!/bin/bash

SLEEP_TIME=5
while true; do
awk '{print "ipset -A dropip " $1}' /tmp/bad_request.log | sort -u | sh;
cat /dev/null > /tmp/bad_request.log
sleep $SLEEP_TIME;
done

и в предыдущем каталоге есть скрипты подобного содержания:


#!/bin/bash
./scripts/ban_by_ip.sh &

#!/bin/bash

killall ban_by_ip.sh 2>&1>/dev/null

В bad_request.log идут айпишники, которые получили 444.

Увидел, что есть 1 айпишник в логе. Посмотрел, в списке бана его нет. Занес его сам через команду ipset -A dropip *IP*, потом гляжу логи, но там всё равно айпишник этот есть. В чем проблема?

lazyfish
На сайте с 05.01.2014
Offline
13
#112

Григорий, к сожалению, Ваше решение - самый обычный костыль. Не удивительно, что оно не работает / работает не так, как нужно.

Для начала: грепать с логов веб-сервера айпишники и дропать их скриптом - неблагодарнейшее дело. Достаточно настроить connlimit / hashlimit в iptables непосредственно и все будет работать прекрасно. Советую Вам создать список в ipset и хранить там заблоченные IP, либо же recent.

Касаемо производительности - в вашем случае не мешало бы поднастроить nginx + php. От апача откажитесь вообще, я на 99 % уверен, что он Вам НЕ нужен. Оптимальные настройки веб-сервера и php демона придется подбирать, для каждого железа оптимальны свои настройки. Универсальные есть, но что-то нормальное в паблике вряд-ли найдете. :)

А вообще я советую вам отправлять жалобы на таких дудосеров. Включите логирование real ip в nginx'e и смотрите реальный ип сервера, который ддосит через прокси. Было на практике пару раз - на абузы реагируют в течении нескольких часов.

G2
На сайте с 16.02.2013
Offline
35
#113

Дак там прокси обычные. Буржуйские, русские и прочие. А если будет реальный ддос, т.е. ботнет. Что я буду делать?

Вообще, найти бы мне пример отказа от апача.

[Удален]
#114
grisha2217:
Вообще, найти бы мне пример отказа от апача.

Долго искать не нужно. nginx + php-fpm

G2
На сайте с 16.02.2013
Offline
35
#115
WapGraf:
Долго искать не нужно. nginx + php-fpm

Ну вот я поставлю эту связку. Будет рост в производительности, с ддосом будет легче бороться?

Какие подводные камни?

[Удален]
#116
grisha2217:
Будет рост в производительности

Зависит от ваших скриптов. Вероятнее всего что да.

grisha2217:
с ддосом будет легче бороться?

Возможно. Но никаких чудес не будет.

grisha2217:
Какие подводные камни?

не работает .htaccess, все реврайты пишутся в nginx.

Den73
На сайте с 26.06.2010
Offline
523
#117
grisha2217:
Ну вот я поставлю эту связку. Будет рост в производительности, с ддосом будет легче бороться?

Какие подводные камни?

ничем не легче, к примеру выигранные 100rps за счет смены софта чем могут помочь по сути? если ддос это десятки тысяч и сотни тысяч запросов в секунду. раз уж на то пошло гораздо больший прирост можно получить переписав сайт.

у меня к примеру проекты на легковесных фреймворках, они все работают во много раз быстрее любой популярной cms, от приложения зависит все.

G2
На сайте с 16.02.2013
Offline
35
#118

У меня форум, в .htaccess есть не только реврайты.

[Удален]
#119

Все можно вынести в nginx + php.ini.

Himiko
На сайте с 28.08.2008
Offline
560
#120
Увидел, что есть 1 айпишник в логе. Посмотрел, в списке бана его нет. Занес его сам через команду ipset -A dropip *IP*, потом гляжу логи, но там всё равно айпишник этот есть. В чем проблема?

Может не хватает

iptables -I INPUT -m set --match-set dropip src --dport 80 -j DROP

?

Профессиональное администрирование серверов (https://systemintegra.ru). Круглосуточно. Отзывы (/ru/forum/834230) Лицензии (http://clck.ru/Qhf5) ISPManager,VDSManager,Billmanager e.t.c. по низким ценам.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий