Здравствуйте! Вот столкнулся с проблемой. Что я только не читал, у кого только не спрашивал все как-то разводят руками и ничего кнретно не сказав. Просто переходите на платную защиту, ну есть-же способы хотя-бы примитивные атаки (школо дос, флуд) отбить по средствам самого сервера? Стоит ubuntu.
Вот что я нашёл для моих нужд:
#!/bin/sh
# Находим все соединения на все порты и записываем их в файл ddos.iplist
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | grep -v "127.0.0.1" > /usr/local/ddos/ddos.iplist
# создаем DROP правила (не выдавать ответа сервера на запросы забаненых) для IP с количеством подключений более 50 и добавляем их в файл
awk '{if ($1 > 50) {print "/sbin/iptables -A INPUT -s " $2 " -j DROP"; print "/sbin/iptables -A INPUT -d " $2 " -j DROP";}}' /usr/local/ddos/ddos.iplist >> /usr/local/ddos/iptables_ban.sh
# запускаем скрипт бана IP атакующих
bash /usr/local/ddos/iptables_ban.sh
# Очищаем скрипт, который производит бан
cat /dev/null > /usr/local/ddos/iptables_ban.sh
Потребуется точно выяснить кол-во нужных активных соединений и установить свой лимит.
Точно нужно добавить фильтр какие ip не учитывать и не добавлять в бан:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n | grep -v "Ваш IP сервера" > /tmp/ddos.iplist
Хотел бы у вас поинтересоваться. Т.к. уровень администрирования начальный, как добавить правило на диапазон ip что их скрипт не добавлял в баню в случае чего?