В документе описано, как управлять частотой отправки писем через SMTP-сервер Почты VK WorkSpace с помощью переменных окружения EXIM_SMTP_RATELIMIT_MAIL и EXIM_SMTP_RATELIMIT_RCPT.
Документ предназначен системным администраторам организации.
Ограничение работает по принципу нарастающей задержки: сервер не отклоняет команды SMTP, а начинает отвечать на них с паузой. Чем больше команд отправлено в рамках одного соединения, тем дольше пауза.
За это отвечают две переменные:
- EXIM_SMTP_RATELIMIT_MAIL — задержки для команды
MAIL(каждая команда — это отдельное письмо). Ограничивает, как часто отправитель может передавать письма. - EXIM_SMTP_RATELIMIT_RCPT — задержки для команды
RCPT(каждая команда — это один получатель письма). Ограничивает, как быстро можно добавлять получателей.
Значение переменной состоит из четырёх параметров, перечисленных через запятую:
<порог>, <начальная задержка>, <множитель>, <максимальная задержка>
Параметр | Описание |
|---|---|
Порог | Количество команд, которые обрабатываются без задержки. Задержки начинаются со следующей команды |
Начальная задержка | Пауза перед ответом на первую команду сверх порога. Указывается в секундах ( |
Множитель | Коэффициент, на который увеличивается задержка с каждой следующей командой |
Максимальная задержка | Верхняя граница: задержка растёт до этого значения и дальше не увеличивается |
Переменная | Порог | Начальная задержка | Множитель | Максимальная задержка |
|---|---|---|---|---|
EXIM_SMTP_RATELIMIT_MAIL | 5 | 0.5s | 1.1 | 20s |
EXIM_SMTP_RATELIMIT_RCPT | 20 | 0.25s | 1.015 | 20s |
Для значения по умолчанию 5, 0.5s, 1.1, 20s в одном SMTP-соединении:
- письма с 1-го по 5-е принимаются без задержки;
- 6-е письмо — задержка 0,5 с;
- 7-е письмо — 0,55 с (0,5 × 1,1);
- 8-е письмо — 0,605 с;
- 9-е письмо — 0,67 с;
- далее задержка продолжает расти и примерно с 45-го письма достигает максимума — 20 с, после чего не увеличивается.
Аналогично работает EXIM_SMTP_RATELIMIT_RCPT со значением 20, 0.25s, 1.015, 20s: первые 20 получателей добавляются без задержки, затем пауза растёт от 0,25 с с шагом 1,5 % и достигает 20 с примерно на 316-м получателе.
- В веб-интерфейсе установщика перейдите в раздел Настройки → Переменные окружения.
- В списке контейнеров выберите mx.
- Измените значение переменной EXIM_SMTP_RATELIMIT_MAIL или EXIM_SMTP_RATELIMIT_RCPT, соблюдая синтаксис
<порог>, <начальная задержка>, <множитель>, <максимальная задержка>. - Сохраните изменения и запустите автоматическую установку, чтобы применить их.
- Чтобы ослабить ограничение (например, для сервиса рассылок), увеличьте порог или уменьшите множитель и максимальную задержку.
- Чтобы усилить ограничение, уменьшите порог или увеличьте начальную задержку и множитель.
- Изменяйте параметры постепенно и следите за поведением отправителей: слишком строгие ограничения могут приводить к таймаутам на стороне почтовых клиентов и внешних серверов.