Настройте policyd на Zimbra 8.8.x, чтобы ограничить количество сообщений, которые каждая учетная запись может отправлять с помощью smtp-auth.

Я использую Zimbra 8.8.9 и пытаюсь ограничить количество сообщений, которые один пользователь может отправить через smtp после аутентификации с помощью smtp-auth. Цель состоит в том, чтобы ограничить ущерб в случае, если один из паролей моих пользователей будет угадан / получен спамером.

Zimbra поставляется с CBPolicyD (www.policyd.org) как часть пакета zimbra-mta, но по умолчанию он отключен.

Я следовал инструкциям на https://wiki.zimbra.com/wiki/How-to_for_cbpolicyd и включил полисид с помощью:

zmprov ms zimbra.mydomain.tld +zimbraServiceInstalled cbpolicyd
zmprov ms zimbra.mydomain.tld +zimbraServiceEnabled cbpolicyd

Я также активировал веб-интерфейс:

 sudo -s
 cd /opt/zimbra/data/httpd/htdocs
 ln -s ../../../common/share/webui

и настройте Apache Zimbra для обслуживания этого нового каталога:

  • редактировать /opt/zimbra/conf/httpd.conf
  • добавлять Alias /webui /opt/zimbra/common/share/webui/ в конец файла
  • перезапустите Zimbra

Я отредактировал файл конфигурации в /opt/zimbra/common/share/webui/includes/config.php указать на правильный sqlite db:

 $DB_DSN="sqlite:/opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb";

и, наконец, добавил cronjob для периодической очистки базы данных отслеживания в конце crontab zimbra:

 # ZIMBRAEND -- DO NOT EDIT ANYTHING BETWEEN THIS LINE AND ZIMBRASTART
 0 * * * * cat /opt/zimbra/log/clean_cbpolicyd_daily.sql  | sqlite3 /opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb

Я не смог найти пошаговый пример настройки ограничения скорости с помощью policyd webui, и интерфейс далек от интуитивного использования.

Как мне отправлять электронные письма с подсчетом поликлидов каждой учетной записью и ограничивать их скорость?

1 ответ

Прежде всего, обратите внимание, что policyd webui не защищен паролем, если вы не примете дополнительные меры, т.е. .htaccess к этому каталогу и добавить AllowOverride AuthConfig в httpd.conf:

 <Directory /opt/zimbra/common/share/webui>
 AllowOverride AuthConfig
 </Directory>

Также обратите внимание, что по умолчанию policyd доступен только в веб-интерфейсе Zimbra открытым текстом, т.е. http://zimbra.domain.tld:7780/webui/index.php

Примите соответствующие меры для защиты веб-интерфейса.

Перейдите по http://zimbra.domain.tld:7780/webui/policy-main.php и выберите "Добавить". Введите следующее:

  • Имя: smtp-auth-limit
  • Приоритет: 1
  • Описание: все

Вернитесь к http://zimbra.domain.tld:7780/webui/policy-main.php и выберите новую политику 'smtp-auth-limit', затем выберите Действие "Изменить". Установите "Отключено" на "Нет" и отправьте.

Теперь вернитесь снова на http://zimbra.domain.tld:7780/webui/policy-main.php снова выберите "smtp-auth-limit" и выберите действие "Участники".

Введите следующее:

  • Источник: $*
  • Направление: любое
  • Комментарий: что угодно

Теперь будьте осторожны, нажмите "Вернуться к участникам", а не "Вернуться к политике", иначе вы потеряетесь.

Если вы были осторожны, выделите строку с источником "$*" и выберите действие "Изменить".

Если вы не проявили осторожности, вернитесь по http://zimbra.domain.tld:7780/webui/policy-main.php, выберите "smtp-auth-limit" policy, действие "Members", выберите строку с источником "$ * "и выберите Действие" Изменить ".

Установите "Отключено" на "Нет" и отправьте.

Наконец, перейдите по http://zimbra.domain.ltd:7780/webui/quotas-main.php и выберите действие "Добавить". Введите следующее:

  • Название: ограничение скорости SMTP аутентификации
  • Трек: SASLUsername: имя пользователя
  • Период: 86400
  • Ссылка на политику: выберите "smtp-auth-limit" из выпадающего меню
  • Вердикт: отсрочка (задержка)
  • Данные: вы говорите слишком быстро (это сообщение будет показано отправителю)
  • Прекратить обработку здесь: да

Вернитесь на http://zimbra.domain.ltd:7780/webui/quotas-main.php и выберите политику "smtp-auth-limit", выберите "Действие" "Изменить". Установите Disabled на "Нет" и отправьте.

Вернитесь еще раз к http://zimbra.domain.ltd:7780/webui/quotas-main.php и выберите политику "smtp-auth-limit", выберите "Действие".

Выберите действие "Добавить" и введите следующее, предполагая, что вы хотите, чтобы каждая учетная запись отправляла не более 200 сообщений каждые 86400 секунд:

  • Тип: Количество сообщений
  • Счетчик Лимит: 200
  • Комментарий: что угодно

Теперь будьте осторожны, вы знаете упражнение, нажмите "Вернуться к лимитам квот", или вы заблудитесь. Выберите строку с Counter Limit = 200, затем выберите действие "Изменить". Установите Disabled на "Нет" и отправьте.

Другие вопросы по тегам