Postfix со Spamassassin отбрасывает спам вместо того, чтобы доставлять его в папку спама

у меня проблема с моим 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  
2
задан 28 April 2017 в 13:30
1 ответ

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

Эта первая картинка визуализирует вашу текущую ситуацию . Postfix обрабатывает каждое сообщение два раза: до и после SpamAssassin. Поэтому заголовки X-Spam устанавливаются только во втором раунде, а сообщение, помеченное как спам, автоматически DISCARD удаляется при второй очистке .

Current configuration with header_checks

Более полезно будет ОТКЛОНЯТЬ определенный спам (жесткие сбои SPF, несуществующие домены отправителя, некоторые IP-адреса из черного списка и т. д.), пока он сначала будет получен smtpd . Это дает возможность фактически отклонить сообщение с соответствующим кодом ошибки SMTP вместо постановки его в очередь, поскольку постановка в очередь дает ложный намек на то, что сообщение было принято. Это можно настроить с помощью ограничений helo , отправителя и получателя . Это второе изображение дополнительно представляет путь для сообщения, обычно доставляемого в папку «Входящие».

Rejecting messages before queuing

Вы хотели только пометить сообщение как спам и затем доставить его в почтовый ящик Спам . На самом деле ваш SpamAssassin уже делает это, поэтому вам просто нужно позволить агенту доставки почты MDA обрабатывать ситуацию вместо агента передачи почты MTA. На последней диаграмме Procmail доставляет сообщение в правильный почтовый ящик на основе X-Spam-Flag .

enter image description here

Для этой функции:

  • Удалить / ^ 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.

1
ответ дан 3 December 2019 в 12:36

Теги

Похожие вопросы