У Zimbra очень хорошая антиспамная защита….
У меня спам ловится по всем критериям, которые можно установить в админке. Одно из них это обязательное условие возвращения hostname отправителем. Не так давно стали возникать проблемы с доставкой сообщений от одного контрагента. Оказалось их сервер почему то не отдавал свой host адрес. Пришлось делать белый список в антиспамовой системе и делать для него исключения:
Собственно систему белых и чёрных списков можно реализовать на уровне amavis, эти правила будут действовать в случае если письмо прошло все проверки сервера-отправителя, но не прошло проверку по содержанию… а следовательно по балам.
(Под пользователем zimbra!). В этом случае необходимо открыть файл /opt/zimbra/conf/amavisd.conf.in И вписать туда:
{ # a hash-type lookup table (associative array)
‘DOMEN.com’ => -10.0,
‘nobody@cert.org’ => -3.0,
‘cert-advisory@us-cert.gov’ => -3.0,
……
Как видим мы добавили строчку ’DOMEN.com’ => -10.0, оценка -10.0 означает что этот домен в белом списке. Если же вы хотите заблокировать какой либо домен, то поставьте домену положительную оценку.
Далее перезапускаем amavis:
zmamavisdctl stop && zmamavisdctl start
Но, этот вариант может и не сработать, если сервер отправителя не пройдёт контроль. А именно, сервер не отдаст host имя или оно не пройдёт проверку какого нибудь интернет антиспамной базы данных (RBL).
(Под пользователем zimbra!). В этом случае нужно прописать исключения непосредственно на уровне почтового сервера postfix (Читайте далее).
Создадим файл где будем вести базу данных белого\чёрного списка:
vim /opt/zimbra/conf/postfix_rbl_override
Он будет вида
avis-media.com OK
85.21.218.45 OK
Затем выполняем:
postmap /opt/zimbra/conf/postfix_rbl_override
И регистрируем базу в postfix добавляя одну строку ОБЯЗАТЕЛЬНО после строчки reject_unauth_destination:
vim /opt/zimbra/conf/postfix_recipient_restrictions.cf
reject_unauth_destination
check_client_access hash:/opt/zimbra/conf/postfix_rbl_override
reject_unlisted_recipient
Ну и перезапускаем MTA агент:
zmmtactl restart