!Здесь нет инструкции по установке roundcube + sauserprefs + markasjunk2. Предполагается, что вы уже установили и настроили roundcube + sauserprefs + markasjunk2, делая настройки, которые указаны ниже. Инструкция проверена и работает на нашем сервере.
Установка
Код: Виділити все
apt-get install spamassassin
!При установке spamassassin устанавливается так же spampd и для которого создается пользователь и группа spampd:spampd, домашний каталог /nonexistent и с запретом входа через шелл /bin/false
Настройка
Весь SQL храниться в ls /usr/share/doc/spamassassin/sql и вполне актуален.
Далее создаём nano /etc/spamassassin/sql.cf
Код: Виділити все
user_scores_dsn DBI:mysql:dbname:localhost
user_scores_sql_username spamassassin
user_scores_sql_password password
# Если вы используете стандартную SQL таблицу, то эту строку можно не указывать
#user_scores_sql_custom_query SELECT preference, value FROM _TABLE_ WHERE username = _USERNAME_ OR username = '$GLOBAL' OR username = CONCAT('%',_DOMAIN_) ORDER BY username ASC
auto_whitelist_factory Mail::SpamAssassin::SQLBasedAddrList
user_awl_dsn DBI:mysql: dbname:localhost
user_awl_sql_username spamassassin
user_awl_sql_password password
user_awl_sql_table awl
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql: dbname:localhost
bayes_sql_username spamassassin
bayes_sql_password password
dbname – имя базы данных
localhost – хост базы данных
Если же нужно указать порт Базы Данных, то прописываем порт так:
DBI:mysql:dbname:localhost:3306
Настройка spamd
Создаем пользователя и группу spamd c HOME в /var/lib/spamassassin
Код: Виділити все
groupadd -g 5001 spamd
useradd -u 5001 -g spamd -s /sbin/nologin -d /var/lib/spamassassin spamd
chown spamd:spamd /var/lib/spamassassin
Код: Виділити все
ENABLED=1
SAHOME="/var/lib/spamassassin"
OPTIONS="-q -x --max-children 5 --username spamd --helper-home-dir ${SAHOME} -s /var/log/spamassassin/spamd.log"
PIDFILE="${SAHOME}spamd.pid"
CRON=1
Настраиваем доставку + фильтрация
Транспорт dovecot: nano /etc/postfix/main.cf
Код: Виділити все
local_transport = dovecot
virtual_transport = dovecot
Изначально он выглядел так
Код: Виділити все
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient}
Код: Виділити все
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/bin/spamc -f -u ${recipient} -e /usr/lib/dovecot/deliver -d ${recipient}
Открываем nano /etc/spamassassin/local.cf
Код: Виділити все
rewrite_header Subject *****SPAM*****
report_safe 1
required_score 5.0
use_bayes 1
bayes_auto_learn 1
Почти во всех руководствах только такой вариант:
использование content_filter и настройка нового транспорта spamassassin, который пересылает письмо через sendmail.
Этот вариант не работает в случае с dovecot и приводит к зацикливанию письма.
Настройка roundcube плагинов тривиальна. Главное не забыть указать learning_driver в markasjunk2
===
Дополнительно (настройка и установка не обязательна)
Перегнать существующую базу bayes в sql
Код: Виділити все
sa-learn --dbpath /var/lib/spamassassin/.spamassassin/ --backup > ~/bayes.txt
sa-learn --restore ~/bayes.txt
Код: Виділити все
ls /etc/spamassassin/
ls /usr/share/spamassassin/
Код: Виділити все
nano /etc/spamassassin/v310.pre
nano /etc/spamassassin/v312.pre
nano /etc/spamassassin/v320.pre
nano /etc/spamassassin/v330.pre
Если есть вопросы, пишите, постараюсь ответить• Postfix (http://postfix.org) – это популярный MTA (Mail Transfer Agent), позволяющий эффективно передавать письма адресатам.
• Dovecot (http://dovecot.org) – Secure IMAP server. IMAP-сервер, рассчитанный на максимальную безопасность и надежность. Преимуществом этой программы является то, что для поиска в больших файлах применяется бинарный древовидный индекс. Как указывает автор этого сервера, он тестировал его с 367 000 почтовыми учетными записями и не обнаружил проблем. Также программа может обслуживать запросы пользователей с помощью протоколов imap, imaps, pop3, pop3s.
• ClamAV (http://clamav.sourceforge.net) – opensource-антивирус.
• SpamAssasin (http://spamassasin.org) – почтовый фильтр. Предназначен для борьбы со спамом.
• Amavisd-new (http://www.ijs.si/software/amavisd) – высокоэффективный и надежный интерфейс между MTA и одним или несколькими фильтрами содержимого: вирусные сканеры, спам-фильтры (в нашем случае Spam Assassin). Amavisd-new написан на Perl, обеспечивающим высокую надежность, мобильность и ремонтопригодность. Он взаимодействует с MTA через (E) SMTP или LMTP или при использовании программ-посредников.