Yvision.kz
kk
Разное
399 774 постов42 подписчика
Всяко-разно
0
07:31, 20 декабря 2013

Установка isoqlog и eximstat на CentOS 6.4 x64

Почтовый сервер при работе генерирует много отладочной информации. В ней пишется обо всем, например куда ушло письмо, какой адрес получателя и т. д. Это и есть наши логи.

Так как сложно, что-то искать в километровых логах, придумали программы - анализаторы логов. Данные анализаторы наглядно показывают всю подноготную почтового сервера. Если ваш сервер начал рассылать спам или попал в черный список, вы непременно это узнаете если прочтете отчет анализатора логов.

В данной короткой записке написано как установить Isoqlog на Linux (CentOS 6.4 x64). Мы установим утилиту и кратко проанализируем лог файл почтового сервера на базе популярного MTA Exim.

А так же мы установим еще один анализатор под названием Eximstat. В отличии от Isoqlog, он выводит более детальную информацию, где можно  найти все что вам нужно. Он похож на анализатор от MTA Postfix с именем Pflogsumm. Его отчеты проливают свет на узкие места вашего почтового сервера на основе Exim.

# wget http://ftp5.gwdg.de/pub/opensuse/repositories/home:/weberho:/qmailtoaster/CentOS_CentOS-6/x86_64/isoqlog-2.2.1-1.3.x86_64.rpm

# rpm -ivh isoqlog-2.2.1-1.3.x86_64.rpm --nodeps

Создаем каталог для веб страничек:

# mkdir /var/www/html/isoqlog

Указываем наши домены:

# vi /usr/local/etc/isoqlog.domains

company.kz

Настраиваем главный конфигурационный файл, указываем где хранятся  логи Exim:

# vi /etc/isoqlog.conf

logtype = "exim"

logstore = "/var/log/exim/main.log" # лог Exim

domainsfile = "/var/lib/qmailtools/isoqlog/isoqlog.domains" # Перечисляем наши домены

outputdir = "/var/lib/qmailtools/isoqlog/htdocs"

htmldir = "/usr/share/isoqlog/htmltemp" #html dir

langfile = "/usr/share/isoqlog/lang/english" # lang file

hostname = "mail.company.kz" #Имя хоста

maxsender   = 100

maxreceiver = 100

maxtotal    = 100

maxbyte     = 100

# ln -s /var/lib/qmailtools/isoqlog/htdocs /var/www/html/isoqlog

Меняем каталог на - /var/www/html/isoqlog/htdocs

# vi /etc/httpd/conf.d/isoqlog.conf

# configuration to serve qmailmrtg

Alias /isoqlog /var/www/html/isoqlog/htdocs

<Directory /var/lib/qmailtools/isoqlog/htdocs>

AllowOverride All

Order allow,deny

Allow from all

AuthType Basic

AuthName Qmail_Toaster

AuthUserFile /etc/qmailtoaster-admin.htpasswd

require valid-user

</Directory>

Запускаем анализатор:

# /usr/bin/isoqlog -f /etc/isoqlog.conf

Теперь можно зайти через браузер:

http://ip вашего сервера/isoqlog

Скрины:

 

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

Только вот полную картину он не дает, если спамер отправляет с вашего сервера письма с поддельными заголовками, Isoqlog их не сможет показать. Поэтому советую вам использовать EximStat, вот этот инструмент поможет более детально проанализировать лог файл.

Установка альтернативного анализатора логов eximstat:

# wget http://ftp5.gwdg.de/pub/opensuse/repositories/server:/mail/CentOS_6/i686/eximstats-html-4.80.1-40.1.i686.rpm

# yum install eximstats-html-4.80.1-40.1.i686.rpm

Чтобы сегенерировать статистику, введите команду:
# /usr/sbin/eximstats -nr /var/log/exim/main.log >> /home/eximstat.log
После чего статистика будет помещена в файл - /home/eximstat.log

У EximStat есть полезные опции, посмотрите его help - /usr/sbin/eximstat --help

Откроем файл с отчетом и смотрим:

# mcedit /home/eximstat.log

Вот скрины:

На первом скрине мы видим две даты, период который был проанализирован и за который собственно выведен отчет. У нас это 6 дней, с 10 по 16 число.

Здесь мы видим сколько писем получено, сколько отправлено, сколько отклонено и сколько писем временно не принято.

Какие транспорты были задействованы, и сколько каждый транспорт отработал писем.

 

Здесь видно что наш почтовый сервер начал рассылать спам!

От localhost ушло 77296 писем с общим размером 425 Mb и это всего за 6 дней!

В отчете топ самых 50 хостов по количеству отправленных писем стоит "local", это значить что спамер взял в обороты ваш сервер.

Надо срочно предпринимать меры.

Здесь мы уже видим отчет в котором указываются топ самых 50 компьютеров которые отправили письма по количеству трафика, данный отчет подтверждает что ваш почтовый сервер стал не здоровым.

Ох уж эти спамеры..., и кривые руки админа :D

Вот еще один интересный раздел отчета, здесь написано под каким юзером были отправлены письма, видим юзера локалхост сервера Exim.

Плюс тут показано на какие почтовые сервера слались письма с вашего сервера по количеству писем. Наш сервер без нашего ведома атаковал почтовики с адресами - @ors.com.tr, @hotmail.com, @gmail.com, @charter.net и т.д. Эх, вот так вот бывает когда админ почтового сервера забрасывает его, думая что один раз настроенный почтовик будет жить вечно.

В нашем примере на почтовом сервере взломали учетную запись "admin@company.kz". Взлом осуществлен путем перебора паролей.

Так как спамер рассылает много писем, что аж, почтовик не успевает их отправить, они остаются в очереди и ждут своего момента. Да и если спамеру не закрыть доступ, IP адрес почтового сервера попадет в черные списки, и в очереди будут торчать письма с отлупом вида - "Мы не можем принять письма с вашего сервера, так как он рассылает спам".

Админ всегда может проверить почтовую очередь введя команды:

# exim –bpc

В ответ получите количество писем в очереди. Если количество писем большое  - поздравляю, Вы спамер!

# exiqgrep -i

Выводим номера сообщений.  По номеру сообщения мы можем просмотреть заголовки и тело сообщения.

# exim -Mvh <Вводим номер сообщения>

Смотрим конверт письма, от какой учетной записи отправлено письмо с вашего сервера, это очень важный момент. Так как мы  узнаем от какой учетной записи было отправлено письмо и кому.

Обычно если взламывают учетную запись, мы ее видим тут...

# exim -Mvb <Вводим номер сообщения>

Смотрим тело сообщения, ну а здесь можно увидеть текст тела письма, обычно спамеры всякую чушь рассылают, например -  продажа Виагры, нужна ли вам работа, Вы выиграли миллион  и т.д.

Примечание: Обычно почтовое письмо состоит из двух частей, это:

1. Конверт

2. Тело сообщения

В конверте пишется от какой учетной записи отправлено письмо и кому. Эти данные используются MTA типа Postfix, Exim, Mdaemon и т.д. Почтовый сервер оперирует именно этими данными во время работы.

В теле письма содержится непосредственно само сообщение и заголовки. С этими данными работает почтовый клиент типа Outlook, Thunderbird, The Bat и т.д. Спамеры любят подделывать заголовки писем.

 

 

0
2226
0