LINUX.ORG.RU

ddos на tcp 25


0

0

Дано:
OS: Linux CentOS
MTA: Exim

В конфиге:

smtp_accept_max = 200
smtp_accept_max_per_host = 1

Рулесы в iptables:

$IPT -v -A INPUT -p tcp -m tcp --sport 1024:65535 --dport 25 -m state --state ESTABLISHED -j ACCEPT;

$IPT -v -A INPUT -i $IF -p tcp -m tcp --sport 1024:65535 --dport 25 -m state NEW -m hashlimit --hashlimit 1/s --hashlimit-burst 2 --hashlimit-mode srcip --hashlimit-name SMTP --hashlimit-name SMTP -j ACCEPT;

Что имеем:
В логах по 10-20 строк подряд вида:
Connection from [w.x.y.z] refused: too many connections

netstat -nt |grep ':25' |awk '{print $5}' |awk -F: '{print $1}' |sort -n |uniq |wc -l
1591

Примечание: Уже думаю написать автобанилку по подсетям, но очень нежелательно закрывать валидных юзеров :(

Вопрос:
Any ideas?

>too many connections

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



как одно с другим связано ?

VIM
()
Ответ на: комментарий от VIM

Ну отлавливать тех кто создает множество соединений с одного IP и DROP их...

Kalashmat
() автор топика

iptables -A INPUT -p tcp --syn --dport 25 -m recent --name smtpd --set
iptables -A INPUT -p tcp --syn --dport 25 -m recent --name smtpd --update --seconds 300 --hitcount 3 -j DROP

SlavikSS ★★
()

>smtp_accept_max_per_host = 1

ИМХО, это слишком мало, достаточно много smtp серверов открывает одновременно 5-10 коннектов. То есть ваша автобанилка может забанить нормальные сервера.

У вас в netstat tcp-соединения в каком состоянии? TIME_WAIT?

mky ★★★★★
()
Ответ на: комментарий от mky

>У вас в netstat tcp-соединения в каком состоянии? TIME_WAIT?
Да, большинство в таком состоянии.

Kalashmat
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.