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

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

Blog post image

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

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

В данной короткой записке написано как установить 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

Скрины:

Blog post image

Blog post image

Blog post image

 

В отчетах можно увидеть, сколько писем было отправлено, сколько принято. Топ 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

Вот скрины:

Blog post image

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

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

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

 

Blog post image

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

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

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

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

Blog post image

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

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

Blog post image

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

Blog post image

Плюс тут показано на какие почтовые сервера слались письма с вашего сервера по количеству писем. Наш сервер без нашего ведома атаковал почтовики с адресами - @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 и т.д. Спамеры любят подделывать заголовки писем.

Blog post image

 

Blog post image

 

Blog post image

0
2219
0