четверг, июня 29, 2006

ДДД: Спаму — хрен! (2 серия)

Заканчивается первая неделя работы спам-фильтра ASSP на почтовом сервере. Пользователи в панике. Звонят: Почта не работает!!! — С какой стати? — А где мой спам??

Я сам получил последнее спамерское сообщение позавчера. Вчера и сегодня пусто. Это после трёх-четырёх десятков в день.

Изучение логов открывает много интересного. Во-первых, списки RBL — очень эффективная штука! Больше половины спама блокируется по ним.

Во-вторых, спамеры — ленивые бакланы. Огромное количество спамерских соединений в HELO говорит 'friend' или даёт IP моего собственного почтового сервера. Оно, конечно, срабатывает на полностью демократичном почтовике, но таких остаётся всё меньше... думаю, мой был один из последних :-)

В-третьих, Bayes — сила. Когда обучен. Первое обучение я делал на базе из примерно 500 спамерских писем (документация ASSP советует от 400), но реально фильтр заработал сегодня, когда база спама выросла до порядка 4000 писем, а неспамом я его накормил вручную, переслав на сервисный адрес несколько сот писем из своих архивов — да выбирал подлиннее, чтобы было много букафак :-)

В принципе, сейчас, когда и чёрная, и белая база образцов пополняются автоматически (вся исходящая переписка идёт в белый архив, определившийся спам — в чёрный), можно уже записывать в crontab ежесуточное пересоздание словаря для Bayes-фильтра. До сих пор я это делал ежедневно вручную.

Вчера изъяли у основных почтописателей адресные книги и в четыре руки отправили технические сообщения по всем контактам. Смысл был в том, что сам факт отправки письма туда ставит контакт в белый список, а это важно.

Последний шаг — включение Penalty Box, штрафной скамейки. Прокосячившиеся IP получают очки в зависимости от тяжести косяка. Так, попытка воспользоваться сервером как релеем начисляет 15 очков, а подложное HELO — сразу 200. Набравший 150 очков IP ставится в список, на основании которого ему потом просто сразу отказывается в соединении, без затрат времени и сил. Список тоже обслуживается автоматом, через какое-то время очки снимаются, а если что — снова начисляются, и новый срок :-) Список Penalty Box уже довольно большой, но только ведётся, пока что без принятия мер. С понедельника попробую включить.

Ну и выдержки из статистики за последние три дня:

Totalled Statistics

SMTP Connections Received: 23099
SMTP Connections Accepted: 22920
SMTP Connections Rejected: 179
Envelope Recipients Processed: 39721
Envelope Recipients Accepted: 17020
Envelope Recipients Rejected: 22701
Messages Processed: 6032
Messages Passed: 1205
Messages Blocked: 4827

Итого на 23 тыщи соединений принято 1205 сообщений.

Messages Statistics

Bayesian Hams: 305
Bayesian Spams: 416
HELO Forged: 1322
RBL Failures: 3089

Оч-чень хорошие цифирки :-) Подумать только, раньше эти 416+1322+3089 сообщений проходили бы и загаживали ящики. А теперь... а теперь надо усиленно качать музыку, чтобы внезапно сократившийся трафик не вызвал недоумения начальства :-)

1 комментарий:

cewil комментирует...

Если возникнет потребность, теперь я знаю к кому обратиться :)

Поиск по этому блогу