Одной из причин использования прокси-сервера является не только фильтрация трафика, а также и сбор разнообразной статистики использования сети Интернет - посещаемость различных интернет-ресурсов, объем скачанной информации, активность того или иного пользователя. Для анализа логов Squid как правило используют дополнительное ПО - анализатор логов. Одним из таких инструментов является SARG - Squid Analysis Report Generator.
Для SARG необходимо подготовить сервер, данная утилита выдает отчеты в формате HTML и для работы с ними потребуется установленный веб-сервер. Если вы не собираетесь использовать роутер в качестве полноценного веб-сервера, то будет вполне достаточно легкого сервера lighttpd:
Переходим к настройке SARG. Изменения вносим в файл /etc/sarg/sarg.conf:
Дальше откроем /etc/logrotate.d/squid, по умолчанию тут только daily:
weekly - задает еженедельную ротацию
monthly - задает ежемесячную ротацию
compress - указывает сжимать архивные логи, обратная опция nocompress.
delaycompress - не сжимать текущий лог до следующей ротации, обычно используется в тех случаях, когда в лог происходит непрерывная запись.
rotate 2 - количество ротаций до удаления файла, в данном случае будут храниться два архива.
missingok - при отсутствии файла журнала указывает продолжить работу без вывода сообщения об ошибке.
nocreate - не создавать новый файл лога.
sharedscripts - используется для секций prerotate и postrotate, данная опция указывает исполнять скрипты из этих секций один раз перед и после ротации всех логов, в противном случае скрипты будут исполнены перед и после ротации каждого лога.
Секция postrotate проверяет, запущен ли squid и запускает ротацию логов самим прокси сервером.
Секция prerotate, добавляется автоматически при установке анализатора логов SARG и в случае если файл /usr/sbin/sarg-reports существует и является исполняемым, запускает его.
Т.к. мы ротацию будем осуществлять исключительно службой logrotate, то поправим конфигурацию squid
Полезные источники:
https://interface31.ru/tech_it/2011/03/sarg-analiziruem-logi-proksi-severa-squid.html
https://oblako.kz/help/linux/nastroika-sagr-analizator-logov-squid
https://jakondo.ru/nastrojka-rotatsii-logov-squid-v-ubuntu-14-04-lts
Для SARG необходимо подготовить сервер, данная утилита выдает отчеты в формате HTML и для работы с ними потребуется установленный веб-сервер. Если вы не собираетесь использовать роутер в качестве полноценного веб-сервера, то будет вполне достаточно легкого сервера lighttpd:
- apt install lighttpd
server.bind = "192.168.0.2"где 192.168.0.2 - внутренний адрес роутера (LAN), также не забудьте раскомментировать эту строку и перезагрузить веб-сервер:
- /etc/init.d/lighttpd restart
- nano /etc/apt/sources.list
- добавим туда эту строчку deb http://ftp.de.debian.org/debian sid main
- apt update
- apt install sarg
Переходим к настройке SARG. Изменения вносим в файл /etc/sarg/sarg.conf:
output_dir /var/www/squid-reportsНастроим систему на получение ежедневных, еженедельных и ежемесячных отчетов. Для этого ткроем файл /etc/sarg/sarg-reports.conf вносим изменения:
charset UTF-8
remove_temp_files yes --Очищать temp после генерации
index yes --Cоздавать ли индексную страницу после генерации
overwrite_report yes ---Перезаписывать ранее сгенерированных отчеты
long_url no ---подробные адреса посещаемых ресурсов
resolve_ip yes ---Преобразовывать ли IP-адреса в DNS-имена
logo_image /squid-reports/images/logo.png ---Свой логотип в отчётах
HTMLOUT=/var/www/squid-reportsОсновные настройки logrotate хранятся в /etc/logrotate.conf, настройки отдельных сервисов (в нашем случае Squid) хранятся в /etc/logrotate.d/squid, и эти настройки имеют приоритет над logrotate.conf. Сама служба вызывается через планировщик cron.
LOGOIMG=/squid-reports/images/logo.png
LOGOLINK="http://$(hostname)/squid-reports/"
Дальше откроем /etc/logrotate.d/squid, по умолчанию тут только daily:
#daily - задает ежедневную ротацию
# Logrotate fragment for squid.
#
/var/log/squid/*.log {
daily
nocompress
delaycompress
rotate 8
missingok
nocreate
sharedscripts
prerotate
test ! -x /usr/sbin/sarg-reports || /usr/sbin/sarg-reports daily
endscript
postrotate
test ! -e /var/run/squid.pid || test ! -x /usr/sbin/squid || /usr/sbin/squid -k rotate
endscript
}
/var/log/squid/*.log {
weekly
nocompress
delaycompress
rotate 5
missingok
nocreate
sharedscripts
prerotate
test ! -x /usr/sbin/sarg-reports || /usr/sbin/sarg-reports weekly
endscript
postrotate
test ! -e /var/run/squid.pid || test ! -x /usr/sbin/squid || /usr/sbin/squid -k rotate
endscript
}
/var/log/squid/*.log {
monthly
nocompress
delaycompress
rotate 7
missingok
nocreate
sharedscripts
prerotate
test ! -x /usr/sbin/sarg-reports || /usr/sbin/sarg-reports monthly
endscript
postrotate
test ! -e /var/run/squid.pid || test ! -x /usr/sbin/squid || /usr/sbin/squid -k rotate
endscript
}
weekly - задает еженедельную ротацию
monthly - задает ежемесячную ротацию
compress - указывает сжимать архивные логи, обратная опция nocompress.
delaycompress - не сжимать текущий лог до следующей ротации, обычно используется в тех случаях, когда в лог происходит непрерывная запись.
rotate 2 - количество ротаций до удаления файла, в данном случае будут храниться два архива.
missingok - при отсутствии файла журнала указывает продолжить работу без вывода сообщения об ошибке.
nocreate - не создавать новый файл лога.
sharedscripts - используется для секций prerotate и postrotate, данная опция указывает исполнять скрипты из этих секций один раз перед и после ротации всех логов, в противном случае скрипты будут исполнены перед и после ротации каждого лога.
Секция postrotate проверяет, запущен ли squid и запускает ротацию логов самим прокси сервером.
Секция prerotate, добавляется автоматически при установке анализатора логов SARG и в случае если файл /usr/sbin/sarg-reports существует и является исполняемым, запускает его.
Т.к. мы ротацию будем осуществлять исключительно службой logrotate, то поправим конфигурацию squid
- nano /etc/squid/squid.conf
- Находим строку logfile_rotate и приводим к виду logfile_rotate 0
- logrotate -d /etc/logrotate.d/squid
Полезные источники:
https://interface31.ru/tech_it/2011/03/sarg-analiziruem-logi-proksi-severa-squid.html
https://oblako.kz/help/linux/nastroika-sagr-analizator-logov-squid
https://jakondo.ru/nastrojka-rotatsii-logov-squid-v-ubuntu-14-04-lts
Комментариев нет:
Отправить комментарий