Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Защита серверов _ Настройка (D)DoS Deflate

Автор: ShadoWx 21.9.2011, 13:40

О Скрипте:
(D)DoS Deflate - Это скрипт при помощи которого можно предотвратить элементарные флуд и ddos атаки, после обнаружения блокируется ip-адрес атакующего, а делается это все при помощи фаервола iptables или apf (APF v 0.96 или выше).

Установка и настройка (D)DoS Deflate:
- Вводим поочередно в консоль

Код
wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
./install.sh

После установки в директории /usr/local/ddos/ появятся файлы настроек.
Нас будет интересовать основной файл настроек - ddos.conf

На своем сервере я использую следующие параметры:
Код
##### Paths of the script and other files
PROGDIR="/usr/local/ddos"
PROG="/usr/local/ddos/ddos.sh"
IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list"
CRON="/etc/cron.d/ddos.cron"
APF="/etc/apf/apf"
IPT="/sbin/iptables"

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

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

##### APF_BAN=1 (Make sure your APF version is atleast 0.96)
##### APF_BAN=0 (Uses iptables for banning ips instead of APF)
APF_BAN=0

##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)
##### KILL=1 (Recommended setting)
KILL=1

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

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


Для удаления скрипта:
- Вводим поочередно в консоль
Код
wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
./uninstall.ddos

Автор: CrazyKiller 8.10.2011, 1:43

sh /usr/local/ddos/ddos.sh
[: 85: /usr/local/ddos/ddos.conf: unexpected operator
DDoS-Deflate version 0.6
Copyright © 2005, Zaf <zaf@vsnl.com>

$CONF not found.


Вот такое при запуске самого скрипта, сам скрипт добавляет крон и другие приколы big_smile.gif

Не в курсе что не так ?

Автор: mariner 8.10.2011, 7:56

Какой дистрибутив? В прицнипе, попробуй в начале скрипта знменить /bin/sh на /bin/bash.

Автор: CrazyKiller 8.10.2011, 10:05

Цитата(mariner @ 8.10.2011, 8:56) *
Какой дистрибутив? В прицнипе, попробуй в начале скрипта знменить /bin/sh на /bin/bash.


debian сквизи.

да изменил на bash вроде начал показывать айпи присоединивших.

но я правильно предполагаю, данный скрипт нужна поставить в крон каждые минуту ?

Автор: Saymon21 8.10.2011, 14:04

Код
*/1 * * * * nice -n -5 /usr/local/ddos/ddos.sh > /dev/null 2>&1

Как-то так. Только после установки он уже будет в кроне.
И да, не помешает подумать головой и более тонко настроить конфиг.

Автор: CrazyKiller 8.10.2011, 14:13

ну если не обшибаюсь, данный крон запускает скрипт каждую минуту, под учёткой nice, вот -n и -5 не пойму что означают big_smile.gif

а вот тонкую настройку, эт да, совершенно верно.

у меня только файл настроек iptables лежит в другом месте, /etc/iptables.up.rules
Настраиваю систему через webmin, привык уже к нему big_smile.gif

вот скрипт (D)DoS Deflate поймет где лежат настройки айпитейблса ?

Автор: Saymon21 8.10.2011, 14:18

Твои конфиги iptables не нужны тут. В крон, Как бы приоретет. И это, crontab -e man crontab
А конфиги DoS Deflate, ну достаточно посмотреть код скрипта, /usr/local/ddos

Автор: KT315 22.10.2011, 15:31

Коллеги, в iptables вообщ есть модуль recent, поэтому эти телодвижения с со скриптом и crond - лишняя затея, проще говоря - костыль.
Вот пример для ssh: Выдержка из iptables-save

Код
-A INPUT -p tcp -m tcp --dport 22 --tcp-flags FIN,SYN,RST,ACK SYN -j SSH
-A SSH -m recent --set --name ssh_brute --rsource
-A SSH -m recent --update --seconds 600 --hitcount 3 --name ssh_brute --rsource -j DROP

Автор: mariner 23.10.2011, 0:12

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

Автор: KT315 23.10.2011, 11:56

Так хочешь все порты, хочешь tcp, хочешь udp, отдельную цепочку опередели, а там и считай как необходимо. По сути, то же самое получается.
И recent, емнип, уже был в 2.4.14 - это ~10 лет тому было.
Впрочем, если есть тема, есть сайт со скриптом, есть скрипт - значит кому-то это нужно, если нужно - пусть будет.
Я тока высказал свое мнение к этому. secret_smile.gif

Автор: mariner 23.10.2011, 12:07

У твоего способа есть еще один недостаток - оповещение. Скрипт таки их шлет ;)

Автор: CrazyKiller 3.7.2012, 15:41

Вчера дросили, не помог скрипт ((((

Автор: Артём 3.7.2012, 16:34

Цитата(CrazyKiller @ 3.7.2012, 14:41) *
Вчера дросили, не помог скрипт ((((

amazing.gif дРосили? unhappy.gif

Автор: mariner 3.7.2012, 18:41

ддосили и досили? Это 2 разных понятия. И скрипт защищает от dos, а не от ddos.

Автор: CrazyKiller 3.7.2012, 19:31

а хз, тупо на сервак канал забили, пинг проходил ели ели :(

Автор: cyberghost_404 17.9.2018, 14:31

Код
root@direct:/usr/local/ddos# sh /usr/local/ddos/ddos.sh
/usr/local/ddos/ddos.sh: 13: [: /usr/local/ddos/ddos.conf: unexpected operator
DDoS-Deflate version 0.6
Copyright (C) 2005, Zaf <zaf@vsnl.com>

$CONF not found.


чет все равно ошибку выдает, хоть и изменил в /usr/local/ddos/ddos.sh на bash
Подскажите, пожалуйста.

Автор: KCAHDEP 18.9.2018, 6:22

Цитата(cyberghost_404 @ 17.9.2018, 14:31) *
Код
root@direct:/usr/local/ddos# sh /usr/local/ddos/ddos.sh
/usr/local/ddos/ddos.sh: 13: [: /usr/local/ddos/ddos.conf: unexpected operator
DDoS-Deflate version 0.6
Copyright (C) 2005, Zaf <zaf@vsnl.com>

$CONF not found.


чет все равно ошибку выдает, хоть и изменил в /usr/local/ddos/ddos.sh на bash
Подскажите, пожалуйста.

http://mydc.ru/r/?https://github.com/jgmdev/ddos-deflate#installation