Anti DDOS

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
Bookkc
Сообщения: 245
ОС: Ubuntu, Gentoo, Debian

Anti DDOS

Сообщение Bookkc »

Добрый день, стоит дебиан, помогите сделать защиту от ддоса по 80 порту

стоит iptables v1.4.14

Очень нужно Вашей помощи...
Спасибо сказали:
Bookkc
Сообщения: 245
ОС: Ubuntu, Gentoo, Debian

Re: Anti DDOS

Сообщение Bookkc »

Код: Выделить всё

iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 32 -j DROP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT


Прописал эти две команды, но не уверен будет ли оно работать и что вообще оно делает ? на сколько я понял смотит, если соединение с одного ип больше 32 раз то банит его ? или как?
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 30/sec --limit-burst 30 -j ACCEPT
iptables -P INPUT -p tcp -m tcp --dport 80 -j DROP

Разрешаем не более 30 новых соединений в секунду. При желании число новых соединений можно уменьшить.
Спасибо сказали:
Bookkc
Сообщения: 245
ОС: Ubuntu, Gentoo, Debian

Re: Anti DDOS

Сообщение Bookkc »

А если я ввел те командЫ что выше ? ничего страшного ? просто вводить твои ?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Anti DDOS

Сообщение Bizdelnick »

DoS DoS'у рознь. Что там, SYN-флуд или CMS тяжёлыми запросами перегружают? Или ещё что?

Institut писал(а):
08.02.2018 11:56
iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 30/sec --limit-burst 30 -j ACCEPT
iptables -P INPUT -p tcp -m tcp --dport 80 -j DROP

Так делать нельзя ни в коем случае! DoS'ер сделает всего 30 запросов в секунду, и уже никто не сможет подключиться.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Bookkc
Сообщения: 245
ОС: Ubuntu, Gentoo, Debian

Re: Anti DDOS

Сообщение Bookkc »

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

ДДОС такой, со многих ип подключаются к 80 порту этим самым вешают мне веб сервер... он на Апаче конечно же :-(
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

А Вы пробовали те правила, которые я Вам написал?

DoS DoS'у рознь. Что там, SYN-флуд или CMS тяжёлыми запросами перегружают? Или ещё что?

Ага. Но все эти пакеты имеют два статуса.

Или так, если нужно блокировать именно IP
iptables -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j DROP (отсекаем часть неправильных соединений, но не все)
iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW,INVALID -m hashlimit --hashlimit-above 30/sec --hashlimit-burst 30 --hashlimit-mode srcip --hashlimit-name dos -j DROP Будет заблокирован именно Ip адрес(а), приславший много пакетов.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Anti DDOS

Сообщение Bizdelnick »

Bookkc писал(а):
08.02.2018 13:44
а мне нужно что бы во время ддоса блокировало ип с которого идет атака..

Это делает приведённая Вами команда. Но, во-первых, это может быть недостаточно эффективно, во-вторых, она может испортить загрузку сайта обычным пользователям, когда для одной страницы делается много запросов (всяческая статика, а может и REST-запросы какие; вы же никаких подробностей не привели).
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 32 -j DROP

Вы ограничиваете количество соединений (даже без учета их состояния). А в Вашем случае надо ограничивать скорость открытия новых соединений,
а также запретить подключения для пакетов с неправильным статусом (состоянием).

Ага. И те и другие попадаю в категорию NEW и INVALID.

Запретите их можно приведенными выше правилами.
Правила с hashlimit более интересно, по сравнению с другими, так как учитывает
ип с которого идет атака..

Вполне можно изменить значения hashlimit-above и hashlimit-burst.
Спасибо сказали:
Bookkc
Сообщения: 245
ОС: Ubuntu, Gentoo, Debian

Re: Anti DDOS

Сообщение Bookkc »

Institut писал(а):
08.02.2018 14:40
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 32 -j DROP

Вы ограничиваете количество соединений (даже без учета их состояния). А в Вашем случае надо ограничивать скорость открытия новых соединений,
а также запретить подключения для пакетов с неправильным статусом (состоянием).

Ага. И те и другие попадаю в категорию NEW и INVALID.

Запретите их можно приведенными выше правилами.
Правила с hashlimit более интересно, по сравнению с другими, так как учитывает
ип с которого идет атака..

Вполне можно изменить значения hashlimit-above и hashlimit-burst.


А как это сделать ??
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

Что именно сделать? Не совсем понял вопрос.
Правила можно вписать в файл rules.v4
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Anti DDOS

Сообщение Bizdelnick »

Institut писал(а):
09.02.2018 10:29
Правила можно вписать в файл rules.v4

Вписать-то можно, но толк от этого будет только при условии, что речь идёт о Debian (или Ubuntu), и установлен пакет iptables-persistent.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

Вписать-то можно, но толк от этого будет только при условии, что речь идёт о Debian (или Ubuntu), и установлен пакет iptables-persistent.

Добрый день, стоит дебиан, помогите сделать защиту от ддоса по 80 порту
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Anti DDOS

Сообщение Bizdelnick »

Извиняюсь, проглядел. Но iptables-persistent всё же надо будет установить, если ещё не установлен.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Anti DDOS

Сообщение Institut »

Ошибся в предыдущих правилах.
Должно быть
iptables -A INPUT -i ethN -p tcp -m conntrack --ctstate NEW -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j DROP (отсекаем часть неправильных соединений, но не все)
iptables -A INPUT -i ethN -p tcp -m tcp -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 80 -m hashlimit --hashlimit-above 20/hour --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-name badhhtp -j REJECT --reject-with icmp-host-unreachable
iptables -A INPUT -p tcp -m tcp --dport 80 -j DROP
где ethN - входной интерфейс ( посмотреть точно название командой ip a или ifconfig)
Разрешаем не более 20 НОВЫХ соединений в час с одного адреса. Все что больше, в пекло.
Значение hashlimit-above можно подобрать оптимальным образом, исходя из скорости входящих соединений
Также надо установить поддержку определения состояния для iptables - пакеты conntrack и conntrackd и перезагрузить систему.
Спасибо сказали:
Аватара пользователя
aleksejsmir
Сообщения: 155
Контактная информация:

Re: Anti DDOS

Сообщение aleksejsmir »

В качестве дополнительной меры противодействия DDOS всегда ограничиваю префорк апача на веб-сервере (если используется апач), т.е. редактирую файл /ets/httpd/conf.modules.d/00-mpm.conf (RHEL, Centos). Разумеется, особо действенной мерой это не назовешь, но и противодействие DDOS всяко не исчерпывается приведенными выше рекомендациями. А так хоть db не крэшится, если веб-сервер под атакой.
Спасибо сказали:
Ответить