Как установить Free-sa на Debian\Ubuntu

0
5


На днях пришлось переносить прокси сервер на новое железо. Так как старый в большей своей части использовался как тестовая площадка, то начал все с чистого листа.  Установил Debian 5, squid, и тут я задумался о том, что для обработки squid статистики пора уходить от тяжелого sarga на что-то более легковесное. Выбор был между LightSquid и Free-sa. LightSquid не понравился внешне, да и сильно расхваливали free-sa что он мол очень быстро перебирает логи. Посмотрим…

Из особенностей Free-SA 1.0 автор выделяет:

  • более внятная архитектура и код (C/HTML/CSS);
  • скорость формирования отчетов в 7-20 раз выше по сравнению с SARG (7х — для файла access.log объемом в 50 МБ, 20x — для 1 ГБ);
  • все отчеты успешно проходят проверку W3C validator;
  • потенциальная поддержка различных форматов файлов журналов (сейчас только Squid, CLF, Postfix, Qmail, CGP);
  • дополнительные отчеты (в т.ч. для оценки эффективности сервера);
  • изменяемые «на-лету» темы оформления (сейчас всего 3).

Цели Free-SA: контроль расхода трафика по пользователям; контроль выполнения политик безопасности (в части доступа к ресурсам сети Internet) и информационная поддержка при служебных расследованиях некоторых инцидентов; оценка эффективности работы серверов.

Подробнее узнать о Free-SA и найти архивы с последними релизами (таковым на момент написания новости является 1.0.2) можно на SourceForge-странице проекта.

Установка Free-sa на чистую, базовую систему:

1. Устанавливаем прокси и веб-сервер:

1 apt-get install squid3 apache2

2. Нам нужны пакеты для сборки с исходников, устанавливаем:

1 apt-get install build-essential

3. Качаем исходники и распаковываем:

1
2
3
wget http://sourceforge.net/projects/free-sa/files/free-sa-dev/2.0.0b3p8/free-sa-2.0.0b3p8.tar.gz/download
tar -zxf free-sa*

4. Редактируем global.mk и выбираем нашу операционку:

1
2
3
cd free-sa*
vi global.mk
убираем комментарий возле OSTYPE = ubuntu-i586-gcc4

5. Устанавливаем free-sa

1 make install

6. Копируем конфиг и настраиваем его:

1
2
cp /etc/free-sa/free-sa.conf.sample /etc/free-sa/free-sa.conf
vi /etc/free-sa/free-sa.conf

Минимальная настройка:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
##################
# GLOBAL OPTIONS #
##################
configuration_name=«/etc/free-sa/free-sa.conf»
#cache_directory=»/var/cache/free-sa»
target_directory=«/var/www/free-sa»
#locale=»»
####################
# LOG FILE OPTIONS #
####################
log_file=«/var/log/squid3/access.log»
#log_format=»0″
#log_skip_errors=»no»
#log_time_zone_shift=»0″
##########################
# NAMES HANDLING OPTIONS #
##########################
#recipient_tolower=»no»
#username_file=»/etc/free-sa/usertab»
#username_is_preferred=»yes»
username_resolve_ip=«yes»
#username_unescape=»no»
1 cp /etc/free-sa/free-sa.conf /usr/local/etc/free-sa/free-sa.conf

7. Настраиваем скрипт статистики и cron:

1 vi /etc/free-sa/free-sa_day

вставляем:

1
2
3
4
5
6
7
#!/bin/bash
# Приложение создания отчетов по журналам SQUID
#set -x
umask 0022
free_sa=/usr/local/bin/free-sa
date1=`date +%x`
$free_sa -d $date1

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

1 chmod +x /etc/free-sa/free-sa_day

Добавляем в cron для ежедневного запуска в 22:00 :

1 crontab -e

вставляем:

1 0 22 * * * root /etc/free-sa/free-sa_day

и перезагружаем cron:

1 /etc/init.d/cron restart

Если хотите проверить работает или нет free-sa, то просто запустите free-sa -d day
на странице http://yourip/free-sa появится статистика.

Заключение: Логи реально быстрее перебирает, раз этак в 5-10 так точно. Есть возможность изменить тему, что тоже радует. Более продвинутая статистика.