greylistd это небольшой демон, написанный на python, созданый разработчиками Debian специально для реализации грейлистинга - технологии, позволяющей отсекать более 80% спама, практически не нагружая при этом сервер.
В числе дополнительных возможностей greylistd выделяется возможность его мониторинга с помощью mrtg, позволяющая получить наглядное представление о потоках полезных писем и спама. В этой статье будет описано как установить и запустить greylistd и настроить его мониторинг с помощью mrtg.
Мы будем предполагать что у нас уже есть работающий почтовый сервер на Exim под управлением Debian/Ubuntu.
Для начала установим greylistd:
apt-get install greylistd
Далее добавим в конфигурацию exim настройки для работы с greylistd. Сделать это нам поможет утилита greylistd-setup-exim4 из комплекта greylistd:
greylistd-setup-exim4 add
Обновим конфигурацию exim:
update-exim4.conf
И перезапустим exim:
invoke-rc.d exim4 restart
На этом вобщем-то всё. Грейлистинг уже работает, в чём можно убедиться просмотрев логи exim. Переходим к настройке мониторинга с помощью mrtg. Для начала установим mrtg:
apt-get install mrtg
Создадим директорию, куда будут складываться графики:
mkdir /var/www/mrtg
Теперь нам нужно привести файл /etc/mrtg.cfg примерно к такому виду:
WorkDir: /var/www/mrtg
WriteExpires: Yes
Refresh:300
Interval: 5
Language:russian
Target[greylistd]: `/usr/bin/greylist mrtg`
MaxBytes[greylistd]: 1
XSize[greylistd]: 600
YSize[greylistd]: 160
Title[greylistd]: greylistd statistics
PageTop[greylistd]: <h1>greylistd statistics</h1>
AbsMax[greylistd]: 1250000
Options[greylistd]: integer,nopercent,perhour
YLegend[greylistd]: Emails per Hour
ShortLegend[greylistd]: emails/h
Legend1[greylistd]: Grey Emails per hour
Legend2[greylistd]: White Email per hour
Далее создадим индексный файл для директории с графиками mrtg:
indexmaker --title="greylistd statistics" --columns=1 --output=/var/www/mrtg/index.html /etc/mrtg.cfg
Скорее всего почтовый сервер имеет веб-интерфейс, и потому для просмотра графиков достаточно настроить на имеющемся веб-сервере ещё один виртуальный хост с DocumentRoot в /var/www/mrtg. Если веб-интерфейса нет, то можно просто установить какой-нибудь лёгкий веб-сервер. Например thttpd. Для этого сначала нужно установить пакет thttpd:
apt-get install thttpd
Далее нужно привести файл /etc/thttpd/thttpd.conf к примерно такому виду:
port=80
dir=/var/www/mrtg
chroot
user=www-data
cgipat=/cgi-bin/*
throttles=/etc/thttpd/throttle.conf
logfile=/var/log/thttpd.log
charset=utf-8
И наконец перезапустить веб-сервер для вступления в силу новой конфигурации:
invoke-rc.d thttpd restart
На этом вобщем-то всё. Стоит только отметить что при даже при наличии уже работающего веб-сервера всё равно можно дополнительно установить thttpd и "посадить" его на нестандартный порт. Кроме того в любом случае доступ к статистике нужно ограничить только IP-адресами администраторов сервера. В случае использования thttpd это придётся делать средствами файрволла.
Приятной работы! |