[exim-conf] переработана поддержка ratelimit'ов

Nikolay Ivanyushin nvi на itadvisor.ru
Сб Дек 6 05:11:11 EET 2014


Привет всем.
Надо было дефолт описать, что
conf.default:define(`confRATELIMIT', `NO')dnl

PS. Мне стало любопытно, как оно сейчас сделано, пришлось делать
# grep -i confRATELIMIT con*


23.11.2014 23:51, Victor Ustugov пишет:
> приветствую
>
> чуть меньше чем полностью переработана поддержка ratelimit'ов
>
> в переменной confRATELIMIT можно указывать одно или больше следующих
> значений:
>
> NO          - не использовать ratelimit'ы
> HOST        - использовать ratelimit'ы по хостам отправителей
> AUTH        - использовать ratelimit'ы по учетным записям
>              аутентифицировавшихся отправителей
> MAIL        - использовать ratelimit'ы по адресам отправителей
> RCPT        - использовать ratelimit'ы по адресам получателей
> DEBUG       - выводить в файл протокола результаты расчет ratelimit'ов
>              вне зависимости от их превышения
>
> настройки ratelimit'ов по хостам отправителей указываются в файле
> ratelimit-host
>
> настройки ratelimit'ов по учетным записям аутентифицировавшихся
> отправителей указываются в файле ratelimit-auth
>
> настройки ratelimit'ов по адресам отправителей указываются в файле
> ratelimit-mail
>
> настройки ratelimit'ов по адресам получателей указываются в файле
> ratelimit-rcpt
>
> во всех файлах настроек ratelimit'ов данные указываются однотипно в виде:
>
> аргумент : лимит : действие : сообщение
>
> где:
> аргумент    - это адрес хоста отправителя в случае ratelimit-host,
>              SMTP логин в случае ratelimit-auth, адреса отправителя
>              и получателя в случае ratelimit-mail и ratelimit-rcpt.
> лимит       - ограничение в виде "количество / время"
> действие    - действие, применяемое к письму (может отсутствовать)
> сообщение   - сообщение SMTP клиенту
>
> адреса хостов можно задавать в виде IP адресов, номеров сетей, имен
> хостов, в том числе указанных по маске или в виде регулярно
> го выражения.
>
> SMTP логины и адреса отправителей и получателей можно указывать в виде
> полных адресов, масок или регулярных выражений.
>
> лимит указывается в виде "количество сообщений / период времени".
>
> возможные действия:
> ok                  - исключение из проверки
> warn                - вывод предупреждения в файл протокола и
>                      добавление в письмо поля заголовка
> reject              - отказ в приеме сообщения
> deny                - синоним для reject
> defer               - возврат временной ошибки
> greylist=X          - добавление X баллов к счетчику опционального
>                      грейлистинга
> reject=X            - добавление X баллов к счетчику опционального
>                      reject'а
> delay=zz            - задержка на zz секунд перед продолжением
>                      обработки сообщения
> pause=zz            - синоним delay=zz
>
> по умолчанию применяется действие defer.
>
> при описании действий можно использовать вычисляемые выражения.
> пример:
> * : 20 / 10m : defer delay=${eval:${sg{$sender_rate}{\N[\.].*$\N}{}} -
> $sender_rate_limit} : Try again later
>
> в качестве сообщения SMTP клиенту указывается не столько само сообщение,
> сколько его уточнение
>
> в уточнении сообщения SMTP клиенту можно использовать вычисляемые
> выражения, например в нем можно использовать переменные $sender_rate,
> $sender_rate_limit и $sender_rate_period
>
> по умолчанию SMTP клиенту возвращаются следующие сообщения:
> Sender host rate exceeds limit
> Sender rate exceeds limit
> Recipient rate exceeds limit
>
> далее следует уточнение сообщения. если оно отсутсвует, то используется
> фраза "Try again later"
>
>


-- 
Nikolay V. Ivanyushin <nvi на itadvisor.ru>
IT Advisor Ltd.
http://www.itadvisor.ru
+7 910 743-28-38


-- 
Nikolay V. Ivanyushin <nvi на itadvisor.ru>
IT Advisor Ltd.
http://www.itadvisor.ru
+7 910 743-28-38





Подробная информация о списке рассылки exim-conf