Я настроил Policyd v2 (cluebringer) для применения квоты на счетчик сообщений для пользователей SASL и не-SASL. Это легко сделать в policyd [1]. Однако я не знаю, как настроить postfix (2.7.1). Прямо сейчас у меня есть это (неважные правила удалены):
smtpd_recipient_restrictions =
check_policy_service inet:127.0.0.1:10031,
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
reject_rbl_client zen.spamhaus.org,
check_policy_service
должно быть до permit_sasl_authentificated
чтобы иметь возможность проверять пользователей SASL (потому что permit_sasl_authentificated
возвращает ОК, и после него никакие другие разрешения не проверяются).
Но наличие его здесь означает, что он будет засчитывать каждую входящую электронную почту в квоте - независимо от того, будет ли она принята постфиксом или нет (потому что серый список / черный список и reject_unauth_destination
после check_policy_service
). Таким образом, весь отклоненный спам будет рассчитываться по квоте пользователей-получателей.
Как можно активировать политику как для входящей электронной почты SASL, так и для электронной почты не SASL, которая принимается для сервера?
1]: http://lists.policyd.org/pipermail/users_lists.policyd.org/2012-October/004002.html
В случае Postfix версии 2.10 или новее, вы можете попробовать решить эту проблему, используя smtpd_relay_restriction
характерная черта. Фрагмент из документация по postfix объясняет, как их правильно использовать.
Политика ретрансляции указывается в smtpd_relay_restrictions, а политика блокировки спама - в smtpd_recipient_restrictions.
Тогда ваша конфигурация должна понравиться
smtpd_relay_restriction =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination
smtpd_recipient_restrictions =
reject_rbl_client zen.spamhaus.org,
check_policy_service inet:127.0.0.1:10031