Для анализа логов Squid’а будет использовать анализатор логов SARG (Squid Analysis Report Generator) в задачу которого входит, вывод отчётов – куда и как используется интернет сотрудниками в локальной сети. Сейчас я покажу как анализировать логи связки: Ubuntu 10.10 + dnsmasq + Squid 3 = SARG.

Утилита по обработке логов SQUID.

 

 

Установку будем производить из репозитариев Ubuntu 10.10:

keiz@vkeiz:~$ apt-cache search sarg

sarg – squid analysis report generator

 

Вывод информации по пакету:

keiz@vkeiz:~$ apt-cache show sarg

Package: sarg

Priority: optional

Section: universe/web

Installed-Size: 740

Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>

Original-Maintainer: Luigi Gangitano <luigi@debian.org>

Architecture: i386

Version: 2.2.7.1-2

Replaces: sqmgrlog

Depends: libc6 (>= 2.7), libgd2-noxpm (>= 2.0.36~rc1~dfsg) | libgd2-xpm (>= 2.0.36~rc1~dfsg), ttf-dejavu-core | ttf-freefont

Suggests: squid, httpd | apache2, squidguard, libapache2-mod-php5

Conflicts: sqmgrlog

Filename: pool/universe/s/sarg/sarg_2.2.7.1-2_i386.deb

Size: 179194

MD5sum: e5ee1051b92345ed2e62d8a9c7d41498

SHA1: 9b81a5cacd4b9840d8069071edba81a99bc0af8a

SHA256: 1f2cac4d91af5a824ae3a11db57f859aed0375474a039d0eab9b212fce75b70e

Description: squid analysis report generator

Sarg is a Squid Analysis Report Generator that allow you to view “where”

your users are going to on the Internet. Sarg generate reports in html,

with many fields, like: users, IP Addresses, bytes, sites and times.

Bugs: https://bugs.launchpad.net/ubuntu/+filebug

Origin: Ubuntu

 

Устанавливаем пакет в нашу систему:

keiz@vkeiz:~$ sudo apt-get install sarg

Reading package lists… Done

Building dependency tree

Reading state information… Done

Suggested packages:

squid httpd apache2 squidguard libapache2-mod-php5

The following NEW packages will be installed:

sarg

0 upgraded, 1 newly installed, 0 to remove and 384 not upgraded.

Need to get 179kB of archives.

After this operation, 758kB of additional disk space will be used.

WARNING: The following packages cannot be authenticated!

sarg

Install these packages without verification [y/N]? y

 

Создадим бекап конфигурационного файла перед редактированием:

keiz@vkeiz:~$ sudo cp /etc/sarg/sarg.conf /etc/sarg/sarg.conf.backup

keiz@vkeiz:~$ sudo nano /etc/sarg/sarg.conf

# Путь к логам SQUID’а.

access_log /var/log/squid3/access.log

# Заголовок

title “Squid User Access Reports”

# Настройки внешнего вида.

font_face Tahoma,Verdana,Arial

header_color darkblue

header_bgcolor blanchedalmond

font_size 9px

background_color white

text_bgcolor lavender

title_color green

# Временная папка

temporary_dir /tmp

# Директория с отчётами

output_dir /var/www/sarg/htdocs

# Запрашивать ли ip-адрес? пишем yes

resolve_ip yes

# topuser_sort_field {USER | CONNECT | BYTES | TIME} {reverse | normal} (тип сортировки отчёта TopUser)

topuser_sort_field BYTES reverse

# (тип сортировки отчёта User)

user_sort_field BYTES reverse

# файл содержит имена пользователей, которых не надо включать в отчёт

exclude_users /etc/sarg/exclude_users

# файл содержит адреса хостов и сетей, которые не надо включать в отчёт: например, 192.168.10.0

exclude_hosts /etc/sarg/exclude_hosts

# Формат даты, меняем на “e” (european, европейский)

date_format e

lastlog 0

remove_temp_files yes

# создавать index.html

index yes

index_tree file

# перезаписывать отчёт, если отчёт за указанный день уже существует

overwrite_report yes

# что делать, если в строке журнала нет идентификатора пользователя; ignore – пропускать строку, ip – записывать ip, everybody – вместо userid записывать строку “everybody”

records_without_userid ip

# использовать запятую вместо десятичной точки

use_comma yes

# какую программу использовать для посылки отчёта по почте

mail_utility mailx

# сколько сайтов включить в отчёт о самых популярных сайтах

topsites_num 100

topsites_sort_order CONNECT D

# тип сортировки индекса

index_sort_order D

exclude_codes /etc/sarg/exclude_codes

max_elapsed 28800000

# перечень-отчётов-через-пробел

report_type topusers topsites sites_users users_sites date_time denied auth_failures site_user_time_date downloads

usertab /etc/sarg/usertab

# вставлять в отчёт полный URL или только имя сайта

long_url no

# включать в почасовой отчёт байты или потраченное время

date_time_by bytes

# Кодировка, меняем на UTF-8

charset UTF-8

show_successful_message yes

show_read_statistics no

topuser_fields NUM DATE_TIME USERID CONNECT BYTES %BYTES IN-CACHE-OUT USED_TIME MILISEC %TIME TOTAL AVERAGE

user_report_fields CONNECT BYTES %BYTES IN-CACHE-OUT USED_TIME MILISEC %TIME TOTAL AVERAGE

topuser_num 0

download_suffix “zip,arj,bzip,gz,ace,doc,iso,adt,bin,cab,com,dot,drv$,lha,lzh,mdb,mso,ppt,rtf,src,shs,sys,exe,dll,mp3,avi,mpg,mpeg”

 

Сохраняем, выходим, пробуем создать отчёт:

keiz@vkeiz:~$ sudo sarg

SARG: Successful report generated on /var/www/sarg/21Dec2012-21Dec2012

 

Для того чтобы можно было просматривать результаты обработки логов посредством Web-интерфейса сделаем следующее:

Отредактируем файл настройки виртуальных хостов:

keiz@vkeiz:~$ sudo nano /etc/apache2/sites-available/default

и приводим его к виду:

<virtualhost *:80>

ServerAdmin webmaster@localhost

DocumentRoot /var/www/

</virtualhost>

В apache2.conf добавим или раскомментируем строку:

keiz@vkeiz:~$ sudo nano /etc/apache2/apache2.conf

Include /etc/apache2/sites-enabled/

 

Перезапустим Apache, чтобы перечитать настройки:

keiz@vkeiz:~$ sudo /etc/init.d/apache2 reload

* Reloading web server config apache2 [ OK ]

 

Создадим виртуальный хост:

keiz@vkeiz:~$ sudo mkdir /var/www/sarg/htdocs

keiz@vkeiz:~$ sudo mkdir /var/www/sarg/log

keiz@vkeiz:~$ sudo nano /etc/apache2/sites-available/sarg.conf

со следующим содержанием

<virtualhost *:80>

ServerAdmin webmaster@domain.com

ServerName sarg

ServerAlias sarg

DirectoryIndex index.html

DocumentRoot /var/www/sarg/htdocs

LogLevel warn

ErrorLog /var/www/sarg/log/error.log

CustomLog /var/www/sarg/log/access.log combined

</virtualhost>

 

Включаем виртуальный хост:

keiz@vkeiz:~$ sudo a2ensite sarg.conf

Enabling site sarg.conf.

Run ‘/etc/init.d/apache2 reload’ to activate new configuration!

keiz@vkeiz:~$ sudo /etc/init.d/apache2 reload

* Reloading web server config apache2 [ OK ]

keiz@vkeiz:~$ sudo apachectl restart

Теперь открываем Web-браузер с адресом системы и если открыть путь –

http://localhost/sarg/ увидим настроенный виртуальный хост, в моём случае это запущенная статистика по обработке логов Squid Analysis Report Generator.

Web-интерфейс по просмотру обработанных логов.

 

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

 

От ekzorchik

Всем хорошего дня, меня зовут Александр. Я под ником - ekzorchik, являюсь автором всех написанных, разобранных заметок. Большинство вещей с которыми мне приходиться разбираться, как на работе, так и дома выложены на моем блоге в виде пошаговых инструкции. По сути блог - это шпаргалка онлайн. Каждая новая работа где мне случалось работать вносила новые знания и нюансы работы и соответственно я расписываю как сделать/решить ту или иную задачу. Это очень помогает. Когда сам разбираешь задачу, стараешься ее приподнести в виде структурированной заметки чтобы было все наглядно и просто, то процесс усвоения идет в гору. Также прошу на https://win.ekzorchik.ru https://lin.ekzorchik.ru https://net.ekzorchik.ru https://voip.ekzorchik.ru https;//home.ekzorchik.ru

3 комментария для “Анализируем логи на прозрачном прокси сервере”
  1. Hi every one, here every one is sharing these know-how, thus it’s pleasant to read this website, and I used to pay a visit this website all the time.

  2. Поистине интересный у Вас блог. Столько значимой информации и всё так подробно. Даже смотря к примеру на пост и применяя действия – все получается!!!
    Удивительно. Блог “Реальные заметки Ubuntu / Windows” – это кладезь практических знаний.

  3. Спасибо. Мне помогло. Добавлю Ваш сайт в RSS.

Обсуждение закрыто.