Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Скрипт должен по крону выполнять задание:

1) проверять лог postfix (maillog)

2) считать пользователей, который прошли авторизацию sasl и количество авторизаций за текущий день, а также за последние 10 минут.

Например:

vasya@domain.com - 5

petya@domain.com - 2

lara@domain.ltd - 10

3) считать количество реципиентов, которым отправили письма внутренние пользователи (из внутренних доменов) за последние 10 минут

(20,30 - опционально). Например:

vasya@domain.com - 100

petya@domain.com - 50

4) Сверять реципиентов, посчитанных из пункта 3 со списком доменов из другого файла или массива в этом же скрипте. Например

vasya@domain.com - 20 (mail.ru), 30 (gmail.com), 50 (not listed)

5) В случае достижения предела определенных параметров, установленных переменными, выполнять внешнюю команду. Например

vasya@domain.com - sasl (текущий день > 20 или last 10 min > 10) или (recepients per last

10 min > 130 и recepients in [gmail.com, yahoo.com]) или (recepients

per last 20 min > 160)

- Блокировать пользователя postfix

- отправить письмо на служебную почту со следующими данными;

1) учетная запись

2) количество sasl авторизаций за день / последние 10 минут

3) количество реципиентов за последние 10 минут

4) домены, в которые отправил пользователь письма за последние 10 минут

Возможно у вас есть уже готовое решение. Можно рассмотреть и его.

7 лет назад
man1207
38 лет
12 лет в сервисе
Был
3 года назад

Заявки фрилансеров

Нет заявок фрилансеров