Журнал Системный Администратор, Май 2008

Журнал Системный Администратор

Май 2008

Цена: $4.5 US

  Подписаться

Зарегистриванные пользователи, пожалуйста следуйте этой ссылке


Фильтруем спам в Exim с помощью SpamProbe

Павел Литвинов

Основой почтового сервера в нашей организации был Exim. Он отлично справлялся со своей задачей, при том что работал на достаточно слабом компьютере. Но через какое-то время количество нежелательной почты (спама) в организации возросло до такой степени, что это стало серьезной проблемой. И эту проблему надо было как-то решать.

Выбираем подходящий антиспам-фильтр

Стандартными средствами Exim отсеивалось большое количество спама, но не все. Посему было решено «прикрутить» к нему какой-нибудь антиспам-фильтр. Сказано – сделано. Недолгие поиски в Интернете определили два основных претендента:

n  SpamAssassin;

n  DSPAM.

Первый хоть и был «раскручен», обладал, на мой взгляд, одним, но весомым недостатком. Учитывая, что эта программа была написана на Perl, она сильно нагружала сервер при большом количестве входящей почты. А если взять в расчет то, что на почтовом сервере еще работал антивирус ClamAV, который и без того слабую машинку буквально вводил в ступор при анализе писем с вложенными файлами, было решено не использовать этот вариант.

Второй мне понравился больше, но я не смог в нем найти «белый список» с возможностью ручного редактирования (не автообучаемый), да и не хотелось устанавливать на и так загруженный компьютер базу данных MySQL, которая была необходима для полноценной работы DSPAM. В общем, и этот вариант мне не подошел.

Начался второй этап поиска. Просматривая порты на момент ключевого слова «SPAM», мне на глаза попался SpamProbe. Что сразу понравилось, программка была написана на C++, была маленькой, шустрой в работе и не требовала установки базы данных, в отличие от DSPAM. К тому же алгоритм работы программы построен на основе математической теоремы Байеса. А ведь именно этот метод статистической фильтрации является наиболее удачным и используется практически всеми спам-фильтрами, в том числе и упомянутыми ранее.

Метод Байеса подразумевает использование статистической, оценочной базы, разделенной на две части, одна из которых содержит черный список слов, а другая – белый. При анализе письма подсчитывается количество совпадений каждого отдельного слова (токена) со списками в базе, и на основании этого вычисляется оценка. Оценка эта колеблется в диапазоне от 0 до 1, где значение 0 означает отсутствие признаков спама, 1 – полную уверенность в том, что это спам.

Оставшая часть статьи доступна только подписчикам. Если вы желаете продолжить чтение этой статьи, то вам необходимо подписаться на эту статью или весь номер.

Подписаться на весь номер

Зарегистриванные пользователи, пожалуйста следуйте по этой ссылке
oread