У меня есть хостинг-серверы с cPanel и Plesk, у которых более 1000 клиентов. Я хочу, чтобы, когда любое электронное письмо было помечено как спам, оно должно автоматически перемещаться в папку JUNK, а не сам перемещать его в определенную папку нежелательной почты. Как и спам в Gmail, весь спам попадает в папку СПАМ. это можно сделать на уровне сервера? поскольку я знаю, что фильтры уровня использования уже доступны, но я хочу реализовать его на уровне сервера
С плагином dovecot pidgeonhole
вы можете настроить sieve
фильтр. Но вы должны убедиться, что exim использовал dovecot-lda
он же deliver
для местной доставки. Посмотрите на ваши транспорты в конфиге eximʻa. Если есть deliver
вызвал - все достаточно просто. Также проверьте, есть ли dovecot-pidgeonhole
установлен. Если нет - установите.
Добавьте следующие разделы в конфигурацию dovecot (если их еще нет):
. . . . .
protocols = imap pop3 sieve
. . . . .
plugin {
. . . . .
sieve_before = /path/dovecot/common.sieve
}
. . . . .
protocol lda {
mail_plugins = sieve
}
. . . . .
Создайте файл /path/dovecot/common.sieve:
####
require "fileinto";
if exists "X-Spam-Detected"
{ fileinto "Junk"; stop; }
else
{ keep; }
####
Заменить X-Spam-Detected
с заголовком, который ваш spamassassin добавляет к сообщениям.
Запуск sievec /path/dovecot/common.sieve
для компиляции скрипта в двоичный файл. Измените его владельца на uid, который использовала ваша голубятня. Перезапустите голубятню. Вот и все. Теперь все сообщения, содержащие заголовок X-Spam-Detected
будет доставлен в /var/vmail/domain/user/.Junk
или ~/user/Maildir/.Junk
- как настроено в dovecot.