DDOS по нескольким IP-адресам с одним соединением [дубликат]

На этот вопрос уже есть ответ:

У меня есть сайт, который подвергался DDOS-атакам в одно и то же время каждый день в течение последнего месяца, и, потратив месяц на изучение и выявление ошибки, мы ввели в действие сценарий bash что, если соединение достигает 80+ макс. соединений за одну минуту, то IP-адрес блокируется и помещается в IPTABLES.

Это работало отлично в течение двух дней, и я почувствовал, что наконец решил проблему.

Но, увы, теперь человек отправляет несколько IP-адресов с одним соединением на каждом (см. Вывод здесь http://pastebin.com/7AJqBfJa ). Это приводит к тому, что сайт не работает, как это было, когда один IP-адрес отправлял 150 подключений в минуту.

Это, конечно, совершенно другая игра, когда дело доходит до предотвращения DDOS, и я обращаюсь за помощью к гуру и всем, кто достаточно внимателен, чтобы дать какой-то совет. На данный момент я не знаю, как это исправить, и я буду благодарен за любую помощь.

3
задан 29 December 2011 в 13:35
3 ответа

Как Niall упомянул, mod_evasive работы действительно хорошо в этой ситуации, и я недавно использовал ее для остановки очень похожей проблемы, которую я имел на одном из моих сайтов. Помогает в ситуации, где Вы не получаете тонну соединений на единственном IP, но Вы действительно видите, что неестественные шаблоны происходят на сервере.

В моем случае, о котором я также вел блог здесь, я установил mod_evasive и настроил его со следующими настройками:

<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 3
DOSSiteCount 100
DOSPageInterval 3
DOSSiteInterval 5
DOSBlockingPeriod 300
DOSLogDir "/var/log/httpd/modevasive/"
DOSEmailNotify your@emailaddress.com
</IfModule>

В основном, если единственный IP запрашивает тот же ресурс (файл) 3 времена в течение 5 секунд; или 100 хитов на любом файле в течение 5 секунд; Apache затем отклонит дальнейшие просьбы в тот файл.

Если Вы хотите улучшить этот сценарий; можно было инициировать системные команды, когда параметры поражены. В моем случае я добавил эту команду к конфигурации выше:

DOSSystemCommand "/usr/bin/sudo /usr/sbin/csf -td %s 3600"

Это делает мой брандмауэр, CSF блокируют IP в течение часа. Вы могли столь же легко записать iptables сценарий, чтобы сделать то же самое, но CSF помогает мне.

Так или иначе надежда, которая помогает Вам закрепить своих взломщиков DDOS!

5
ответ дан 3 December 2019 в 05:17

Можно использовать iptables для ограничения количества соединений на IP к сервису для смягчения DDoS, пока iptables сценарий не ловит их

iptables -A INPUT -p tcp -m limit --limit 3/s --dport DESTINATIONPORT --limit-burst 10 -m state --state NEW -j ACCEPT

Это ограничит новые соединения с 3 в секунду на с максимальным пакетом 10 соединений.

Убедитесь прекрасной тонкой настройке это к своим потребностям, 3 соединения в секунду является довольно низким в зависимости от трафика, который выполняет Ваш сервер

2
ответ дан 3 December 2019 в 05:17

Предположение, что Вы выполняете Apache, mod_evasive, могло бы быть полезным.

0
ответ дан 3 December 2019 в 05:17

Теги

Похожие вопросы