Для анализа логов Squid’а будет использовать анализатор логов SARG (Squid Analysis Report Generator) в задачу которого входит, вывод отчётов – куда и как используется интернет сотрудниками в локальной сети. Сейчас я покажу как анализировать логи связки: Ubuntu 10.10 + dnsmasq + Squid 3 = SARG.
Установку будем производить из репозитариев 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.
Собственно и всё, разобрал какой нужно установить пакет, как подготовить и запустить виртуальный хост.
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.
Поистине интересный у Вас блог. Столько значимой информации и всё так подробно. Даже смотря к примеру на пост и применяя действия – все получается!!!
Удивительно. Блог “Реальные заметки Ubuntu / Windows” – это кладезь практических знаний.
Спасибо. Мне помогло. Добавлю Ваш сайт в RSS.