Вот довелось настраивать на одном из почтовых серверов, 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/?p=2598


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

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

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

Add your comment now

You must be logged in to post a comment.