Вот довелось настраивать на одном из почтовых серверов, spamassasin.

Основное условие, которое приследовало — нужно было сделать возможность на автомате обучать spam и ham письмам. Задача, не сложная — скажем так, даже наоборот — стандартная.
Усложняется только маленькой оговоркой — нужно сделать для одного пользователя папки spam и nospam, в которые он по imap, будет сортировать спам и не спам, но помеченных как спам сообщения. А так же создать пользователя spam и всё что будет присылаться на него — считать спамом.

Что для этого всего нужно?.

1. Доступ к серверу по ssh
2. Создать пользователя spam, создать директории для нужного пользователя spam и nospam
3. Написать скрипт, который будет проверять наличие писем в указанных директориях и запускать обучалку.

Расписали, теперь делаем:
Заходим по ssh на сервер и создадим стандартного пользователя используя скрипт adduser.
Создадим скрипт:

# mcedit -ac /usr/local/etc/scripts/sa-learn.sh

Заполним файл такими строками:

# cat /usr/local/etc/scripts/sa-learn.sh
#!/bin/sh
###sa-learn.sh###
 
if [ `ls /home/spam/Maildir/ | wc -l` = "0" ]
then
else
/usr/local/bin/sa-learn --spam /home/spam/Maildir/
/bin/rm -rf /home/spam/Maildir/*
fi
 
if [ `ls /home/user/Maildir/.INBOX.spam/ | wc -l` = "0" ]
then
else
/usr/local/bin/sa-learn --spam /home/user/Maildir/.INBOX.spam/
/bin/rm -rf /home/user/Maildir/.INBOX.spam/*
fi
 
if [ `ls /home/user/Maildir/.INBOX.nospam/ | wc -l` = "0" ]
then
else
/usr/local/bin/sa-learn --ham /home/user/Maildir/.INBOX.nospam/
/bin/rm -rf /home/user/Maildir/.INBOX.nospam/*
fi

Установим в запуск скрипта на каждые 2 часа в крон:

59      */2     *       *       *       root    /usr/local/etc/scripts/sa-learn.sh

Теперь при появлении писем в директориях:

/home/spam/Maildir/
/home/user/Maildir/.INBOX.spam/
/home/user/Maildir/.INBOX.nospam/

Будут выполняться действия по обучения spamassasina.

Напоминаю всем копирующим мой контент о существовании закона "Об авторском праве".
В связи с этим, прошу во избежании конфликтов при копировании данного материала, ставить на него ссылку:

http://noted.org.ua/2598


Также, вы можете отблагодарить меня переслав любую сумму на любой кошелек WebMoney, для поддержания данного ресурса. Или просто админу на пиво ;)

Кошельки для получения благодарности:
R386985788805
U234140473141
Z147712360455

На данной странице нет комментариев, возможно они закрыты. Если Вы хотите оставить свой комментарий, перейдите на специально созданный раздел

Add your comment now

Please note: JavaScript is required to post comments.