Настройка crm114 в связке с dovecot-antispam Плагин dovecot-antispam для dovecot позволяет сделать обучение спамофильтра более удобным: указав плагину имя директории со спамом, можно автоматически обозначать почту как спам или не спам, перенося её в/из этой директории соответственно. В данном статье рассматривается способ организации связки MDA (maildrop), фильтра (crm114) и IMAP-сервера (dovecot) для реализации этой возможности. В качестве базовой системы рассматривается Debian 6.0 (squeeze). Установка Установим необходимые пакеты штатным способом из репозитория (для dovecot-antispam потребуется подключить репозиторий squeeze-backports или взять версию из wheezy): dovecot dovecot-antispam crm114 (содержит почтовый фильтр) maildrop (или любой другой MDA, который Вы сумеете настроить должным образом) mew-bin (для распаковки MIME-вложений) Настройка dovecot-antispam Скопируйте шаблон настроек плагина из man dovecot-antispam в /etc/dovecot/dovecot.conf или во включаемый файл настроек. Задайте путь к исполняемому файлу mailreaver из состава crm114 и укажите имена папок для спама, подозрительных на спам писем и папки удалённых сообщений. Code: plugin { # backend selection, MUST be configured first, # there's no default so you need to set one of # these options: antispam_backend = crm114 # semicolon-separated list of Trash folders (default unset i.e. none) antispam_trash = Trash # semicolon-separated list of spam folders antispam_spam = spam # semicolon-separated list of unsure folders (default unset i.e. none) antispam_unsure = suspicious #=================== # crm114 plugin # mailreaver binary antispam_crm_binary = /usr/share/crm114/mailreaver.crm # semicolon-separated list of extra arguments to dspam # (default unset i.e. none) antispam_crm_args = --fileprefix=%h/.crm114/ # NOTE: you need to set the signature for this backend antispam_signature = X-CRM114-CacheID } Включите плагин антиспама в dovecot.conf Code: protocol imap { mail_plugins = antispam mail_plugin_dir = /usr/lib/dovecot/modules/imap } Предварительная настройка CRM114 Согласно указанному в переменной antispam_crm_args, будем хранить настройки crm114 в подкаталоге .crm114 родительского каталога пользователя. Распакуйте пример настроечного файла mailfilter.cf из /usr/share/doc/crm114/examples/mailfilter.cf.gz и отредактируйте его, особое внимание обратив на поля spw, mime_decoder, log_to_allmail.txt и trainer_invoke_command. Создайте файл rewrites.mfp аналогичного вида, указав подходящую информацию: Code: vassile@pupkine.example.com>->MyEmailAddress [[:space:]]Vassile Pupkine>-> MyEmailName mail.example.com>->MyLocalMailRouter 192.168.10.20>->MyLocalMailRouterIP Инициализируйте базы спама/не спама: Code: cssutil -b -r spam.css cssutil -b -r nonspam.css Создайте (возможно, пустой) файл priolist.mfp, предназначенный для хранения белых/чёрных списков хостов Настройка MDA При получении письма следует его сначала пропустить через mailreaver из комплекта CRM114, чтобы добавить заголовки с информацией о результате проверки и идентификатором сообщения в кеше. Последнее будет использоваться впоследствии при переобучении фильтра. Затем, в зависимости от результатов проверки, письмо сохраняется в папку спама или подозрительных писем. Для maildrop и хранилища почты в виде Maildir вышеописанное будет выглядеть следующим образом: Code: DEFAULT="$HOME/Maildir" xfilter "/usr/share/crm114/mailreaver.crm -u $HOME/.crm114/" if (/X-CRM114-Status: SPAM.*/) { to $DEFAULT/.spam/ } if (/X-CRM114-Status: Unsure.*/) { to $DEFAULT/.suspicious/ } Обучение спамофильтра Теперь пора приступать к обучению фильтра: Спам перемещать в папку spam Нужные сообщения перемещать из папок spam и suspicious в подходящее место Для обучения спамофильтра на ранее пришедших письмах используйте: "/usr/share/crm114/mailreaver.crm -u $HOME/.crm114/ --good < /путь/к/письму "/usr/share/crm114/mailreaver.crm -u $HOME/.crm114/ --spam < /путь/к/письму Для исходящей почты предусмотрен отдельный режим обучения: "/usr/share/crm114/mailreaver.crm -u $HOME/.crm114/ --outgoing < /путь/к/письму 02.06.2012 , Автор: Alexander Galanin http://www.opennet.ru/tips/2694_mail_dovecot_spam_filter.shtml
Всю ночь допиливал...Вроде работает хорошо Только обучение не особо понятно как всё до конца сделать что бы работало стабильно