Сравнение Бесплатных Программ Учета Трафика Squid

Недавно нашей компании потребовалось перевести прокси-сервер с MS ISA Server на бесплатное программное обеспечение.

Выбор прокси-сервера (кальмара) не занял много времени.

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

Некоторые трудности возникли при выборе программы для учета трафика.

Требования были: 1) бесплатное программное обеспечение 2) возможность обработки логов с разных прокси на одном сервере 3) возможность создания стандартных отчетов с отправкой по почте, либо по ссылке на веб-сервере 4) построение отчетов по отдельным подразделениям и рассылка таких отчетов руководителям отделов, либо предоставление доступа по ссылке на веб-сервере Разработчики предоставляют очень мало информации о программах учета трафика: лаконичное описание назначения программы плюс необязательный бонус в виде пары скриншотов.

Да, понятно, что любая программа посчитает объём трафика за день/неделю/месяц, но дополнительные интересные возможности, отличающие одну программу от других, не описаны.

Я решил написать этот пост, в котором постараюсь описать возможности и недостатки таких программ, а также некоторые их ключевые особенности, чтобы немного помочь тем, кому предстоит сделать выбор.

Наши кандидаты: САРГ фри-са световой кальмар SquidAnalyzer ЭкранSquid Отступление Информация о «возрасте» программы и последней версии не является параметром сравнения и предоставлена исключительно для информации.

Я постараюсь сравнить исключительно функционал программы.

Я также сознательно не рассматривал слишком старые программы, которые не обновлялись уже много лет. Логи отправляются на обработку анализатору в том виде, в котором их создал Squid, и не подвергаются никакой предварительной обработке для внесения в них изменений.

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

Эта статья не является руководством по настройке.

Вопросы настройки и использования можно рассмотреть в отдельных статьях.

Итак, давайте начнем.



SARG — Генератор отчетов по анализу кальмаров

Самая старая из поддерживаемых программ этого класса (разработка началась в 1998 году, прежнее название sqmgrlog).

Последний выпуск (версия 2.3.10) — апрель 2015 года.

После этого появилось несколько улучшений и исправлений, которые доступны в основной версии (можно скачать с помощью git с sourceforge).

Программа запускается вручную или через cron. Вы можете запустить его без параметров (тогда все параметры будут взяты из файла конфигурации sarg.conf), а можете указать параметры в командной строке или скрипте, например, даты, за которые формируется отчет. Отчеты создаются в виде html-страниц и сохраняются в каталоге /var/www/html/squid-reports (по умолчанию).

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

Например, 10 ежедневных и 20 еженедельных, более старые будут автоматически удалены.

Для разных вариантов отчета возможно использовать несколько конфиг-файлов с разными параметрами (например, для ежедневных отчетов можно создать свой конфиг, в котором будет отключена опция создания графиков и будет другая директория для вывода отчета).

указано).

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



Сравнение бесплатных программ учета трафика SQUID

При выборе одного из периодов мы сможем получить отчет топпользователей за этот период. Ниже я приведу описания и примеры всех типов отчетов, которые может создавать SARG. 1) topusers — общий трафик по пользователям.

Пользователь — это либо имя хоста, которому предоставлен доступ в Интернет, либо логин пользователя.

Пример отчета:

Сравнение бесплатных программ учета трафика SQUID

Здесь отображаются IP-адреса.

Если настроена активация соответствующей опции, IP-адреса преобразуются в доменные имена.

Вы используете аутентификацию? Аккаунты конвертируются в настоящие имена:

Сравнение бесплатных программ учета трафика SQUID

Внешний вид можно настроить в CSS-файле.

Отображаемые столбцы также можно настроить, а ненужные можно удалить.

Поддерживается сортировка по столбцам (sorttable.js).

Если щелкнуть значок графика слева, вы увидите такой график:

Сравнение бесплатных программ учета трафика SQUID

При нажатии на иконку справа получаем отчет 5. 2) топсайты - отчет о самых популярных сайтах.

По умолчанию отображается список из 100 самых популярных сайтов (значение можно регулировать).

С помощью регулярных выражений или установки псевдонимов вы можете объединить трафик с доменов 3-го и выше уровней в домен 2-го уровня (как на скриншоте) или задать любое другое правило.

Для каждого домена можно задать правило отдельно, например для yandex.ru и mail.ru объединить до 3-го уровня.

Значение полей вполне очевидно.



Сравнение бесплатных программ учета трафика SQUID

3) site_users — отчет о том, кто посещал конкретный сайт. Здесь все просто: имя домена и кто к нему обращался.

Трафик здесь не отображается.



Сравнение бесплатных программ учета трафика SQUID

4)users_sites – отчет о сайтах, посещенных каждым пользователем.



Сравнение бесплатных программ учета трафика SQUID

Здесь тоже все ясно.

Если нажать на иконку в первом столбце, получим отчет 8).

5) date_time — распределение пользовательского трафика по дням и часам.



Сравнение бесплатных программ учета трафика SQUID

6) Denied — запросы заблокированы squid. Здесь отображается, кому, когда и где был запрещен доступ.

Количество записей настраивается (по умолчанию — 10).



Сравнение бесплатных программ учета трафика SQUID

7) auth_failures — сбои аутентификации.

HTTP/407. Количество записей настраивается (по умолчанию — 10).



Сравнение бесплатных программ учета трафика SQUID

8) site_user_time_date — показывает в какое время пользователь зашёл на какой сайт и с какой машины.



Сравнение бесплатных программ учета трафика SQUID

9) загрузки - список загрузок.



Сравнение бесплатных программ учета трафика SQUID

10) useragent - отчет об используемых программах В первой части отчета отображается IP-адрес и используемые юзерагенты.



Сравнение бесплатных программ учета трафика SQUID

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



Сравнение бесплатных программ учета трафика SQUID

11) редиректор - в отчете показано, у кого был заблокирован доступ с помощью блокировщика.

Поддерживаются Squidguard, dansguardian, rejik, формат журнала настраивается.



Сравнение бесплатных программ учета трафика SQUID

SARG имеет более 120 параметров настройки, языковую поддержку (100% сообщений переведено на русский), поддержку регулярных выражений, работу с LDAP, возможность предоставлять пользователям доступ только к своим отчетам на веб-сервере (через .

htaccess).

, возможность конвертировать логи в свой формат для экономии места, выгрузка отчетов в текстовый файл для последующего наполнения базы, работа с лог-файлами squid (разбиение одного или нескольких лог-файлов по дням).

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

В дальнейшем доступ к веб-странице с отчетами отдела можно будет предоставить, например, менеджерам с помощью веб-сервера.

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

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

Также можно задать псевдонимы для сайтов, например объединить несколько социальных сетей в определенный псевдоним, в этом случае все параметры для указанных доменов (количество подключений, объем трафика, время обработки) будут суммироваться.

Либо с помощью регулярного выражения можно «отбросить» домены выше 3-го уровня.

В отдельные файлы можно выгрузить список пользователей, превысивших определенные объемы за период. На выходе будет несколько файлов, например: userlimit_1G.txt - превышающий 1 Гб, userlimit_5G.txt - превышающий 5 Гб и так далее - всего 16 лимитов.

SARG также имеет в своем арсенале пару PHP-страниц: для просмотра текущих подключений к squid и для добавления доменных имен в черные списки squidguard. В целом это очень гибкий и мощный инструмент, который легко освоить.

Все параметры описаны в файле конфигурации по умолчанию, в раздел вики У проекта на sourceforge в разделе wiki есть более подробное описание всех параметров, разбитых на группы, и примеры их использования.



фри-са

Внутреннее развитие.

С ноября 2013 года не было новых версий.

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

Давай проверим! По логике работы эта программа наиболее близка к SARG (и автор сам сравнивает ее с этой программой (например, здесь )), поэтому и будем сравнивать с ним.

Порадовало наличие нескольких тем оформления.

Тема состоит из 3 css файлов и 4 соответствующих им иконок png. Отчеты на самом деле делаются быстрее.

Ежедневный отчет был создан в 4:30, тогда как у SARG было 12 минут. Однако с занимаемым объемом все было не так: объем, занимаемый отчетами, составляет 440 МБ (free-sa) и 336 МБ (SARG).

Попробуем поставить задачу посложнее: обработать за 10 дней лог-файл размером 3,2 ГБ, содержащий 26,3 миллиона строк.

Free-sa также сделала отчет быстрее, за 46 минут, отчет занимает 3,7 ГБ дискового пространства.

САРГ потратил 1 час 10 минут, отчет занимает 2,5 Гб.

Но оба эти отчета будет неудобно читать.

Кому, например, захочется вручную подсчитывать, какой домен популярнее — vk.com или googlevideo.com, и вручную считать трафик всех их поддоменов? Если оставить в настройках SARG только домены 2-го уровня, то создание отчета займет примерно столько же времени, но теперь сам отчет занимает на диске 1,5 ГБ (ежедневно с 336 МБ уменьшилось до 192 МБ).

Подробности При входе на главную страницу видим примерно следующее (выбрана блюзовая тема):

Сравнение бесплатных программ учета трафика SQUID

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

Сравнение бесплатных программ учета трафика SQUID

Список заблокированных URL-адресов:

Сравнение бесплатных программ учета трафика SQUID

Отчет метода CONNECT:

Сравнение бесплатных программ учета трафика SQUID

Отчет метода PUT/POST:

Сравнение бесплатных программ учета трафика SQUID

Скачать отчет:

Сравнение бесплатных программ учета трафика SQUID

Популярные сайты:

Сравнение бесплатных программ учета трафика SQUID

Отчет об эффективности прокси-сервера показался интересным:

Сравнение бесплатных программ учета трафика SQUID

Пользовательский отчет:

Сравнение бесплатных программ учета трафика SQUID

При нажатии на иконку графика во втором столбце мы получаем график использования Интернета конкретным пользователем:

Сравнение бесплатных программ учета трафика SQUID

При нажатии на второй значок получаем таблицу загрузки интернет-канала по часам:

Сравнение бесплатных программ учета трафика SQUID

При выборе IP-адреса мы получаем список сайтов по пользователям в порядке убывания трафика:

Сравнение бесплатных программ учета трафика SQUID

Вся статистика отображается в байтах.

Для перехода на мегабайты необходимо установить параметр

report_bytes_divisor="M"
Программа не принимает сжатые файлы журналов, не принимает более одного файла с параметром -l и не поддерживает фильтрацию файлов по маске.

Автор программы предлагает обойти эти ограничения, создав именованные каналы.

Обнаружен досадный глюк — при слишком большой длине строки лога вместо адресов вводятся временные метки:

Сравнение бесплатных программ учета трафика SQUID

При просмотре трафика этого «пользователя» вы можете увидеть домен с источником ошибки:

Сравнение бесплатных программ учета трафика SQUID

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

Если сравнить эти две программы, free-sa создает отчет немного быстрее.

20-кратного увеличения скорости, как заявлено автором, мне обнаружить не удалось.

Возможно, это можно увидеть при определенных условиях.

Думаю, не имеет значения, сколько времени уйдет на создание еженедельного отчета ночью — 30 минут или 50. По объему места, занимаемого отчетами, у free-sa нет преимуществ.



световой кальмар

Пожалуй, самый популярный счетчик трафика.

Работает быстро, отчеты не занимают много места на диске.

Хотя эта программа давно не обновлялась, я все же решил рассмотреть ее возможности в этой статье.

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

То есть здесь нет заранее созданных отчетов с данными; страницы с данными генерируются «на лету».

Плюсы такого решения очевидны: для получения отчета не обязательно парсить все логи за период; накопленный лог достаточно «скормить» Lightsquid один раз в день.

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

Есть некоторые недостатки: невозможно обрабатывать логи с разных серверов и собирать статистику в одном месте: при обработке лога за день с другого сервера имеющаяся статистика за этот день стирается.

Есть странное ограничение: Lightsquid «воспринимает» как несжатые лог-файлы, так и сжатые (gz — именно), но во втором случае имя файла должно быть в следующем формате: access.log.X.gz, файлы с именем формат access.log- ГГГГММДД.

gz не примет его.

Путём несложных манипуляций преодолеем это ограничение и посмотрим, что получится.

Подробности Отчет за месяц (общий трафик 3 ТБ, 110 млн строк) занял 1 ГБ дискового пространства.

На главной странице мы видим трафик по дням за текущий месяц.



Сравнение бесплатных программ учета трафика SQUID

При выборе дня мы видим отчет за день для всех пользователей:

Сравнение бесплатных программ учета трафика SQUID

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

Пользователи, не входящие ни в одну группу, объединяются в группу 00 нет в группе (в этом отчете они отмечены знаком вопроса).

При выборе grp на главной странице за соответствующую дату вы попадаете на страницу отчета пользователя, разделенную на группы.

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



Сравнение бесплатных программ учета трафика SQUID

При нажатии на название группы в таблице справа мы переходим ниже к тому месту на странице, где начинается отчет по этой группе:

Сравнение бесплатных программ учета трафика SQUID

При нажатии на «Отчет по топ сайтам» мы получаем отчет по популярным сайтам за день:

Сравнение бесплатных программ учета трафика SQUID

Отчет о больших файлах:

Сравнение бесплатных программ учета трафика SQUID

Перейдем к таблице справа.

Здесь вы можете получить список топ сайтов за месяц и за весь год (выглядят они одинаково, поэтому скриншота нет), общую статистику за год и месяц, а также статистику за год и месяц по группам.

Статистика за месяц:

Сравнение бесплатных программ учета трафика SQUID

Нажав на иконку часов мы можем увидеть таблицу сайтов, времени доступа и потребляемого трафика за час:

Сравнение бесплатных программ учета трафика SQUID

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

При нажатии на иконку графика мы можем увидеть расход трафика пользователя в течение месяца:

Сравнение бесплатных программ учета трафика SQUID

Столбцы графика кликабельны: при нажатии на столбец вы переходите к статистике пользователя за другой день.

Нажав на [М], мы получим отчет о потреблении трафика пользователем в течение месяца с указанием объема за каждый день и за полную неделю.



Сравнение бесплатных программ учета трафика SQUID

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

Сравнение бесплатных программ учета трафика SQUID

Ну, кажется, это все.

Все просто и лаконично.

IP-адреса могут быть преобразованы в доменные имена.

Используя регулярные выражения, доменные имена можно объединять в домены 2-го уровня; на всякий случай вот регулярное выражение:

$url =~ s/([a-z]+:\/\/)??([a-z0-9\-]+\.

){0,}([a-z0-9\-]+\.

){1}([a-z]+)(.

*)/$3$4/o;

Если у вас есть навыки работы с Perl, вы можете настроить его в соответствии со своими потребностями.



SquidAnalyzer

Программа, похожая на Lightsquid и тоже написанная на Perl. Более красивый дизайн.

Последняя версия 6.4 вышла в середине декабря этого года, в ней было сделано множество улучшений.

Сайт программы: squidanalyzer.darold.net .

SquidAnalyzer может использовать несколько процессоров на вашем компьютере (опция -j), что приводит к более быстрому созданию отчетов, но это применимо только к несжатым файлам.

Для упакованных (поддерживается формат gz) обработка происходит с использованием одного ядра процессора.

И еще сравнение с Lightsquid: тот же отчет на том же сервере занял около суток, на диске занимает 3,7 ГБ.

Как и в случае с Lightsquid, SquidAnalyzer не сможет объединить два или более файлов журналов с разных серверов за один и тот же период. Подробнее Домашняя страница - можно выбрать год отчета.



Сравнение бесплатных программ учета трафика SQUID

При выборе любого периода (год, месяц, неделя, день) внешний вид веб-страниц будет одинаковым: вверху находится меню со следующими отчетами: MIME-типы, Сети, Пользователи, Самые запрещенные, Самые популярные URL-адреса, Топ доменов.

Ниже представлена статистика прокси за выбранный период: Запросы (Попадание/Промах/Отклонено), Мегабайты (Попадание/Промах/Отклонено), Всего (Запросы/Мегабайты/Пользователи/Сайты/Домены).

Ниже представлен график количества запросов за период и трафика.

В правом верхнем углу находится календарь.

При выборе месяца вы можете увидеть краткую статистику и график загрузок по дням:

Сравнение бесплатных программ учета трафика SQUID

Календарь позволяет выбрать неделю.

При выборе мы увидим аналогичную статистику:

Сравнение бесплатных программ учета трафика SQUID

При выборе дня вы видите статистику по часам:

Сравнение бесплатных программ учета трафика SQUID

Отчет о типах контента:

Сравнение бесплатных программ учета трафика SQUID

Отчет сетей.



Сравнение бесплатных программ учета трафика SQUID

Пользовательский отчет.

Сравнение бесплатных программ учета трафика SQUID

При выборе пользователя мы получаем его статистику за период.

Сравнение бесплатных программ учета трафика SQUID



Сравнение бесплатных программ учета трафика SQUID

Запрещенные ресурсы:

Сравнение бесплатных программ учета трафика SQUID

Отчет по доменам 2-го уровня.



Сравнение бесплатных программ учета трафика SQUID

От себя хочу отметить очень медленную работу программы по мере накопления информации.

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



ЭкранSquid

В этой программе другая логика: лог импортируется в базу данных MySQL, затем из него запрашиваются данные при работе в веб-интерфейсе.

База данных с уже упомянутым ранее обработанным десятидневным журналом занимает 1,5 ГБ.

Подробнее Программа не может импортировать файлы журналов с произвольным именем; он привязывается только к access.log. Домашняя страница:

Сравнение бесплатных программ учета трафика SQUID

Краткая статистика:

Сравнение бесплатных программ учета трафика SQUID

Вы можете создавать псевдонимы для IP-адресов:

Сравнение бесплатных программ учета трафика SQUID

.

и тогда их можно объединить в группы:

Сравнение бесплатных программ учета трафика SQUID

Перейдем к главному – отчетам.

Слева находится меню с типами отчетов: Логины пользовательского трафика Пользовательский трафик IP-адреса Трафик сайта Лучшие сайты Лучшие пользователи Топ IP-адреса По времени суток Расширены входы в пользовательский трафик Расширение пользовательского трафика IP-адреса Трафик IP-адреса с разрешением Популярные сайты Кто скачивал большие файлы Трафик по периоду (дни) Трафик по периоду (название дня) Трафик по периодам (месяцев) HTTP-статусы IP-адреса для входа Входы с IP-адресов Примеры отчетов.

Пользовательский трафик IP-адреса:

Сравнение бесплатных программ учета трафика SQUID

Трафик сайта:

Сравнение бесплатных программ учета трафика SQUID

Лучшие сайты:

Сравнение бесплатных программ учета трафика SQUID

.

далее, честно говоря, терпения на изучение возможностей у меня не хватило, так как страницы стали генерироваться за 3-5 минут. Отчет «время суток» за сутки, журнал по которому вообще не импортировался, создавался более 30 секунд. За день с пробками - 4 минуты:

Сравнение бесплатных программ учета трафика SQUID

Вот и все.

Надеюсь, этот материал будет кому-то полезен.

Спасибо всем за внимание.

Теги: #it-инфраструктура #Системное администрирование #log #squid #screensquid #sarg #squidanalyzer #lightsquid #free-sa

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.