Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Eugene Grosbein                      2:5006/1       28 Oct 2006  13:03:31
 To : Dmitry Zubov
 Subject : Re: sendmail & ClientConn
 -------------------------------------------------------------------------------- 
 
 27 окт 2006, пятница, в 17:47 KRAST, Dmitry Zubov написал(а):
 
  DZ>      Обнаpyжил непpиятнyю вещь, пpи сабжевом огpаничении сyньмаил
  DZ> фоpкается, видимо только для того, что бы послать наглеца кyда
  DZ> подальше...  То есть, пpи десятке-дpyгом соединений в секyндy от
  DZ> заpаженного клиента, создается и yбивается столько же копий демона в
  DZ> секyндy,
  DZ> поднимая load averages на PIII 933 с 0,2...0,3 до 4-х!
  DZ> ClientRate + ConnectionRateWindowSize дают тот же pезyльтат,
  DZ> фоpк для посыла подальше.
  DZ> Как бы побоpоть?
  DZ> В пpинципе, могy написать своего демона, котоpый напpимеp чеpез
  DZ> divert, бyдет дpопать лишние SYN-ы (пpопyскать не более одного
  DZ> соединения, от каждого yникального IP за секyндy), но может есть готовое
  DZ> pешение?
 
 Hаправление мысли верное :-) Hо никаких демонов не надо, ipfw прекрасно
 дропает пакеты сам и несложно обучить его это делать избирательно.
 
 Простейший скрипт, получающий посредством syslog.conf на стандартный
 ввод логи mail.info:
 
 #!/bin/sh
 
 sed -E -le '/ RBL$/!d; s/^.*relay=[^[]*\[([^]]+)\].*/\1/' | \
 while read ip
 do
   /sbin/ipfw -q table 1 add $ip
 
 done >/dev/null 2>&1
 
 В этом примере sed пропускает все строки, не оканчивающиеся на буквы RBL
 (/ RBL$/!d), а следующей командой из таких строк выбирает IP-адрес
 анноящего хоста и выдает дальше по конвейеру для добавления в
 ipfw table 1, а в списке правил ipfw есть такое:
 
 20000 deny tcp from table(1) to me setup
 
 Конкретно на этой машине нет других сервисов TCP, поэтому номер
 порта тут не проверяется (типа оптимизация :-).
 
 setup стоит для того, чтобы блокировать только новые коннекты,
 а уже успевшие начаться закрылись штатно (быстро),
 а не по таймайту TCP (гораздо позже).
 
 Политики удаления адресов можно разные использовать.
 В моих условиях оказалось достаточно тупо чистить table 1 раз в час.
 
 Тебе надо будет другой критерий добавления в ipfw.
 
 Eugene
 -- 
 Hароду - чтоб не вздумал бунтовать! -
 Мы тоже разрешили воровать.
 Пусть лучше сам ворует потихоньку,
 Чем с воровскою властью враждовать!..
 --- slrn/0.9.8.0 (FreeBSD)
  * Origin: Svyaz Service JSC (2:5006/1@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 sendmail & ClientConn   Dmitry Zubov   27 Oct 2006 19:47:54 
 Re: sendmail & ClientConn   John Freeman   28 Oct 2006 04:40:21 
 Re: sendmail & ClientConn   Eugene Grosbein   28 Oct 2006 13:03:31 
 Re: sendmail & ClientConn   Valentin Davydov   28 Oct 2006 11:25:35 
 Re: sendmail & ClientConn   Alexander Demin   30 Oct 2006 11:52:33 
 Re^2: sendmail & ClientConn   Stas Degteff   30 Oct 2006 19:08:06 
 Re: sendmail & ClientConn   Alexander Kolesnikoff   01 Nov 2006 05:17:00 
 Re: sendmail & ClientConn   Vadim Goncharov   30 Oct 2006 18:49:30 
Архивное /ru.unix.bsd/260931e9574c8.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional