Установка · 4 min read · Sep 28, 2025

Идеальный SpamSnake - Ubuntu Jaunty Jackalope - Страница 4

17. Инструкции по установке MailWatch

Эта настройка предполагает, что вы используете Apache v2.x, а не Apache v1.x.

Перед началом убедитесь, что MailScanner работает, прежде чем продолжить установку MailWatch!

*Примечания для Ubuntu:

У вас должна быть настроенная и работающая копия MailScanner, а также MySQL, Apache и PHP. Вам также необходимо установить пакет Perl DBD-MySQL, чтобы части MailScanner на Perl могли использовать базу данных MySQL.

По умолчанию в php.ini должны быть правильно установлены следующие параметры, вы можете проверить это:

short_open_tag = On
safe_mode = Off
register_globals = Off
magic_quotes_gpc = On
magic_quotes_runtime = Off
session.auto_start = 0

Эти параметры будут закомментированы, вам нужно удалить “#”, чтобы активировать их:

extension=mysql.so
extension=gd.so

17.1 Установка

Скачайте последнюю версию MailWatch:

wget http://downloads.sourceforge.net/mailwatch/mailwatch-1.0.4.tar.gz?modtime=1178902008&big_mirror=0   
tar xzvf mailwatch-1.0.4.tar.gz   
cd mailwatch-1.0.4

17.2 Создание базы данных

mysql -p < create.sql

*Примечание: вам нужно будет изменить вышеуказанное в зависимости от вашей системы, если у вас есть пароль root для вашей базы данных MySQL (рекомендуется!) - Debian запросит его.

Создайте пользователя MySQL и пароль и настройте MailScanner для ведения SQL-журналов:

mysql -p   
mysql> GRANT ALL ON mailscanner.* TO mailwatch@localhost IDENTIFIED BY 'password';

Запомните пароль! Вам нужны одинарные кавычки ‘ вокруг вашего пароля.

17.3 Редактирование и перемещение MailWatch.pm

Отредактируйте MailWatch.pm и измените значения $db_user и $db_pass соответственно, затем переместите MailWatch.pm:

mv MailWatch.pm /opt/MailScanner/lib/MailScanner/CustomFunctions/

17.4 Создание веб-пользователя MailWatch

mysql mailscanner -u mailwatch -p
Введите пароль: ******
mysql> INSERT INTO users VALUES ('username',md5('password'),'mailscanner','A','0','0','0','0','0');

17.5 Установка и настройка MailWatch

Из распакованной директории mailwatch переместите директорию под названием ‘mailscanner’ в /var/www/.

mv mailscanner/ /var/www/   
cd /var/www/mailscanner

Создайте временную директорию:

mkdir temp   
chgrp www-data temp   
chmod g+w temp

Проверьте права доступа к /var/www/mailscanner/images и /var/www/images/cache - они должны быть ug+rwx и принадлежать root и быть в одной группе с пользователем веб-сервера.

chown root:www-data images   
chmod ug+rwx images   
chown root:www-data images/cache   
chmod ug+rwx images/cache

Создайте conf.php, скопировав conf.php.example, и отредактируйте значения, чтобы они соответствовали, вам нужно будет установить DB_USER и DB_PASS на пользователя MySQL и пароль, которые вы создали ранее.

Измените эти значения, как показано ниже:

define(DB_USER, 'mailwatch');
define(DB_PASS, 'password');
define(MAILWATCH_HOME, '/var/www/mailscanner');
define(MS_LIB_DIR, '/usr/lib/MailScanner/');
define(QUARANTINE_USE_FLAG, true);
define(QUARANTINE_FROM_ADDR, '[email protected]');
define(QUARANTINE_USE_SENDMAIL, true);

17.6 Настройка MailScanner

Отредактируйте /opt/MailScanner/etc/MailScanner.conf и убедитесь, что следующие параметры установлены:

Quarantine User = root
Quarantine Group = www-data
Quarantine Permissions = 0640
Quarantine Whole Message = yes
Always Looked Up Last = &MailWatchLogging
Quarantine Whole Message As Queue Files = no
Detailed Spam Report = yes
Include Scores In SpamAssassin Report = yes

*Важно: Действия со спамом, Действия с высоко оцененным спамом и Действия без спама также должны иметь ‘store’ в качестве одного из ключевых слов, если вы хотите помещать эти элементы в карантин для обучения bayes или просмотра из MailWatch.

17.7 Интеграция SQL черного/белого списка (по желанию)

Если вы хотите управлять белым и черным списками MailScanner из веб-интерфейса MailWatch, выполните следующие шаги.

  1. Отредактируйте значения подключения MySQL в подпрограмме CreateList файла SQLBlackWhiteList.pm, чтобы они соответствовали значениям, которые вы ранее ввели в MailWatch.pm. Оба файла должны содержать одни и те же значения. (Ищите следующие строки в SQLBlackWhiteList.pm и введите свои данные.)
my($db_user) = 'mailwatch';
my($db_pass) = 'password';
  1. Скопируйте SQLBlackWhiteList.pm в /opt/MailScanner/lib/MailScanner/CustomFunctions/.

  2. Отредактируйте MailScanner.conf и установите:

Is Definitely Not Spam = &SQLWhitelist
Is Definitely Spam = &SQLBlacklist

17.8 Исправление для работы MailWatch с очередью входящих/исходящих сообщений Postfix

Скачайте патч с http://www.gbnetwork.co.uk/mailscanner/files/postfixmail.tar.gz

cd /usr/src   
wget http://www.gbnetwork.co.uk/mailscanner/files/postfixmail.tar.gz   
tar xvfz postfixmail.tar.gz   
cd postfixmail   
cp postfix* /var/www/mailscanner/   
patch /var/www/mailscanner/functions.php functions.php.diff

17.9 SpamAssassin

Сначала нам нужно отключить файл конфигурации по умолчанию для SpamAssassin:

mv /etc/spamassassin/local.cf /etc/spamassassin/local.cf.disabled

Теперь давайте создадим резервную копию файла конфигурации SpamAssassin в MailScanner, а затем отредактируем:

cp /opt/MailScanner/etc/spam.assassin.prefs.conf /opt/MailScanner/etc/spam.assassin.prefs.conf.back

Добавьте пути pyzor и razor в начало /opt/MailScanner/etc/spam.assassin.prefs.conf:

pyzor_options --homedir /var/lib/MailScanner/   
razor_config /var/lib/MailScanner/.razor/razor-agent.conf

Ищите эти строки и измените их соответственно:

bayes_ignore_header X-YOURDOMAIN-COM-MailScanner
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-SpamCheck
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-SpamScore
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-Information

“YOURDOMAIN-COM” следует заменить на то, что вы использовали для “%org-name%” в файле MailScanner.conf. Оставьте “X-“ на месте. Это то же самое имя организации, которое использовалось в MailScanner.conf выше.

Отредактируйте SpamAssassin v310.pre, чтобы включить Razor и DCC:

loadplugin Mail::SpamAssassin::Plugin::DCC
loadplugin Mail::SpamAssassin::Plugin::Razor2

17.10 SpamAssassin SQL Bayes

Предварительные требования

a. Вам нужно будет установить модули perl-DBI и perl-DBD-MySQL.

Предположения и переменные:

Имя базы данных SpamAssassin Bayes: sa_bayes
Имя пользователя базы данных SpamAssassin Bayes: sa_user
Пароль базы данных SpamAssassin Bayes: sa_password

Создайте базу данных MySQL:

Сначала создайте базу данных на сервере, где вы собираетесь хранить байесовскую информацию.

mysql -u root -p
mysql> create database sa_bayes;   
mysql> GRANT ALL ON sa_bayes.* TO sa_user@localhost IDENTIFIED BY 'sa_password';   
mysql> flush privileges;

Найдите файл bayes_mysql.sql:

find / -name bayes_mysql.sql   
mysql -u sa_user -p sa_bayes < /path/to/bayes_mysql.sql

Внесите некоторые изменения в ваш spam.assassin.prefs.conf:

bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql:sa_bayes:localhost
bayes_sql_username sa_user
bayes_sql_password sa_password
bayes_sql_override_username root

Убедитесь, что следующее закомментировано:

#bayes_path /etc/MailScanner/bayes/bayes
#bayes_file_mode 0660

Также добавьте это в свой crontab:

30 01 * * * /usr/bin/sa-learn --force-expire --sync -p /opt/MailScanner/etc/spam.assassin.prefs.conf 
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.