Итак, мы знаем, как определяется спам и как его положить в отдельную папку на сервере. Как вы понимаете, всегда будет некоторое количество спама, которое таки прилетит во «Входящие», и некоторое количество нормальных писем, которые улетят в «Спам» (Junk). И нам надо дать пользователю шанс оперативно известить нас… Нет, не так. Нас оповещать не надо — мы ленивые. Пусть он это сообщить нашей проверочной программе, то есть SpamAssassin’у, в нашем случае. В вики dovecot’а есть статья, но она не очень полезна, если у нас разные uid’ы на ящиках, так как там предполагается, что sa-learn вызывается из скрипта (без перенаправления ввода нельзя отдать sa-learn’у письмо, так что без «обёртки» не обойтись) от имени пользователя. То есть с тем же uid’ом, что и[…]

Я писал об SpamAssassin не так давно. Ну вот отметили мы письмо как спам? И чего? Удалять его сразу? Нет, это сильно не вариант. Ибо всегда есть шанс того, что спамом оно не было, а пользователь его очень-очень ждал… И чего делать? Правильно — не удалять до определённого порога. Например мы отмечаем от пяти балов письма как спам, но удаляем сразу от двенадцати. Но и отдавать его во входящие пользователю тоже не красиво. Но мы же можем его отсортировать в отдельную папку, прямо на сервере. В этом нам поможет sieve-скрипт следующего содержания: require [«fileinto»,»imap4flags»]; if header :contains «X-Spam-Flag» [«YES»] { setflag «\\seen»; fileinto «Junk»; stop; } else { # The rest goes into INBOX # default is «implicit keep», we[…]

Подумал я написать об борьбе со спамом подручными способами. У меня это организованно с помощью spamassassin’а, а значит и писать нужно о нём. Решил проверить, как оно сейчас обстоит с информацией по данной тематике, погуглил десять минут и пришёл к выводу, что писать точно надо… Что такое SpamAssassin? Это парадоксально, но прямого ответа на данный вопрос я так и не нашёл, пока гуглил. Ну чтож, отвечу на него сам: SpamAssassin — система комплексной оценки e-mail сообщения. Методы оценки сообщения в SpamAssassin Начнём с того, что есть два типа фильтров: статичные правила и обучаемый байесовый (bayes) фильтр. За прохождение первых и второго сообщению назначают некие «балы». Вес каждого фильтра задаётся в формате строки из четырёх чисел. Каждое число определяет определённое состояние[…]