Настройка spamassassin centos 7

Обновлено: 05.07.2024

Устанавливаем антивирус clamAV
yum -y install clamav clamd
обновляем базы
freshclam -v
прописываем в запуск
chkconfig clamd --level 35 on
делаем бекап конифга
mv -v /etc/clamd.conf /etc/clamd.conf.bak
и настраиваем антивирус

существует большое количество статей на тему настройки clamAV и Spamassassin, поэтому на их настройках особо останавливаться не будем.


Переходим к установке exim
yum install exim exim-mysql.x86_64 -y
и устанавливаем все необходимые пакеты для его дальнейшей пересборки- сборки
yum install pcre-devel.i686 pcre-devel.x86_64 libXt-devel.x86_64 libXt-devel.i686 libXaw-devel.i686 libXaw-devel.x86_64 firebird-devel.i686 firebird-devel.x86_64 mysql-devel.i686 mysql-devel.x86_64 pcre.x86_64 pcre.i686 pcre-static.x86_64 sqlite-devel.i686 sqlite-devel.x86_64 -y
Добавляем пользователей в групп exim
usermod -a -G exim apache
usermod -a -G exim clam

теперь создаем дерево каталогов в которое будет установлен exim
mkdir -v /opt/exim/tmp
mkdir -v /opt/exim/var/
mkdir -v /opt/exim/var/spool/
mkdir -v /opt/exim/var/spool/exim
даем права
chown exim:exim -R /opt/exim/

добавляем службу в запуск
cp -v /etc/init.d/exim /etc/init.d/exim.bak
сhmod 600 /etc/init.d/exim.bak

добваляем возможность запуска exim в режиме отладки
debug() stop
echo $"Starting exim in debug mode: "
bash -c "/opt/exim/bin/exim -bd -q15m -d+all > /opt/exim/tmp/debug.log 2>&1 &"
>

добавляем в exim
chkconfig exim --level 35 on

настраиваем конфиг exim

h ide mysql_servers = localhost/contrspam/ MYMEGAUSER / MYMEGAPASS
где MYGAUSER и MYMEGAPASS это логин и пароль к бд contrspam
MYSQL_Q_RDOMAINS = SELECT domain FROM tb_domains WHERE domain='$domain';
MYSQL_Q_WHITELIST = SELECT DISTINCT email FROM tb_emails LEFT JOIN tb_domains ON tb_emails.domain_id = tb_domains.id WHERE type = 'white' AND domain = '$' AND ( email = '$' OR email = '*@$' );
MYSQL_Q_BLACKLIST = SELECT DISTINCT email FROM tb_emails LEFT JOIN tb_domains ON tb_emails.domain_id = tb_domains.id WHERE type = 'black' AND domain = '$' AND ( email = '$' OR email = '*@$' );
MYSQL_Q_DOMAIN = SELECT * FROM tb_domains WHERE domain='$domain';

domainlist local_domains = @
domainlist relay_to_domains = mysql;MYSQL_Q_RDOMAINS
hostlist relay_from_hosts = EXTERNIP :127.0.0.1

я выложил только настройки для exim необходимые для работы с grey листом

теперь надо развернуть сами базы данных, для этого конечно необходимо создать базу данных

contrspam (я конечно предполагаю, что читатель уже обладает основными навыками работы с базами данных)
Как только истекает интервал N мин. вновь полученное письмо отправляют на проверку на спам и вирусы.

Если что то не заработало, то внимательно читаем /opt/exim/tmp/debug.log

Все замечательно, но добавлять через консоль или phpMyadmin новые домены и листы доступа для этих доменов очень не удобно.
Для этого за основу был взят движок FreePbx и на его основе был разработан свой, под который были написаны модули для работы с exim.

Распаковываем движок engine-v1.tar.gz в нужную директорию, в нашем случае /var/www/
путь к сайту указывается в системных переменных в базе данных exim в таблице settings
BIN=/var/www/html/bin
WEBROOT=/var/www/html

создаем базу данных с именем exim и в нее разворачиваем БД
mysql -u root -p exim < exim.sql

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>

В данной инструкции выполнена настройка полноценного почтового сервера. Список всех особенностей и возможностей:

  • Почтовая система на базе Postfix;
  • Поддержка виртуальных доменов;
  • Хранение почты на сервере;
  • Подключение к почтовым ящикам по POP3 и IMAP (Dovecot);
  • Поддержка шифрования;
  • Хранение части настроек в MariaDB;
  • Защита от СПАМа и вирусов;
  • Доступ к почте с помощью веб-интерфейса (Roundcube);
  • Возможность управление почтовыми ящиками с помощью PostfixAdmin.

Содержание

1. Преднастройка системы

Напоминаю, данная инструкция написана под систему Linux CentOS версии 7.

Общие настройки

Задаем правильное имя серверу — это важный шаг, так как большинство антиспам систем выполняют проверки, обращаясь к серверу по имени в ожидании ответа.

Устанавливаем служебные пакеты (они понадобятся в процессе настройки сервера):

yum install chrony wget

* chrony для возможности синхронизировать время на сервере; wget — клиент для загрузки файлов.

Задаем временную зону (в данном примере московское время):

timedatectl set-timezone Europe/Moscow

Разрешаем сервис для синхронизации времени и запускаем его:

systemctl enable chronyd --now

Настройка безопасности

Заранее открываем порты на брандмауэре с помощью firewalld:

firewall-cmd --permanent --add-port=25/tcp --add-port=80/tcp --add-port=110/tcp --add-port=143/tcp --add-port=443/tcp --add-port=465/tcp --add-port=587/tcp --add-port=993/tcp --add-port=995/tcp

* где мы откроем следующие порты:

В CentOS также может использоваться утилита iptables — в таком случае команды будут следующие:

iptables -I INPUT 1 -p tcp --match multiport --dports 25,465,587 -j ACCEPT

iptables -I INPUT 1 -p tcp --match multiport --dports 110,143,993,995 -j ACCEPT

iptables -I INPUT 1 -p tcp --match multiport --dports 80,443 -j ACCEPT

Отключение SELinux

Для отключения дополнительного компонента безопасности вводим 2 команды:

* первая команда отключит SELinux для текущей загрузки. Вторая оставит его отключенным на постоянной основе.

2. Настройка веб-сервера: NGINX + PHP + MariaDB

Система управления PostfixAdmin работает как веб-приложение, разработанное на PHP, а информацию хранит в базе данных. В нашем примере будет использоваться веб-сервер на NGINX, а база данных — MariaDB.

Установка NGINX

Устанавливаем репозиторий EPEL:

yum install epel-release

yum install nginx

Разрешаем автозапуск сервиса и запускаем его:

systemctl enable nginx

systemctl start nginx

Проверяем работоспособность веб-сервера, обратившись к нему в браузере по IP-адресу. Если видим заголовок «Welcome to nginx!», NGINX настроен верно.

Приветствие NGINX — все настроено верно

PHP + PHP-FPM + NGINX

Устанавливаем php и php-fpm:

yum install php php-fpm

server listen 80 default_server;
set $root_path /usr/share/nginx/html;

location / root $root_path;
index index.php index.html;
>

location \.php$ fastcgi_pass unix:/var/run/php-fpm/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
include fastcgi_params;
fastcgi_param DOCUMENT_ROOT $root_path;
>
>

* где /usr/share/nginx/html — каталог для размещения портала управления Postfix.

* здесь мы поменяли строку 127.0.0.1:9000.

systemctl enable php-fpm

systemctl start php-fpm

systemctl restart nginx

* если в процессе перезапуска nginx выскочит ошибка nginx: [emerg] a duplicate default server, необходимо найти настройку виртуального домена, в которой также указана опция default_server — опцию нужно убрать. Или можно самостоятельно настроить другой виртуальный домен.

Для проверки, создаем индексный файл в директории сайта со следующим содержимым:

Открываем сайт в браузере по его IP-адресу. На открывшейся странице мы должны увидеть подробную информацию по php:

phpinfo

MariaDB

Устанавливаем сервер баз данных следующей командой:

yum install mariadb-server

Включаем автозапуск сервиса и запускаем его:

systemctl enable mariadb

systemctl start mariadb

Задаем пароль для пользователя sql root:

mysqladmin -u root password

3. Установка и настройка PostfixAdmin

Устанавливаем дополнительные компоненты для PHP:

yum install php-mysql php-mbstring php-imap

Для применения установленных пакетов, перезапускаем обработчик скриптов:

systemctl restart php-fpm

В директории сайтов nginx создаем каталог для postfixadmin и распаковываем в него архив:

tar -C /usr/share/nginx/html/postfixadmin -xvf postfixadmin.tar.gz --strip-components 1

Создаем каталог templates_c внутри папки портала (без него не запустится установка):

Задаем права на каталог:

chown -R apache:apache /usr/share/nginx/html/postfixadmin

* несмотря на то, что мы используем веб-сервер nginx, php-fpm по умолчанию, запускается от пользователя apache.

Создаем базу данных postfix и учетную запись в mariadb:

> CREATE DATABASE postfix DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

* где postfix — имя базы.

* где postfix — имя учетной записи; postfix123 — пароль; localhost разрешает подключение только с локального сервера.

Выходим из командной оболочки MariaDB:

Создаем конфигурационный файл postfixadmin:

И добавим следующее:

* где configured говорит приложению, что администратор закончил его конфигурирование; default_language — используемый язык по умолчанию; database_password — пароль для базы данных, который мы задали на предыдущем шаге; emailcheck_resolve_domain — задает необходимость проверки домена при создании ящиков и псевдонимов.

Задаем дважды пароль установки и генерируем хэш, кликнув по Generate setup_password hash:

Вводим пароль для установки и генерируем хэш

После перезагрузки страницы копируем хэш:

Так выглядит хэш PostfixAdmin

Открываем конфигурационный файл:

И добавляем строчку:

Форма для входа с паролем установки

* где Setup password — пароль, который мы ввели на предыдущей странице; Пароль — новый пароль для создаваемой учетной записи.

Будет выполнена установка PostfixAdmin.

Если в процессе установки система выведет ошибки, необходимо самостоятельно с ними разобраться. Как правило, они могут сводиться к отсутствию необходимых пакетов, которых может не оказаться в системе по умолчанию.

После установки в нижней части страницы должна быть форма добавления суперпользователя — вводим данные:

Создаем суперпользователя PostfixAdmin

Вводим логин и пароль для созданного пользователя.

Однако, конкретно, в моем случае, пользователь не создавался при установке системы и необходимо было создать администратора вручную. Если это потребуется, в консоли сервера подключаемся к СУБД:

Переходим к использованию базы postfix:

Добавляем администратора запросом:

Выходим из sql-оболочки:

4. Настройка Postfix

По умолчанию, Postfix уже установлен в CentOS 7. Но если встретится сервер без него, выполним установку простой командой:

yum install postfix

Создаем учетную запись, от которой мы будем работать с каталогом виртуальных почтовых ящиков:

groupadd -g 1024 vmail

useradd -d /home/mail -g 1024 -u 1024 vmail -m

* сначала мы создаем группу vmail и guid 1024, после — пользователя vmail с uid 1024 и домашней директорией /home/mail. Обратите внимание, что в некоторых системах идентификатор группы и пользователя 1024 может быть занят. В таком случае необходимо создать другой, а в данной инструкции ниже заменить все 1024 на альтернативный.

Теперь открываем на редактирование конфигурационный файл почтового сервера:

И редактируем следующие строки:

* данная настройка указывает, какой домен подставлять отправителю, если он не указан в заголовке FROM.

mydestination = localhost.$mydomain, localhost, localhost.localdomain

* указываем, для каких доменов принимаем входящую почту.

local_recipient_maps = unix:passwd.byname $alias_maps

* указываем, откуда брать список локальных пользователей.

* необходимо убедиться, что postfix будет слушать на всех необходимых интерфейсах, в данном случае, на всех (all). Также можно задать варианты loopback-only (127.0.0.1) или конкретный IP-адрес интерфейса.

* данный параметр задаст протокол для работы postfix. В данном примере на всех (all). Также можно задать значения ipv4 или ipv6.

Теперь в конец конфигурационного файла допишем следующее:

virtual_mailbox_base = /home/mail
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 1024
virtual_uid_maps = static:1024
virtual_gid_maps = static:1024
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1

smtpd_sasl_auth_enable = yes
smtpd_sasl_exceptions_networks = $mynetworks
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth

smtpd_tls_cert_file = /etc/ssl/mail/public.pem
smtpd_tls_key_file = /etc/ssl/mail/private.key
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtpd_helo_required = yes

Создаем файл с настройками обращения к базе с алиасами:

* где user и password — логин и пароль для подключения к MySQL; hosts — имя сервера баз данных (в нашем случае, локальный сервер); dbname — имя базы данных; query — шаблон запроса к данным.

Создаем файл с инструкцией получения данных по виртуальным доменам:

И файл с почтовыми ящиками:

Открываем файл master.cf и дописываем в самый конец:

submission inet n - n - - smtpd
-o smtpd_tls_security_level=may
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_sasl_path=/var/spool/postfix/private/auth
-o smtpd_sasl_security_options=noanonymous
-o smtpd_sasl_local_domain=$myhostname

smtps inet n - n - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject

dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -d $

Favorite

Добавить в избранное

Главное меню » Операционная система CentOS » Как установить Citadel 9 с SpamAssassin и ClamAV на CentOS 7

Как установить Citadel 9 с SpamAssassin и ClamAV на CentOS 7

Это руководство по установке предполагает, что уже установлен веб-сервер CentOS 7 и настроен на виртуальном сервере. На момент написания этого учебника, последняя стабильная версия Citadel 9,01.

Обновите свою операционную систему, а затем установите ‘Development Tools’ с помощью следующих команд:

‘Development Tools’ это группа yum, которая является предопределенным пакетом программного обеспечения (GCC, C / C ++ компиляторы, make и т.д.) , которые могут быть установлены на вашем виртуальном сервере сразу, вместо того, чтобы устанавливать каждое приложение отдельно. Инструменты разработки в основном используются для обеспечения сборки и компиляции пользовательского программного обеспечения из исходного кода и т.д.

Для того чтобы закончить установку успешно, Citadel требует некоторые дополнительные пакеты, таких как WebCit front end, Berkeley DB, libical, libSieve и т.д., поэтому выполните следующую команду, чтобы установить их:

Запустите процесс установки:

Установка Citadel будет автоматически загружать и устанавливать все необходимые зависимости. После того, как этот процесс будет завершен, следуйте простым шагам:

Включите SpamAssassin для автоматического запуска при загрузке системы и запустите службу SpamAssassin:

Обновите правила SpamAssassin с помощью следующей команды:

ClamAV доступно на Epel хранилище, поэтому установите пакет Epel с помощью следующей команды:

Установите ClamAV, настройте его и обновления описаний вирусов:

Все. Установка Цитадель завершена.

Как установить Citadel 9 с SpamAssassin и ClamAV на CentOS 7

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Содержание

Установка SpamAssassin

Шаг 1: Установка кода SpamAssassin

Мы собираемся установить SpamAssassin с помощью команды apt-get. Перед этим давайте сначала обновим информацию о списке пакетов:

Затем выполните команду ниже, чтобы установить SpamAssassin:

Нажмите Y и нажмите Enter, когда будет предложено подтвердить установку.

Шаг 2: Добавление пользователя системы SpamAssassin

Для работы SpamAssassin требуется системный пользователь. Итак, мы собираемся добавить нового пользователя в систему, используя команду ниже:

Вам будет предложено ввести более подробную информацию о пользователе, просто нажмите клавишу Enter, чтобы пропустить детали. В конце приглашения вас попросят подтвердить, верны ли данные. Введите Y и нажмите Enter, чтобы продолжить

Шаг 3: Редактирование файла конфигурации SpamAssassin

После установки SpamAssassin, правим файл конфигурации, расположенный в /etc/default/spamassassin Мы собираемся отредактировать этот файл, используя нано-редактор, чтобы изменить несколько параметров.

Сначала измените значение директивы ENABLED с 0 на 1:
Было:

Далее вам нужно создать переменную с именем SAHOME со значением ниже:
Добавляем строку

Найдите директиву OPTIONS и измените ее значение, как показано ниже:
Было:

Кроме того, чтобы SpamAssassin мог выбирать обновления, мы собираемся установить значение CRON в 1, чтобы утилита могла автоматически загружать новые правила.
Было:

Нажмите CTRL + X, Y и Enter, чтобы сохранить файл

Шаг 4: Добавление SpamAssassin Правил для Спама

Далее мы добавляем некоторые правила для спама. Файл, который мы собираемся редактировать, находится по адресу /etc/spamassassin/local.cf. Итак, введите команду ниже, чтобы открыть файл с помощью редактора nano:

Раскомментируйте строки, показанные ниже, и измените значения, как указано

И добавьте строку в начало файла

Нажмите CTRL + X, Y и Enter, чтобы сохранить файл

Шаг5: Редактирование Postfix

Далее нам нужно настроить Postfix так, чтобы он мог направлять почту через SpamAssassin. Редактируем основной файл конфигурации Postfix:

Пробел или табуляция перед -o - обязательны

Также вам нужно добавить строку ниже для настройки фильтра содержимого очереди:

Вторая и третья строки имеют обязательный отступ

Нажмите CTRL + X, Y и Enter, чтобы сохранить файл

Шаг6: Перезапустите Postfix и SpamAssassin

Чтобы изменения вступили в силу, вам нужно перезапустить Postfix и SpamAssassin, используя команды

Шаг7: Тестирование SpamAssassin

Вы можете проверить, работает ли SpamAssassin, отправив электронное письмо на ваш сервер и изучив заголовки из почтового клиента.
В исходном коде письма в заголовках будет что то вроде этого

В данной статье мы разберем, как в Postfix можно проверять содержимое письма на наличие определенных ключевых фраз. Если письмо не проходит проверку, то мы его будем дополнительно отправлять на нужный email. Предполагается, что на сервере используется Spamassassin. Он будет проверять вхождения ключевых слов и присваивать им метки. Затем Postfix будем проверять заголовки — если в заголовках будут метки от Spamassassin, то такие письма будем перенаправлять на нужный email адрес.

Настройка Spamassassin

Иструкцию по созданию правил читать тут
Редактируем конфигурационный файл

Добавляем следующие строки:

  • в данном примере мы подгружаем файл 99_filter.cf, в котором будут наши ключевые фразы.

Создаем файл 99_filter.cf с ключевыми фразами:

И записываем туда код для примера

  • в данном примере мы задали настройку для двух фраз — Bad Phrase, Sale и бомба. Если в контенте письма попадутся данные фразы, им будет добавлен заголовок X-Spam-Status, в который попадет метка FILTER_CONTROL. Также мы задаем небольшой бал СПАМа, без него метка добавляться не будет (если необходимо, чтобы письмо попадало в СПАМ, задаем большой бал).

Проверяем правильность наших правил

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

  • как видим, в тексте есть наша метка FILTER_CONTROL.

Настройка Postfix

Открываем конфигурационный файл Postfix:

Правим строку или добавляем ее:

При чем я, данную строку добавил в основные настройки. При этом будет проверяться вся входящая и исходящая почта
Создаем или редактируем файл header_checks:

И добавляем строку:

Для работы действия BCC в header_checks, необходим Postfix версии 3 и выше. Проверить версию установленного MTA можно командой

Проверяем настройку header_checks:

Мы должны увидеть:

Для проверки отправляем письмо с содержанием ключевой фразы — мы должны получить копию письма на другой ящик.

Как лучше проверять работу фильтров

Разбивка правил на несколько

Если фраз много, а это может случится, то для того, что бы понять, в какой фильтр попала фраза, например, при отладке, лучше все правила разбить на несколько.
Пример файла /etc/spamassassion/lint99_filter.cf

И в настройках Postfix прописать тоже эти правила. Файл /etc/postfix/header_checks

Проверка правильности написания правил

Для проверки правильности написания правил, после перезагрузки spamassassion используем

При ошибках в правилах последняя команда выведет строку, где есть ошибка

Нахождение сработавшего правила, без посылки письма

Иногда не понятно, почему какие то письма попадают в правило.
1. Копируем исходный текст письма в файл, например, test.txt
2. И выполняем команду

И видим, в какие фильтры spamassassion, попало данное письмо
Далее постепенно удаляя строку фильтра определенного правила, находим - по какому слову оно сработало.

Мои замечания по написанию фильтров

1. Случилось так, что надо было написать фильтр, в который, попадало слово мина. Я его добавил, как |мина|. И посыпались письма со словом напоминание. Они замечательно попадали под этот фильтр. Пробовал делать фильтр |\bмина\b|. Но он не работает с русским текстом. |\btext\b| - работает, а |\bмина\b| - нет. Пришлось вообще убрать данный фильтр.
2. В фильтрах почему то не работает ключ /g.

Postfix - это популярный агент передачи почты (mail transport agent - MTA), используемый на многих системах Unix/Linux. В наше время сети переполнены спамом, но к счастью, существует способ отфильтровать их с помощью такой программы, как spamassassin.

Эта статья не рассматривает процесс установки postfix. Для этого вы можете обратиться к статье "Как запустить postfix с виртуальными доменами".

На этот момент у вас должен иметься работающий SMTP-сервер под управлением postfix. Потребуется пара пакетов, которые нужно установить: spamassassin и его клиент spamc.
Пакет spamassassin содержит демон, который может быть вызван пользовательской программой, например procmail. но также может быть встроен в агент передачи почты, такой как postfix.

2. Использование spamassassin как самостоятельного демона

В этой части урока, мы запустим spamassassin под его собственным пользователем (по умолчанию в debian sarge - это root), поменяем некоторые настройки и заставим postfix использовать spamassassin в качестве фильтра содержимого на выходе очереди. Это означает, что содержимое проверяется фильтрами spamassassin после того, как postfix решил его доставить.

2.1. Настройка spamassassin

И так, теперь вы установили spamassassin из репозитория debian. С настройками по умолчанию spamassassin отключен, но при включении будет запускаться от имени пользователя root. Чтобы избежать этого, мы заведём особого пользователя и группу для spamassassin. Выполните следующие команды от имени пользователя root:
Теперь нам нужно поменять некоторые настройки в файле /etc/default/spamassassin и удостовериться, что у вас получились следующие значения:
Таким образом мы настроили запуск демона spamd от пользователя spamd, создали его собственный домашний каталог (/var/lib/spamassassin/) и заставили его ввести журнал в файле /var/lib/spamassassin/spamd.log

2.2. Конфигурирование spamassassin

Чтобы позволить использование _SCORE_ в директиве rewrite_header, вы должны установить report_safe в 0.

В последнем разделе мы отключаем сотрудничающие сети, такие как pyzor, razor2 и dcc. Эти сотрудничающие сети ведут актуальный каталог известных контрольных сумм для писем, которые были определены как спам. Они могут быть интересны, но я не использую их здесь, поскольку я считаю, что spamassassin справляется со спамом достаточно хорошо, используя только эти правила.

Теперь запустим spamd следующей командой:
Мы почти закончили, нам осталось настроить postfix таким образом, чтобы он передавал все письма, которые нужно доставить в локальные почтовые ящики, в spamassassin.

3. Заставляем Postfix вызывать Spamassassin

Теперь нам нужно сообщить postfix о необходимости использовать spamassassin. В нашем случае spamassassin будет вызываться только единожды, когда postfix завершит обработку письма.

Чтобы сообщить postfix использовать spamassassin, мы отредактируем файл /etc/postfix/master.cf и заменим строку:
на:
и затем в конец файла master.cf, добавим:
и наконец, наш фильтр спама настроен, нам осталось только перезагрузить настройки postfix и всё должно быть готово.
4. Заключение

Это один из возможных способов настройки, который позволяет фильтровать спам с помощью spamassassin и postfix.

Существуют другие способы сделать то же самое (на которых я остановлюсь в другой раз), например воспользоваться amavis, который использует spamassassin без необходимости использовать демон spamassassin (spamd).

Представленный вариант по прежнему отправляет все письма их получателям (хотя кто-то вроде меня предпочитает их отклонять и выбрасывать письма, помеченные как спам). Можно настроить правило в своём почтовом или веб-клиенте, фильтруя все письма содержащие тему "[***** SPAM" и перемещая их в нужное место в клиенте, так что вы сможете легко отделить их от вашей ценной почты, но в конце концов, если они здесь, то вам незачем удалять их, потому что в спаме иногда попадаются действительно важные письма.

В конце концов, знаменитые почтовые провайдеры, такие как yahoo, google, hotmail . поступают так, пусть и у вас будут каталоги "Спам" и "Письма".

Читайте также: