<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://miac.volmed.org.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Linjan</id>
	<title>Wiki МИАЦ ВО - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://miac.volmed.org.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Linjan"/>
	<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Linjan"/>
	<updated>2026-05-17T14:34:26Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://miac.volmed.org.ru/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B_%D0%BE%D1%82%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8_free-sa&amp;diff=2614</id>
		<title>Настройка программы отображения статистики free-sa</title>
		<link rel="alternate" type="text/html" href="https://miac.volmed.org.ru/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B_%D0%BE%D1%82%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8_free-sa&amp;diff=2614"/>
		<updated>2010-09-19T19:26:40Z</updated>

		<summary type="html">&lt;p&gt;Linjan: исправление орфографии&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Описание==&lt;br /&gt;
Представлены первые релизы нового проекта Free-SA, занимающегося разработкой программы, которая является хорошей заменой устаревшего SARG. Версия Free-SA, использованная для написания данной статьи: &#039;&#039;&#039;1.6.2&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
Из особенностей Free-SA автор выделяет:&lt;br /&gt;
* более внятная архитектура и код (C/HTML/CSS);&lt;br /&gt;
* скорость формирования отчетов в 7-20 раз выше по сравнению с SARG (7х — для файла access.log объемом в 50 Мб, 20x — для 1 Гб);&lt;br /&gt;
* все отчеты успешно проходят проверку W3C HTML/CSS validator;&lt;br /&gt;
* потенциальная поддержка различных форматов файлов журналов (сейчас только Squid, CLF, Postfix, QMail, CommuniGate Pro);&lt;br /&gt;
* дополнительные отчеты (в т.ч. для оценки эффективности сервера);&lt;br /&gt;
* изменяемые «на-лету» темы оформления (сейчас 5).&lt;br /&gt;
&#039;&#039;&#039;Цели Free-SA&#039;&#039;&#039;:&lt;br /&gt;
* контроль расхода трафика по пользователям;&lt;br /&gt;
* контроль выполнения политик безопасности (в части доступа к ресурсам сети Internet) и информационная поддержка при служебных расследованиях некоторых инцидентов;&lt;br /&gt;
* оценка эффективности работы серверов.&amp;lt;br/&amp;gt;&lt;br /&gt;
Сайт программы находится [http://free-sa.sourceforge.net/ | тут]&lt;br /&gt;
&lt;br /&gt;
==Установка программы==&lt;br /&gt;
Итак идем на [http://free-sa.sourceforge.net/ | сайт программы], потом на &#039;&#039;&#039;download&#039;&#039;&#039; и выкачиваем последний релиз программы&amp;lt;br/&amp;gt;&lt;br /&gt;
Допустим, что это файл &#039;&#039;&#039;free-sa-1.6.2.tar.gz&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;# cp free-sa-1.6.2.tar.gz /usr/local/src&lt;br /&gt;
# cd /usr/local/src&lt;br /&gt;
# tar -zfx free-sa-1.6.2.tar.gz&lt;br /&gt;
# cd free-sa-1.6.2&amp;lt;/pre&amp;gt;&lt;br /&gt;
Теперь редактируем файл &#039;&#039;&#039;global.mk&#039;&#039;&#039;. В нем нужно установить  Вашу операционную систему, а в файле конфигурации Вашей операционной системы в каталоге &#039;&#039;&#039;/usr/local/src.free-sa-1.6.2/configs/OS.mk&#039;&#039;&#039; - те параметры, которые нужны Вам.&amp;lt;br&amp;gt;&lt;br /&gt;
Я, например, использовал файл redhat-native-gcc4.mk и поменял в нем путь к директории &#039;&#039;&#039;free-sa&#039;&#039;&#039; для Web интерфейса, обычно:&lt;br /&gt;
&amp;lt;pre&amp;gt; WWWDIR = /var/www/html/$(PROGLNAME)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Находим и исправляем путь по команды sort.&lt;br /&gt;
&amp;lt;pre&amp;gt;# Sort utility&lt;br /&gt;
SORT = /bin/sort&amp;lt;/pre&amp;gt;&lt;br /&gt;
Далее компилируем и устанавливаем free-sa:&lt;br /&gt;
&amp;lt;pre&amp;gt;#make install&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Настройка программы==&lt;br /&gt;
Все файлы настройки, в зависимости от OC,  лежат в директории, установленной в переменной &#039;&#039;&#039;$ETCDIR&#039;&#039;&#039; файла  &#039;&#039;&#039;/usr/local/etc/free-sa/configs/OC.mk&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
В моем случае это /etc/free-sa/. Поэтому дальше буду рассматривать только его.&lt;br /&gt;
:1. Копируем файл &#039;&#039;&#039;free-sa.conf.sample&#039;&#039;&#039; в &#039;&#039;&#039;free-sa.conf&#039;&#039;&#039; и редактируем его.&amp;lt;br /&amp;gt;&lt;br /&gt;
:2. Проверяем настройку следующих переменных:&lt;br /&gt;
* log - полный путь к анализируемому журналу сервера, в примере ниже к журналу squid-а:&lt;br /&gt;
&amp;lt;pre&amp;gt;log=&amp;quot;/var/log/squid/access.log&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* usertab - полный путь к файлу преобразования имен, в примере ниже он размещен в директории с конфигурационными файлами free-sa:&lt;br /&gt;
&amp;lt;pre&amp;gt;usertab=&amp;quot;/usr/local/etc/free-sa/users&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* targetdir - корневая директория для размещения отчетов (ранее, на этапе сборки программы, она была определена как WWWDIR), изменять стоит если вы ее хотите переопределить:&lt;br /&gt;
&amp;lt;pre&amp;gt;targetdir=&amp;quot;/var/www/html/free-sa&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
:3. Создаем и редактируем файл преобразования имен &#039;&#039;&#039;/usr/local/etc/free-sa/users&#039;&#039;&#039;. Пример такого файла:&lt;br /&gt;
&amp;lt;pre&amp;gt;172.16.140.10 Копылова Елена Александровна&lt;br /&gt;
172.16.140.11 Трофимова Людмила Николаевна&amp;lt;/pre&amp;gt;&lt;br /&gt;
IP адреса и имена должны разделяться пробелом. В случае использования аутентификации в squid можно использовать имена пользователей.&lt;br /&gt;
:4. Я установил дополнительно еще следующие параметры&lt;br /&gt;
{| border=1&lt;br /&gt;
 | dld=&amp;quot;true&amp;quot;&lt;br /&gt;
 | Включить отчет о загрузках файлов&lt;br /&gt;
 |-&lt;br /&gt;
 | dld_min=512000&lt;br /&gt;
 | для исключения ссылок меньших по размеру, чем указанное в этой опции значение. Влияет на индикаторы (и&lt;br /&gt;
соответственно на отчет &amp;quot;Закачки&amp;quot; (downloads)). В данном случае 512Кб&lt;br /&gt;
 |-&lt;br /&gt;
 | ts_limit=30&lt;br /&gt;
 |для ограничения количества сайтов в отчете &amp;quot;Популярные сайты&amp;quot; (top sites).&lt;br /&gt;
 |-&lt;br /&gt;
 | overwrite=&amp;quot;1&amp;quot;&lt;br /&gt;
 | Для перезаписи отчетов совпадающие по своему периоду, например, с точностью в 1 день (У меня таким образом каждые пол часа считается статистика и при этом на 1 день всегда один отчет)&lt;br /&gt;
 |-&lt;br /&gt;
 | rotate=&amp;quot;month&amp;quot;&lt;br /&gt;
 | Стирать всю статистику старше 1 месяца&lt;br /&gt;
 |-&lt;br /&gt;
 | divisor=&amp;quot;M&amp;quot;&lt;br /&gt;
 | Отображать статистику в Мб&lt;br /&gt;
 |}&lt;br /&gt;
Остальные параметры файла конфигурации можно посмотреть в &#039;&#039;&#039;man free-sa.conf&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Проверка работы==&lt;br /&gt;
Из консоли запускаем&lt;br /&gt;
&amp;lt;pre&amp;gt;free-sa -d 26.06.2007-27.06.2007&amp;lt;/pre&amp;gt;&lt;br /&gt;
Где 26.06.2007-27.06.2007 - это диапазон за который надо собрать статистику&amp;lt;br /&amp;gt;&lt;br /&gt;
Остальные параметры командной строки можно посмотреть в &#039;&#039;&#039;man free-sa&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
И если нет никаких ошибок, то в директории &#039;&#039;&#039;/var/www/html/free-sa&#039;&#039;&#039; должен появиться каталог &#039;&#039;&#039;26.06.2007-27.06.2007&#039;&#039;&#039;, и значит программа работает нормально.&lt;br /&gt;
&lt;br /&gt;
==Автоматический запуск из cron==&lt;br /&gt;
Создаем файл &#039;&#039;&#039;/etc/scripts/free-sa_day.sh&#039;&#039;&#039; (Путь может быть любым, в некоторых системах достаточно будет поместить скрипт в директорию /etc/cron.daily &#039;&#039;&#039;(например!)&#039;&#039;&#039; без изменения crontab)&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# Программа создания отчетов по журналам SQUID&lt;br /&gt;
#set -x&lt;br /&gt;
umask 0022&lt;br /&gt;
export LANG=ru_RU.UTF-8&lt;br /&gt;
export LC_ALL=&lt;br /&gt;
free_sa=/usr/bin/free-sa&lt;br /&gt;
date1=`date +%x`&lt;br /&gt;
$free_sa -d $date1-&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Где &#039;&#039;&#039;ru_RU.UTF-8&#039;&#039;&#039; кодировка локали.&amp;lt;br /&amp;gt;&lt;br /&gt;
Данный скрипт обновляет статистику каждые полчаса и удаляет статистику месячной давности.&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавляем строки в &#039;&#039;&#039;/etc/crontab&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;# Статистика SQUID&lt;br /&gt;
29,59  *  *  *  *       root    /etc/scripts/free-sa_day.sh&amp;lt;/pre&amp;gt;&lt;br /&gt;
Далее перезапускаем cron&lt;br /&gt;
&amp;lt;pre&amp;gt;service crond restart&amp;lt;/pre&amp;gt;&lt;br /&gt;
И наслаждаемся статистикой по адресу &#039;&#039;&#039;http://adress_server/free-sa&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Просмотр &amp;quot;	Эффективность сервера&amp;quot;==&lt;br /&gt;
{| border=1&lt;br /&gt;
!Тип трафика||Описание&lt;br /&gt;
|-&lt;br /&gt;
|Обработанный||Это весь трафик.&lt;br /&gt;
|-&lt;br /&gt;
|Запрет на прокси (ACL)||Это трафик заблокированный на прокси (его списками контроля доступа), чаще всего - вырезание баннеров или блокирование запрещенных сайтов или файлов.&lt;br /&gt;
|-&lt;br /&gt;
|Закэшированный||То, что было отдано из кэша и не скачивалось извне (обычно из Internet)&lt;br /&gt;
|-&lt;br /&gt;
|Другой локальный||Запросы аутентификации и запросы, которые прокси обработать не смог (некорректно сформированные, чаще всего червяками)&lt;br /&gt;
|-&lt;br /&gt;
|Актуальный||Из обработанного вычесть все 3 предыдущие (закэшированный, другой локальный и актуальный). Т.е. это тот трафик, который пришел извне (обычно из Internet)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Зависает на команде sort==&lt;br /&gt;
*&#039;&#039;&#039;Проблема&#039;&#039;&#039; После запуска скрипта он зависает, и если с другой консоли посмотреть командой &#039;&#039;&#039;top&#039;&#039;&#039;, то виснет на выполнении программы &#039;&#039;&#039;sort&#039;&#039;&#039;.&lt;br /&gt;
*&#039;&#039;&#039;Решение&#039;&#039;&#039; Можно решить двумя способами &lt;br /&gt;
Проблема рассмотрена в [http://www.opennet.ru/openforum/vsluhforumID3/37681.html#25 форуме]&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Берем и качаем пакет [http://www.slackware.at/data/slackware-12.0/slackware/a/coreutils-6.9-i486-1.tgz slackware coreutils]. Это почти обычный tar.gz, в mc он открывается, нужно взять из него только &#039;&#039;&#039;/bin/sort&#039;&#039;&#039;. Переписываем его в &#039;&#039;&#039;/usr/local/bin&#039;&#039;&#039; и переименовываем в &#039;&#039;&#039;sort.correct&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Далее в файле global.mk исходника fre-sa меняем.&lt;br /&gt;
&amp;lt;pre&amp;gt;SORT = /usr/local/bin/sort.correct&amp;lt;/pre&amp;gt;&lt;br /&gt;
И пересобираем fre-sa&lt;br /&gt;
&amp;lt;pre&amp;gt;# make clean&lt;br /&gt;
# make &lt;br /&gt;
# make install&amp;lt;/pre&amp;gt;&lt;br /&gt;
2. Пересобираем пакет coreutils от Mandriva без &#039;&#039;&#039;coreutils-6.9-new-i18n.patch&#039;&#039;&#039;. Для этого качаем и устанавливаем coreutils-6.9-5mdv2008.0.src.rpm&amp;lt;br /&amp;gt;&lt;br /&gt;
Идем в &#039;&#039;&#039;/usr/src/rpm/SPECS&#039;&#039;&#039; и правим файл &#039;&#039;&#039;coreutils.spec&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Коментируем 36 строку&lt;br /&gt;
&amp;lt;pre&amp;gt;#Patch800: coreutils-6.9-new-i18n.patch&amp;lt;/pre&amp;gt;&lt;br /&gt;
118 строку&lt;br /&gt;
&amp;lt;pre&amp;gt;#%patch800 -p1 -b .i18n&amp;lt;/pre&amp;gt;&lt;br /&gt;
и 149 &lt;br /&gt;
&amp;lt;pre&amp;gt;#chmod a+x tests/sort/sort-mb-tests&amp;lt;/pre&amp;gt;&lt;br /&gt;
И вводим команду для пересборки пакета&lt;br /&gt;
&amp;lt;pre&amp;gt;rpm -bb coreutils.spec&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если попросит, доустанавливаем нужные пакеты, а потом снова пробуем.&amp;lt;br /&amp;gt;&lt;br /&gt;
После нормального завершения сборки идем в &#039;&#039;&#039;/usr/src/rpm/RPMS/i586&#039;&#039;&#039;. Там и будут лежать три файла. Открываем в mc файл  &#039;&#039;&#039;coreutils-6.9-5mdv2008.0.i586.rpm&#039;&#039;&#039;. Идем в папку &#039;&#039;&#039;CONTENTS.cpio/bin&#039;&#039;&#039; и переписываем файл &#039;&#039;&#039;sort&#039;&#039;&#039; в &#039;&#039;&#039;/usr/local/bin/sort.correct&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Далее, как написано в первом пункте&lt;br /&gt;
*Второй способ я бы использовал, только, если первый по каким-то причинам не заработал&lt;/div&gt;</summary>
		<author><name>Linjan</name></author>
	</entry>
</feed>