DDoS-защита Linux'овского сервера через правила iptables

Pir@tehnic

Участник
Сообщения
44
Реакции
103
DDoS-защита Linux'овского сервера Source через правила iptables

Не знал куда писать, в Статьи или сюда! Но решил сюда, так как статейка все-таки относится именно к защите Сервера!

Скажу сразу, если у Вас работает плагин DoS-Protect и работает успешно и нормально отбивает DoS-атаки, то читать статью и заморачивать себе голову вовсе не надо... Ежели плагин не работает или не спасает, тогда приятного чтения! =)

Предыстория :D

В общем я как-то выложил плагин Dos-Protect, отписавшись "У меня отказался работать на Зомби-Моде"...
И вот по "счастливой" случайности этот самый мой Зомби-Мод сервер работал на Линуксе, и при установке этого плагина Зомбез крашился при запуске и к сожалению, в течении некоторого времени многой всякой школоты при каждом удобном случае сразу же врубали своими погаными ручонками свои ДДОСилки и успешно сваливали Зомбез за минуту, стоило хоть в чем-то неугодить :D. Нет, админы невиноваты и сервак вполне нормальный, что их не устраивало, так и осталось для меня секретом).

При этом, я делал копию этого же Зомбеза на компе с Виндой, и вот почему-то на Винде этот плагин вполне успешно работал, а вот на Линухе, зараза, не хотел!


Теперь к делу:
Хочу с вами поделиться тем, как мне удалось решить эту проблему!

Я просто задал пару правил для линуховского iptables.. Точнее просто вбил пару строк в терминал!

iptables -A INPUT -p udp --dport 27016 -m hashlimit --hashlimit 50/s --hashlimit-burst 50 --hashlimit-mode srcip --hashlimit-name CSS -j ACCEPT

iptables -A INPUT -p udp --dport 27016 -j DROP

Где: 27016 - это порт Сервака, еще можно попробовать побаловаться с числом 50/s, но я себе поставил именно 50! Вбивайте и вы =)

После этого я тестил Зомбез несколькими програмками для ДОС-атак, среди которых был DDoS-ер с иконкой в виде лимона и CSS Server Lagger и Зомбез короче от них даже не пошевелился (хотя до этого любая из них сваливала Сервак за минуту).

Только одна програмка смогла поднять пинг до 200, но к счастью ее автор (програмки) эту прогу не распространяет и никому не дает =) !!!



Можно прописать и другие правила, для более точной фильтрации!

iptables -A INPUT -p udp -m udp --dport 27016 -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -p udp --dport 27016 -m state --state NEW -m hashlimit --hashlimit 100/s --hashlimit-burst 100 --hashlimit-mode srcip --hashlimit-name TF -j ACCEPT

iptables -A INPUT -p udp --dport 27016 -j DROP


Здесь также можно попробовать изменить число 100, но мне кажется 50 или 100 - нормально!

Еще команды для iptables:
iptables -L -n - показывает уже существующие правила!
iptables -F - сбрасывает все правила!



>>>Не помогли мне эти правила для моего Линуховского серва, все равно ДДОСят, можно ли еще что-то придумать?<<<

Можно попробовать осилить эту статью -> <ССЫЛКА>

Или можно сделать так!

Ставите плагин DoS Attack Fixer (DAF) и в настройках включаете логирование! Далее, если произошла DDoS-атака, смотрите в логе с какого IP-адреса была атака, и баните IP-адрес через iptables! Бан по iptables - вещь очень надежная, на себе проверял =) !

Оффтоп: хотя и написано что этот плагин DAF защищает сервер от ДДОСа, но по моему мнению и опыту, ни фига он не защищает (Во всяком случае от лимона не спасал)

Банить через iptables надо так:

iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP

Где xxx.xxx.xxx.xxx - это IP-адрес нарушителя!

Если нарушитель имеет динамический IP, сменил IP и ДДОСит дальше, то баним подсеть или несколько подсетей!

iptables -A INPUT -s xxx.xxx.xxx.0/24 -j DROP

Пример:
iptables -A INPUT -s 187.34.232.0/24 -j DROP -> Так мы забаним по iptables диапазон IP-адресов от 187.34.232.0 до 187.34.232.255


Разбан так:

iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP


Примечание 1:
Кстати, Бан по iptables вроде как не Банит на сервере CS:S, то есть Юзер, забаненный по iptables, сможет играть на вашем Серваке, но не сможет ДДОСить!

Примечание 2:
И еще, эти все правила и Баны предотвращают только от внешних DDOS-атак, т.е. когда можно ДДОСить через всякого рода програмы-флудилки, не заходя на Сервер! Для скриптов, которые флудят командами в консоль на самом серваке можно попробовать использовать Античит KAC!

P.S. Удачи вам и никаких DDoS-атак! Если что еще надыбаю, обязательно отпишусь!
 
Последнее редактирование:

pep3l

Участник
Сообщения
1
Реакции
0
очень интересная статья, большое спасибо!
 

Sherhan

Участник
Сообщения
66
Реакции
19
Спасибо, второй способ "более точной фильтрации" помог, первый почему то пропускал атаки!

P.S Кстати, что бы после перезагрузки компа, правила восстанавливались, нужно выполнить:
iptables-save > /etc/iptables.rules
сделать это файл исполняемым:
chmod +x /etc/iptables.rules
и добавить строку:
iptables-restore < /etc/iptables.rules
в файл /etc/rc.local

P.S
Примечание 1:
Кстати, Бан по iptables вроде как не Банит на сервере CS:S, то есть Юзер, забаненный по iptables, сможет играть на вашем Серваке, но не сможет ДДОСить!
Чушь! Способ бана описаный выше, блокирует любой доступ к компу! Что бы забанить только доступ к серверам, нужно делать так: iptables -A INPUT -s ххх.ххх.ххх.ххх -p udp -m udp --dport 27015:27018 -j DROP
Тогда забаненый не сможет играть на данных портах, но ваш комп будет видеть!
 
Последнее редактирование:

Andrey

пишу код за еду
Сообщения
3,386
Реакции
4,019
  • Команда форума
  • #8
по SSH подключайся и вводи
 

monstrik

Участник
Сообщения
1
Реакции
3
iptables -A INPUT -p udp --dport 27016 -m hashlimit --hashlimit 50/s --hashlimit-burst 50 --hashlimit-mode srcip --hashlimit-name CSS -j ACCEPT

iptables -A INPUT -p udp --dport 27016 -j DROP


Это очень занятный метод. А как к примеру указать диапазон портов?

нашёл такой вариант:
--dports 22,53,8080,139,445

Но он не очень подходит, так как порты пополняются новыми серверами и каждый раз прописывать очень не удобно...

P.S. ответ найден: "--dport 27015:27020"
 
Последнее редактирование:

macsvell

Участник
Сообщения
23
Реакции
0
Пацаны всем привет!
Обьясните поподробнее!
Ставлю антидос ему вообще фиолетово как будто и нет его
А досят серв каждый час!!!
Я не понял где прописывать команды!!!
Что такое ssh и где терминал!
Сервак на хосте!!!
ПОМОГИТЕ!!!
Всех с праздниками!
Пацаны очень надо серв рвут без остановки
МЫ сделали норм паблику!
Кого то не устраивает!
Я не программер и не хакер реально я нуб но я прусь от ксс и мне очень важно защитить серв !!!
 
Последнее редактирование:

phenom70

Участник
Сообщения
73
Реакции
6
Пацаны всем привет!
Обьясните поподробнее!
Ставлю антидос ему вообще фиолетово как будто и нет его
А досят серв каждый час!!!
Я не понял где прописывать команды!!!
Что такое ssh и где терминал!
Сервак на хосте!!!
ПОМОГИТЕ!!!
Всех с праздниками!
Пацаны очень надо серв рвут без остановки
МЫ сделали норм паблику!
Кого то не устраивает!
Я не программер и не хакер реально я нуб но я прусь от ксс и мне очень важно защитить серв !!!
Знаете, вообще, если хост хороший, то должен бесплатно и сам предоставлять такую защиту. Посмотрите в настройках на сайте хостера, просто бывает что там есть пунктик "включить защиту от DoS" или "включить защиту". Никогда серв на хостинге не арендовал (на своей машине стоят сервера), поэтому точно не знаю. Но хостер должен предоставлять защиту, если же нет, то какой же это хостер, не хостер, а г***о. Вообщем смотрите в настройках на сайте, если нет, то долбите Тех.Поддержку хостера.:yes:
 

Pir@tehnic

Участник
Сообщения
44
Реакции
103
Пацаны всем привет!
Обьясните поподробнее!
Ставлю антидос ему вообще фиолетово как будто и нет его
А досят серв каждый час!!!
Я не понял где прописывать команды!!!
Что такое ssh и где терминал!
Сервак на хосте!!!
ПОМОГИТЕ!!!
Всех с праздниками!
Пацаны очень надо серв рвут без остановки
МЫ сделали норм паблику!
Кого то не устраивает!
Я не программер и не хакер реально я нуб но я прусь от ксс и мне очень важно защитить серв !!!
Если есть фтп-доступ, ставь Dos Protect и не заморачивайся, эти правила у меня были прописаны только для одного зомбимода так как он не работал с дос протектом, на всем остальном по сей день стоит дос протект и не жалуюсь
 

qwestfx

Участник
Сообщения
110
Реакции
4
Подскажите решения для серверов на Windwows, т.к. ставить Linux сейчас нет смысла...
Если быть точнее... Название софта с помощью которого можно фильтровать UDP пакеты, по их длине.
 
Последнее редактирование:

web

Участник
Сообщения
131
Реакции
6
Подскажите решения для серверов на Windwows, т.к. ставить Linux сейчас нет смысла...
Если быть точнее... Название софта с помощью которого можно фильтровать UDP пакеты, по их длине.

Ставь вот это http://hlmod.ru/forum/zashita-igrovogo-servera/1028-dos-protect-css.html

Мне очень сильно помогает,она и логи пишет кого банит
 

kv.acid

Участник
Сообщения
2,025
Реакции
755
Оффтопhttp://hlmod.ru/forum/zashita-igrovogo-servera/1028-dos-protect-css.html
 

qwestfx

Участник
Сообщения
110
Реакции
4
Подскажите решения для серверов на Windwows, т.к. ставить Linux сейчас нет смысла...
Если быть точнее... Название софта с помощью которого можно фильтровать UDP пакеты, по их длине.

Вопрос открыт, плагины не предлагать, нужен firewall!
 

dimetrius

Участник
Сообщения
133
Реакции
24
Кто-то где-то писал что помогает Outpost, причём без доп настроек, сам, на автомате отбивает атаки.
 

Osimus

Участник
Сообщения
51
Реакции
6
Кто-то где-то писал что помогает Outpost, причём без доп настроек, сам, на автомате отбивает атаки.

будет ли лагать сервак? и будут ли задержки? просто юзал комодо, но он гг лаги и задержки на сервере!
 

dimetrius

Участник
Сообщения
133
Реакции
24
не знаю, просто кто-то писал, я вспомнил и поделился. сам такую связку не пробовал.
 
Сверху Снизу