Консультация Oblako.kz

Настройка SARG - анализатора логов Squid

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

Так как анализ логов Squid достаточно трудоемок, то, как правило, используют дополнительное ПО - анализатор логов. Его задачей является обработка логов Squid и представление их анализа, как правило в виде публикации на внутренний веб-сервер.

Одной из таких программ является SARG - Squid Analysis Report Generator.

Для того, чтобы SARG мог анализировать и публиковать данные в системе должен быть установлен Прокси-сервер Squid. установить его можно согласно нижеприведенной инструкции. Также для публикации отчетов должен быть настроен любой из веб-серверов, например Nginx. Ссылка на инструкцию.

После того, как Squid и Nginx установлены и настроены можно приступать к SARG:

Установим SARG из соответствующего пакета используя пакетный менеджер Вашей системы. В debian это apt:

apt-get install sarg

Сам SARG настраивается единственным файлом конфигурации /etc/sarg/sarg.conf. его Можно отредактировать любым редактором. Настраивать его несложно. Параметры достаточно подробно расписаны в самом файле конфигурации, либо в интернете. Приведу описание основных параметров и мои параметры:

  • # Генерировать ли графики
    graphs no
  • # Заголовок для страницы отчётов
    title "User Internet Usage Reports"
  • # Временный каталог
    temporary_dir /tmp
  • # Каталог для сгенерированных отчетов. Его будем потом публиковать в Nginx. Если каталога нет, то его необходимо создать используя команду ОС mkdir -p /var/www/html/sarg
    output_dir /var/www/htmp/sarg
  • # Преобразовывать ли IP-адреса в DNS-имена
    resolve_ip no
  • # указывать использовать в отчетах IP адреса
    user_ip yes
  • # Cортировка отчета наиболее активных пользователей
    #Разрешенные поля:
    # Allowed fields: USER CONNECT BYTES TIME
    topuser_sort_field BYTES reverse
  • # Cортировка отчета активности пользователей
    user_sort_field BYTES reverse
  • # Формат даты, используемой в отчетах
    # e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww)
    date_format e
  • # Ограничение на количество отчетов. Оставим неделю
    lastlog 7
  • # Очищать temp после генерации
    remove_temp_files yes
  • # Cоздавать ли индексную страницу после генерации
    index yes
  • # Перезаписывать ранее сгенерированных отчеты
    overwrite_report yes
  • # Десятичный разделитель запятая. При no - точка
    use_comma yes
  • # Сортировка индекса отчётов: нисходящий (D[escending]), т.е обратный
    index_sort_order D
  • # Типы отчетов
    report_type topusers users_sites
  • # подробные адреса посещаемых ресурсов
    long_url yes
  • # Кодировка
    charset UTF-8
  • # Указываем выводить округленные отображаемые данные#
    displayed_values abbreviation

Теперь настроим публикацию отчетов через nginx.

Создадим в папке /etc/nginx/sites-available файл конфигурации для sarg, назовем его sarg и добавим в него следующее содержимое:

server {
  #порт для сайта
  listen      *:80;
  server_name sarg.local;
  # Кодировка
  charset 	utf-8;
  # Корень папки с обработанными логами и стартовый файл
  root        /var/www/html/sarg;
  index   	index.html;
  # Смотреть статистику можно только из локальной сети
  location  /  {
    allow   10.0.0.0/8;
    deny    all;
  }
}

Теперь создадим символическую ссылку на нашу новую конфигурацию - это примерный аналог ярлыка в Windows, удалим конфигурацию по-умолчанию и перезапустим nginx.

ln /etc/nginx/sites-available/sarg /etc/nginx/sites-enabled/sarg rm /etc/nginx/sites-available/default systemctl restart nginx

Проверить что все работает можно набрав в браузере http://<имя_или_ip_сервера> . Например http://10.0.0.2

На этом настройка SARG окончена. В нашей базе знаний вы найдёте ещё множество статей посвящённых различным аспектам работы в Linux, а если вы ищете надежный виртуальный сервер под управлением Linux, обратите внимания на нашу услугу — Аренда виртуального сервера на базе Linux.


Последнее обновление: 21.04.2022