приветствую
реализовано ограничение на количество несуществующих адресов получателей
в письмах от аутентифицированных отправителей.
для его включения нужно добавить значение AUTH_RCPT_UNKNOWN в параметр
confRATELIMIT и пересобрать конфиг.
значение AUTH_RCPT_UNKNOWN в confRATELIMIT может использоваться только в
случае использования RCPT в значении confVERIFY_RECIPIENT, т. е. в
случае, когда адрес получателя исходящих писем проверяется с помощью
callout'а, а не просто проверяется резолвинг MX/A записей домена.
настройки ratelimit'ов на количество несуществующих адресов получателей
в письмах от аутентифицированных отправителей в файле
ratelimit-auth-rcpt-unknown указываются в таком же виде, как и настройки
остальных ratelimit'ов:
аргумент : лимит : действие : сообщение
где:
аргумент - SMTP логин
лимит - ограничение в виде "количество / период"
действие - действие, применяемое к письму (может отсутствовать)
сообщение - сообщение SMTP клиенту
SMTP логины можно указывать в виде полных значений, масок или регулярных
выражений.
"лимит" указывается в виде "количество_сообщений / период_времени".
"период_времени" указывается в виде 5s, 10m30s, 1h10m и т. д.
возможные действия:
ok - исключение из проверки
skip - синоним для ok
warn - вывод предупреждения в файл протокола и добавление в
письмо поля заголовка
reject - отказ в приеме сообщения
deny - синоним для reject
defer - возврат временной ошибки
greylist=X - добавление X баллов к счетчику опционального
грейлистинга
reject=X - добавление X баллов к счетчику опционального reject'а
delay=zz - задержка на zz секунд перед продолжением обработки
сообщения
pause=zz - синоним delay=zz
при отсутствии явно указанного действия по умолчанию применяется
действие defer.
пример:
user на domain.tld : 100 / 1h : defer : Try again later
* : 5 / 10m : defer :
при описании действий можно использовать вычисляемые выражения.
пример:
* : 20 / 10m : defer delay=${eval:${sg{$sender_rate}{\N[\.].*$\N}{}} -
$sender_rate_limit} : Try again later
в качестве сообщения SMTP клиенту указывается не столько само сообщение,
сколько его уточнение, т. е. вторая часть сообщения.
сначала будет выведено сообщение "Too many authentication attempts".
в уточнении сообщения SMTP клиенту можно использовать вычисляемые
выражения, например в нем можно использовать переменные $sender_rate,
$sender_rate_limit и $sender_rate_period также, как и в действии.
--
Best wishes
Victor Ustugov mailto:victor на corvax.kiev.ua
public GnuPG/PGP key: https://victor.corvax.kiev.ua/corvax.asc
Skype ID: corvax_nb JID: victor на corvax.kiev.ua