Коротко о сабже
Мелкие DDoS атаки довольно часты и имеют большую силу. Из-за них в 70% случаях "ложатся" даже проекты под защитой. Но если пакеты прорываются, то их можно спокойно заблокировать с помощью утилиты, называемой DDoS Deflate. Утилита блокирует соединения, превысившие определенный порог коннектов к серверу. Как мы знаем, чаще всего DDoS именно и состоит из таких мелких коннектов, часто забивающих канал связи - этот тип атаки называется Flood (флуд). Флудить злоумышленник будет недолго, но и этот мелкий флуд выбьет из колеи любое ваше приложение в считанные минуты, если не секунды.

Как все настроить
Установка происходит очень просто.

Первым делом скачиваем из-под root дистрибутив.

Код:
wget https://github.com/jgmdev/ddos-deflate/archive/master.zip
unzip master.zip
cd ddos-deflate-master
./install.sh

Если не установлен пакет ''zip'', устанавливаем его и пакет ''unzip'' командой apt-get install zip unzip -y. В системе CentOS вместо ''apt'' используется ''yum''.

"Белые" доверенные хосты располагаются в файле /etc/ddos/ignore.host.list. IP-адреса лежат в файле /etc/ddos/ignore.ip.list. Для точной работы нужно отредактировать файл /etc/ddos/ddos.conf вашим любимым редактором, мы используем редактор ''nano''.

Код:
nano /etc/ddos/ddos.conf

Делаем все вот таким образом:

Код:
# Paths of the script and other files
PROGDIR="/usr/local/ddos"
SBINDIR="/usr/local/sbin"
PROG="$PROGDIR/ddos.sh"
IGNORE_IP_LIST="ignore.ip.list"
IGNORE_HOST_LIST="ignore.host.list"
CRON="/etc/cron.d/ddos"
# Make sure your APF version is atleast 0.96
APF="/usr/sbin/apf"
CSF="/usr/sbin/csf"
IPF="/sbin/ipfw"
IPT="/sbin/iptables"

# frequency in minutes for running the script as a cron job
# Caution: Every time this setting is changed, run the script with --cron
# option so that the new frequency takes effect
FREQ=1

# frequency in seconds when running as a daemon
DAEMON_FREQ=5

# How many connections define a bad IP? Indicate that below.
NO_OF_CONNECTIONS=30

# The firewall to use for blocking/unblocking, valid values are:
# auto, apf, csf, ipfw, and iptables
FIREWALL="auto"

# An email is sent to the following address when an IP is banned.
# Blank would suppress sending of mails
EMAIL_TO="mihail@vps4me.host"

# Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600

# Connection states to block. See: man netstat
CONN_STATES="ESTABLISHED|SYN_SENT|SYN_RECV|FIN_WAIT1|FIN_WAIT2|TIME_WAIT|CLOSE_WAIT|LAST_ACK|CLOSING"

# Only check on the incoming connections to test which to ban (currently only filters ipv4, ipv6 are still check
# on outgoing and incoming connections)
ONLY_INCOMING=false

# The external ipv4 address. Used to rewrite the 0.0.0.0 address to the HOST_IP. Any incoming connections
# on a 0.0.0.0 socket is shown as connected to the external interface. If you have only one internet connection,
# enter your machine's ip here.
HOST_IP="0.0.0.0"

30 коннектов - весьма условная величина, вы можете поиграться с ней.

После изменения файла нужно перезапустить сервис командой service ddos restart или systemctl ddos restart в зависимости от операционной системы.