у меня проблема с моим Spamassassin, он отбрасывает электронную почту вместо того, чтобы доставлять ее в фактическую папку со спамом, мне нужно изменить эту опцию на случай, если письмо не было спамом, но я получил отметку, что это было, поэтому я могу проверить свой спам папка время от времени.
/ etc / postfix / master. cf
smtp inet n - n - - smtpd -o content_filter=spamassassin
spamassassin unix - n n - - pipe user=spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}
Моя конфигурация установлена на
/etc/postfix/header_checks
/^X-Spam-Flag:.YES/ DISCARD This is spam
. Есть ли способ настроить ее так, чтобы она помечала сообщение как спам и доставляла его в папку спама / нежелательной почты?
Журнал
Apr 28 09:55:26 testmail postfix/pickup[2171]: BF55C2C2451: uid=1001 from=<email@email>
Apr 28 09:55:26 testmail postfix/pipe[2275]: 006602C244C: to=<s00152625@mail.itsligo.ie>, relay=spamassassin, delay=0.99, delays=0.34/0.03/0/0.62, dsn=2.0.0, status=sent (delivered via spamassassin service)
Apr 28 09:55:26 testmail postfix/qmgr[2172]: 006602C244C: removed
Apr 28 09:55:26 testmail postfix/cleanup[2274]: BF55C2C2451: message-id=<0d84bd23-8e3a-588d-d6f1-501f61f5d1a9@gmail.com>
Apr 28 09:55:26 testmail postfix/cleanup[2274]: BF55C2C2451: discard: header X-Spam-Flag: YES from local; from=<email@email> to=<email@email>: This is spam
Чтобы понять возможности, полезно иметь некоторое представление о Postfix Архитектура .
Эта первая картинка визуализирует вашу текущую ситуацию . Postfix обрабатывает каждое сообщение два раза: до и после SpamAssassin. Поэтому заголовки X-Spam
устанавливаются только во втором раунде, а сообщение, помеченное как спам, автоматически DISCARD
удаляется при второй очистке .
Более полезно будет ОТКЛОНЯТЬ
определенный спам (жесткие сбои SPF, несуществующие домены отправителя, некоторые IP-адреса из черного списка и т. д.), пока он сначала будет получен smtpd . Это дает возможность фактически отклонить сообщение с соответствующим кодом ошибки SMTP вместо постановки его в очередь, поскольку постановка в очередь дает ложный намек на то, что сообщение было принято. Это можно настроить с помощью ограничений helo , отправителя и получателя . Это второе изображение дополнительно представляет путь для сообщения, обычно доставляемого в папку «Входящие».
Вы хотели только пометить сообщение как спам и затем доставить его в почтовый ящик Спам
. На самом деле ваш SpamAssassin уже делает это, поэтому вам просто нужно позволить агенту доставки почты MDA обрабатывать ситуацию вместо агента передачи почты MTA. На последней диаграмме Procmail доставляет сообщение в правильный почтовый ящик на основе X-Spam-Flag
.
Для этой функции:
/ ^ X-Spam -Flag: .YES / DISCARD
из / etc / postfix / header_checks
. mailbox_command = procmail -a "$ EXTENSION"
в main.cf
. Пример конфигурации для / etc / procmailrc
(или для каждого пользователя ~ / .procmailrc
):
MAILDIR = $ HOME / mail /
ПО УМОЛЧАНИЮ = $ HOME / mail / Inbox
: 0:
* ^ X-Spam-Flag: Да
Спам
Есть также несколько альтернатив, например Procmail может передавать по конвейеру SpamAssassin вместо Postfix, позволяя индивидуальные настройки (оценки). Вы можете заметить, что Maildrop также является MDA.