Image

База знаний → Мониторинг почтового сервера Postfix с PDF отчетом

[Виртуальные сервера]
Дата публикации: 22.05.2023

После того как Вы запустили свой корпоративный сервер почты, возникает вопрос о том как посмотреть показатели его работы: кол-во полученной и отправленной сотрудниками почты, рейтинг сотрудников по почтовой активности, показатели трафика, а также эффективности работы правил защиты от спама включая причины блокировки. Все эти данные доступны в сыром виде в лог файле службы postfix. 

Для анализа файла логов мы установим утилиту:

apt install pflogsumm
cp /usr/sbin/pflogsumm /usr/local/bin

Проверим работу скрипта указав путь к лог файлу postfix:

cat /var/log/mail.log | pflogsumm | more

Вывод будет содержать большое кол-во сгрупированных по типу данных:

Grand Totals
------------
messages
 51   received
 50   delivered
  0   forwarded
  0   deferred
  0   bounced
472   rejected (90%)
  0   reject warnings
  0   held
  0   discarded (0%)

151710 bytes received 151710 bytes delivered 4 senders 4 sending hosts/domains 11 recipients 7 recipient hosts/domains

Per-Day Traffic Summary

date          received  delivered   deferred    bounced     rejected
--------------------------------------------------------------------
May 14 2023         0          0          0          0          1 
May 19 2023        45         44          0          0         31 
May 20 2023         6          6          0          0        140 

--More--

При необходимости вы можете создать скрипт, который будет высылать отчет по почте, а так-же в виде PDF вложения, для дальнейшей пересылки. Для формирования pdf отчета и отправки письма установим необходимые пакеты:

apt install mailutils a2ps

Создадим скрипт следующего содержания:

nano /usr/local/bin/report_pdf.sh

#!/usr/bin/env bash

rm /var/log/report.txt rm /var/log/report.ps rm /var/log/report.pdf cat /var/log/mail.log | pflogsumm | more >> /var/log/report.txt sleep 10 a2ps -b --header=mail.domain.tld --rows 1 --columns 1 /var/log/report.txt -o /var/log/report.ps ps2pdf -s1 /var/log/report.ps /var/log/report.pdf mail -s 'Mail Server Report' -a From:Mail-Server to@domain.tld -A /var/log/report.pdf < /var/log/report.txt

Назначим права на выполнение:

chmod +x /usr/local/bin/report_pdf.sh

Добавим задачу в cron, чтобы отчет приходил раз в неделю, так как лог обновляется еженедельно, например в пятницу в 15 часов:

crontab -e

0 15 * * 5 /usr/local/bin/report_pdf.sh





Нет комментариев