Обучаем Zimbra учитывать спам при использовании почтовых клиентов

Исследования показали, что при использовании почтовых клиентов с подключением по протоколу IMAP (например, Thunderbird или Outlook) когда пользователь помечает сообщение «как спам», сообщение перемещается в папку спам. Но Zimbra автоматически не использует перемещенные в папку Junk письма для обучения Spamassassin.

 

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

#!/bin/bash/opt/zimbra/bin/zmprov -vl gaa  | awk '{print "/opt/zimbra/bin/zmtrainsa " $1 " spam Junk >> /opt/zimbra/log/spamtrain.log"}' | bash

или для конкретного домена:

#!/bin/bash/opt/zimbra/bin/zmprov -vl gaa  mydomain.org | awk '{print "/opt/zimbra/bin/zmtrainsa " $1 " spam Junk >> /opt/zimbra/log/spamtrain.log"}' | bash

затем:

sudo crontab -e -u zimbra

добавляем запуск скрипта в конце рабочего дня:

0 22 * * 1-5 /мой/путь/скрипт > /dev/null

Возможны варианты: (например,пометить отправленные как «не спам»)

zmprov -vl gaa  | awk '{print "/opt/zimbra/bin/zmtrainsa " $1 " ham Sent >> /opt/zimbra/log/spamtrain.log"}' | bash

Работает в Zimbra 7.10 при использовании LDAP.

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