Передайте fetchmail сообщения к двум другим MDA

Я работаю fetchmail на сервере AntiSpam, чтобы заставить сообщения на папке спама пользователя подавать SpamAssassin байесовская фильтрация. Это работало приятно с -m опция в fetchmail передать сообщения к SpamAssassin sa-learn инструмент.

Но я хотел бы начать тестировать Bogofilter и наполнять базу данных Bogofilter соответственно. Но сделать это fetchmail должен передать сообщения к SpamAssassin и Bogofilter и использованию -m не были никакие, идут.

Существует путь к achive это с fetchmail? Я рассмотрел некоторый дополнительный MDA как procmail или maildrop, но я не уверен, действительно ли необходимо или если это сделает работу.

Править: Мое фактическое fetchmail управляйте для выборки сообщений от почтового сервера:

echo "poll $mailserver proto IMAP user $domain\\$user\\$mailbox pass $passwd ssl" \
| fetchmail -a -n -p IMAP --folder "$junkfolder" -f - -m '/usr/local/bin/sa-learn \
-C /usr/mailcleaner/etc/mailscanner/spam.assassin.prefs.conf --spam'

Править: Я понял! Ответ на мой собственный вопрос...

1
задан 2 July 2014 в 04:06
1 ответ

Это достаточно просто сделать, если вы используете Procmail в качестве LDA. Вот рецепт Procmail, чтобы передать сообщение двум разным скриптам, а затем доставить его в SPAM. (Доставить на /dev/null вместо этого, если вы не хотите хранить его; или эквивалентно, удалите флаг c из последнего рецепта)

# I doubt this is necessary, but since you were using an explicit path name...
PATH=/usr/local/bin:$PATH

:0c
| sa-learn -C /usr/mailcleaner/etc/mailscanner/spam.assassin.prefs.conf --spam

:0c
| bogofilter

:0
SPAM/

Не сложно написать сценарий оболочки, который выполняет те же самые действия, но Procmail делает кучу вещей, чтобы убедиться, что электронная почта не будет потеряна или доставлена небезопасно, так что это хорошо, как обертка.

.
1
ответ дан 4 December 2019 в 00:23

Теги

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