Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Урок CentOS - Защита оборудывания от DoS атак(флуда)

Статус
В этой теме нельзя размещать новые ответы.

Brendan

Специалист
CentOS - Защита оборудования от DoS атак(флуда)

Оказывается можно попытаться защитить свой сервер от DoS посредством (D)DoS Deflate, это сценарий, который на периодичной основе проверяет количетсво используемых подключений с одного IP адреса, проверить наличие таких подключений можно командой:​

PHP:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
При наличии подключений более чем обозначили Вы, данный IP блокируется, благодаря созданному автоматически скриптом правилу в iptables.​

Установка (D)DoS Deflate​

Происходит посредством загрузки установочного скрипта, указанием разрешений на запуск и собственно запуск установки​

PHP:
wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
./install.sh
Удаление (D)DoS Deflate​

Происходит в аналогичном порядке, за исключением загружаемого скрипта:​

PHP:
wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
./uninstall.ddos
Настройка (D)DoS Deflate​

Конфиг расположен в каталоге - /usr/local/ddos/, имя конфига - ddos.conf, основные настройки:​
  • указание возможного количества соединений - NO_OF_CONNECTIONS=100
  • указание блокировки посредством iptables - APF_BAN=0
  • период блокирования в секундах - BAN_PERIOD=600
  • настрйоку - KILL=1 оставляем по умолчанию
  • указать email для отправки почтовых уведомлений - EMAIL_TO="user@server.domain"
  • так же можно создать список "белых" IP в файле - IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list"
Запуск самого скрипта можно можно осуществить так:​

PHP:
sh /usr/local/ddos/ddos.sh
Дополнительно​

Просмотр общего количества соединений:​

PHP:
netstat -n -p | awk '{print $6}'|awk -F: '{print $1}' | sort -n | uniq -c | sort -nr | head -n10
Далее можно просмотреть рейтинг количества подключений:​

PHP:
netstat -n -p | awk '{print $5}'|awk -F: '{print $1}' | sort -n | uniq -c | sort -nr | head -n10
И далее можно просмотреть по каким портам:​

PHP:
sudo netstat -nput | awk '{print $4}'|awk -F: '{print $2}' | sort -n | uniq -c | sort -nr | head -n10
Дополнение:
PHP:
Поддерживается и на Ubuntu OC 12.04
На этом мануал/урок подходит к концу. Надеюсь многим пригодится. Защитите свои проекты от плохих людей.
Данный мануал/урок пригодится, у кого проекты на виртуальных машинах (VPS/VDS)

Пригодилось, ставь +
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу