WrSpy: Анализатор логов WinRoute и не только




Подробнее

WinRoute Spy – программа, которая задумывалась, как простейшая мини-биллинговая система для непритязательного пользователя. Основная ее задача:

  1. посчитать входящий, а при возможности и исходящий, трафик;
  2. учесть его распределение по пользователям и станциям;
  3. определить его стоимость;
  4. дать информацию об использовании ресурсов Интернет;
  5. оценить время, проведенное в Интернет;
  6. задать лимиты трафика и следить за их превышением;
  7. отключить пользователя, превысившего лимит трафика;
  8. сформировать отчеты;
  9. донести отчеты до конечного пользователя.

Задача решается путем обработки логов прокси (WinRoute Pro 4.X, Kerio WinRoute Firewall 5.X, BSB, UserGate, Squid NT, WinGate, ISA) и почтовых серверов (WinRoute Pro 4.X, MDaemon, Kerio Mail Server). Информация помещается в базу данных для дальнейшего анализа.

Для сокращения времени ввода логов используется три режима

  1. "Закачка" - ввод файла с начала.
  2. "Докачка" – ввод файла с последней введенной позиции.
  3. "Только анализ" - получение данных при изменении настроек по уже введенному логу.

Программа умеет работать как с непрерывными, так и нарезанными файлами логов. При настройке задаются каталоги и маски для файлов. Если в маске присутствуют символы заместители "*" и "?", то в указанном каталоги ищутся файлы, соответствующие заданной маске, и включаются в обработку в порядке времени их создания. Если символы заместители отсутствуют, то в обработку включается именно указанный файл. При вводе лога информация добавляется к ранее накопленной в базе. Для удаления ее служит режим "Очистка".

По введенной информации, исходя из заданных параметров, проводится анализ. Параметрами анализа могут быть следующие категории:

  1. Пользователи. Информация представляется согласно обнаруженным в логах логинам пользователей.
  2. Станции. Информация представляется согласно обнаруженным в логах IP адресам или доменным именам.
  3. Почта. Информация, полученная при разборе почтовых логов.
  4. Группы пользователей и станций. Пользователи и станции могут быть объединены в группы.
  5. Время. Задав тот или иной временной интервал анализа, можно получить информацию именно за этот интервал. Существует три автоматических (текущий месяц, текущая неделя и текущие сутки) и один ручной интервала анализа. Кроме того, для прокси (иногда это необходимо для ISA и Squid) можно задать учет временной зоны, посредством сдвига времени, взятого из лога, на целое число часов.

Изменение любого параметра анализа не требует повторного ввода логов. Для этого служит режим "Только анализ". Анализ осуществляется всегда, если из лога была введена хотя бы одна строка. Дальнейшие действия программы можно программировать. Сюда относятся следующие операции:

  1. Блокировка пользователей, превысивших заданный лимит трафика (только для WinRoute Pro 4.X и Squid NT, остальные прокси умеют это делать сами).
  2. Формирование html отчетов. Для управления содержанием отчетов служит отдельная настройка.
  3. Рассылка отчетов по почте, ее состав. Рассылка осуществляется самой программой с использованием любого доступного SMTP сервера.

Программа может работать как в интерактивном (режим 0), так и автоматическом (режим 1-5) режимах запуска. Автоматические режимы служат для запуска из любого планировщика. В автоматическом режиме программа запускается, вводит логи в режиме "Докачка", выполняет запрограммированные для каждого из режимов действия и завершает работу. В интерактивном режиме запрограммированная последовательность действий выполняется после ввода логов.

Результаты анализа представляются в виде:

  1. Интерактивные формы. Наиболее информативный и удобный вид представления информации. Функционирует в многооконном режиме с использованием всех стандартных методов управления окнами. Используются мгновенные сортировки по заранее построенным индексам и контекстный поиск, там, где он необходим. Именно в этом режиме возможно представление информации в графической форме, в виде гистограмм.
  2. Html отчеты. Предназначены для наиболее удобного представления обобщенных данных для удаленного пользователя. Их можно размещать непосредственно на Web-сервере. Именно они используются для автоматических почтовых рассылок. Все сформированные в интерактивном режиме гистограммы могут быть сохранены в виде html страничек. Можно задать автоматическое открытие отчета сразу после формирования. Html отчет состоит из головной сводной и подчиненных страничек детализации.
  3. Отчет в формате Excel. Формируется многостраничная книга, содержащая основные суммарные данные. Удобны для построения более сложных диаграмм, чем формируемые в интерактивном режиме.

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

Одной из составляющих сводных отчетов является стоимость трафика. Можно задать различную цену одного мегабайта для входящего и исходящего трафика, исходя из которой и будет получена величина стоимости. Из общей стоимости можно исключить стоимость почтового трафика. Так как анализ логов прокси не может дать точное значение трафика, в программе можно задать поправочные коэффициенты, с помощью которых можно привести вычисленное значение входящего и исходящего трафиков в соответствие с истинными значениями.

Со стоимостью тесно связаны лимиты. Лимит задается в виде целого числа мегабайт. Величину мегабайта можно выбрать из трех возможных значений, в зависимости от того, что имеет в виду под величиной мегабайта Ваш провайдер. Значение лимита пересчитывается в стоимость, исходя из цены входящего мегабайта. Полученная величина сравнивается со стоимостью трафика конкретного пользователя, станции, группы пользователей или станций и по результатам сравнения принимается решение о превышении лимита трафика. Тем самым, манипулируя значениями цены мегабайта для входящего и исходящего трафика, можно учитывать эти составляющие для формирования критерия превышения лимита. В интерактивной форме превышение выделяется красным цветом. В html отчете степень приближения к лимиту отражается цветом (чем ближе к лимиту, тем более красный цвет используется для выделения, превышение лимита – малиновый, заблокированный встроенными в программу средствами – синий). Кроме того, посредством редактирования файлов header.htm и footer.htm можно изменить вид отчета. Например вставить в шапку фирменный логотип, изменить цвет фона и вид шрифта в заголовках таблиц. Пример html отчета.

Блокировка пользователя производится для WinRoute Pro 4.X и Squid NT.

Для Winroute это производится путем переноса пользователя из групп пользователей, к которым он принадлежал, в группу, не имеющую никаких или ограниченные права в доступе прокси. При изменении условий превышения лимита, пользователь возвращается в свои прежние группы. Этот перенос осуществляется посредством прямой правки реестра. Для систем на базе W9X требуется вручную, по требованию программы, остановить движок WinRoute. Для систем на ядре NT автоматически осуществляется остановка и последующий старт сервиса с именем winroute.

Для Squid NT блокировка осуществляется путем автоматического формирования листа доступа и запуска командного файла, производящего процедуру реконфигурации Squid NT. Эта процедура выполняется каждый раз, когда при вводе лога было обнаружено изменение критериев превышения лимита трафика.

Программа ведет учет и отображение логинов заблокированных и незаблокированных пользователей.

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

Для WinRoute Pro 4.X реализован режим учета реального трафика через выбранные интерфейсы. При этом производится автоматическое чтение из реестра хранящихся там значений суммарного трафика через интерфейсы. По этим данным можно получить величину реального трафика за заданный интервал времени или получить гистограмму ежедневного реального трафика.

В качестве уточняющей информации можно получить распределение входящего трафика по сайтам, скачанным файлам и ftp трафик. Эти данные формируются для пользователей и станций. Ведется статистика посещения сайтов и величины суммарного трафика для каждого сайта с разбивкой по файлам. Распределение пользователей по станциям и станций по пользователям с соответствующими значениями входящего трафика, позволяет отследить процессы “миграции” пользователей. Можно получить значение суммарных составляющих трафика для каждой из заданных подсетей. Оценка времени, проведенного пользователем или станцией в Интернет, осуществляется косвенным методом. Весь интервал времени анализа разбивается на кванты от 1 до 30 минут. Величина кванта задается из преимущественного стиля работы Ваших пользователей, для быстрого серфинга – меньшие значения, для длительного скачивания – большие. Если пользователь проявлял какую то активность в течении данного кванта, в его бюджет заносится значение величины этого кванта. Суммирование всех этих значений и дает величину оценки времени. Кроме того, формируется усредненое распределение суммарного трафика по времени суток.

Почтовый трафик делится на входящий и исходящий, локальный и внешний. По всем составляющим формируются отчеты. Для WinRoute Pro 4.X, забирающего почту по POP3, локальный и внешний трафик разделяется самой структурой почтового лога. Для WinRoute Pro 4.X, забирающего почту по SMTP, Mdaemon и KMS это производится по принадлежности почтового адреса отправителя или получателя к заданным локальным почтовым доменам и локальным подсетям.

Почтовый трафик по POP3 и SMTP туннелям UserGate и BSB учитывается совместно с трафиком прокси. Для WinGate реализован учет WWW и Socks прокси. Для ISA - обрабатываются логи прокси, файервола или оба вместе, в зависимости от заданой маски.

Реализован режим просмотра всей накопленной в базе информации в виде, максимально приближенном к виду исходных файлов логов. В этих режимах реализованы поиск и фильтрация, позволяющие быстро найти необходимую информацию.

Следует отметить, что программа находится в постоянном развитии, и главным двигателем его являются пожелания и замечания пользователей.