doc.3dn.ru
Четверг, 28.03.2024, 21:57
Приветствую Вас Гость | RSS
 
Главная Каталог статейРегистрацияВход
Меню сайта
Категории каталога
LINUX (Server`s) [16]
Windows (Server`s) [3]
Наш опрос
Нужны ли на сайте видео уроки по Flash?
Всего ответов: 489


Главная » Статьи » Сервера » LINUX (Server`s)

LightSquid: Анализ трафика прокси-сервера Squid

LightSquid: Анализ трафика прокси-сервера Squid

Для доступа в интернет многие организации используют прокси сервер Squid. В этих случаях практически всегда squid установлен в операционной системе Linux (FreeBSD). И в большинстве случаев необходимо, хотя бы для примерного контроля ситуации, знать, кто, куда и сколько J. Описываемая утилита для сбора и анализа трафика прокси-сервера Squid проста в установке, настройке и использовании. Это LightSquid.

LightSquid

Дом. страница: http://lightsquid.sourceforge.net/

Для установки требуются:

  • Perl
  • http server (Apache, lighthttpd, etc)
  • Squid
  • Cron

Perl установлен в большинстве систем и так (значит, скорее всего, ставить вам его не придется).

Squid уже установлен (а как же иначе!)

Cron тоже есть в любой unix-like системе.

Итак, необходим только http-сервер, наиболее популярным из которых, является Apache.


Установка Apache

   apt-get install apache2

Установка LightSquid

Офиц. страница руководства: http://lightsquid.sourceforge.net/Installs.html

Скачиваем последнюю версию дистрибутива LightSquid.
(Все команды выполняем из под root)
Распаковываем дистрибутив в каталог web-сервера


   tar -xzf lightsquid.tgz

Переходим в каталог lightsquid
 cd /var/www/html/lightsquid

Делаем исполняемыми сценарии языка perl в директории с распакованным дистрибутивом.

chmod +x *.cgi
chmod +x *.pl

Меняем владельца файлов на то имя, от имени которого запускается Apache.

  chown -R www-data:www-data *

Теперь нам надо добавить в файл конфигурации (/etc/apache2/sites-available/default) веб сервера Apache эти строки. Разрешаем выполнять скрипты на нашем локальном сайте

<Directory "/var/www/html/lightsquid">
            AddHandler cgi-script .cgi
            AllowOverride All
        </Directory>


Рестартуем Apache для учета наших изменений

   /etc/init.d/apache2 restart

Теперь нам необходимо проверить правильность нашей установки:

# ./check-setup.pl
LightSquid Config Checker, (c) 2005 Sergey Erokhin GNU GPL

LogPath   : /var/log/squid
reportpath: /var/www/html/lightsquid/report
Lang      : /var/www/html/lightsquid/lang/ru
Template  : /var/www/html/lightsquid/tpl/base
Ip2Name   : /var/www/html/lightsquid/ip2name/ip2name.simple

all check passed, now try access to cgi part in browser


Если у Вас тот же результат, следовательно Вы сдали всё правильно.

Для получения статистики необходимо выполнить ./lightparser.pl который сформирует отчеты в .../lightsquid/report/ каталог, после чего зайдя браузером по адресу, где у вас расположен lightsquid, (в моем случае такой адрес) http://IP/html/lightsquid/ можно лицезреть созданные отчеты. 

Для автоматического формирования отчетов, можно прописать запуск lightparser скрипта в crontab, пример запускает импорт лог-файлов каждые 55 минут:

# crontab -e
*/55 * * * * /var/www/html/lightsquid/lightparser.pl

Если лог-файл не большой, и сервер довольно шустрый, можете уменьшить интервал импорта логов.

Внимание! Не устанавливайте интервал менее 10 мин

Вот и все!



lightsquid.cfg :

# -------------------- Глобальные переменные  ---------------------------

#путь к `cfg` файлам
$cfgpath             ="/var/www/html/lightsquid";
#путь `tpl` папке - шаблонам
$tplpath             ="
/var/www/html/lightsquid/tpl";
#путь к `lang` папке - языки
$langpath            ="
var/www/html/lightsquid/lang";
#путь к `report` папке - отчеты
$reportpath          ="
/var/www/html/lightsquid/report";
#путь к access.log  - где логи squid, oops ...
$logpath             ="/var/log/squid/";
#путь к `ip2name` папке - преобразование ip в имена
$ip2namepath         ="
/var/www/html/lightsquid";

#путь к `lockfile` ;-)
$lockpath            =$reportpath;

# если lockfile старше  $maxlocktime секунд, удалить старый lock file.
$maxlocktime         30*60;

# -------------------- LightParser переменные  ---------------------------
#lightsquid поддерживает 2 типа логов : родной и httpd
#если родной squid-кий формат - должно быть 0
#если EmulateHttpdLog ON - выставте 1
#
$squidlogtype        0;

#если вы хотите не учитывать статистику с некоторых сайтов  - измените переменную
#Предупреждение !!!, не оставляйте эту переменную пустой !!!
#example, if you want skip LOCAL site, put it here
#$skipurl             = "zdd.com|192\.168\.1\.|cnn.com";
$skipurl             "zzz\.zzz";

#Использование ip2name - для преобразования ip в имена

$ip2name="simple";

#используется если нада конвертить text в число  - при EmualteHttpdLog
%month2dec = ( Jan => 1Feb => 2Mar => 3Apr => 4May => 5,Jun => 6,
               
Jul => 7Aug => 8Sep => 9Oct => 10Nov => 11,Dec => 12);

# -------------------- Общие (Парсер & Веб) переменные  ----------------------
$timereport          1;

# -------------------- Веб переменные---------------------------------------

# язык (lдоступные: bg,eng,fr,hu,it,pt_br,ru,sp)
$lang                ="ru";

#имя html шаблонов
#смотри `tpl/$templatename/`
$templatename        ="base";
#$templatename        ="ric";
#$templatename        ="base.css";

#определенные типы вывода чисел
#fine  123456789 -> 123,456,789
#class 123456789 ->       117.7 G
$DecOutType="class";

# = " " -> 12 345 678
# = "," -> 12,345,678
# = ""  ->   12345678
$decdelimiter        " ";

#если надо Group режим установите =1
$showgrouplink         1;

#если не 0 - выглядит так "01. Group1", если 0 - "Group1"
$showgroupid         1;

$showoversizelink    1;


#использование .realname файлов. См Дальше
$userealname         1;

#большие файлы  - с 500Мб
$bigfilelimit        500*1024*1024;

#лимит для пользователей - 1000Мб
$perusertrafficlimit 1000*1024*1024;

# недельный режим отображения
# both - select sunday & monday
# monday - only monday
$weekendmode="both";

#как много сайтов показывать TopSites отчете
$topsiteslimit       500;

#как много сайтов показывать в user time отчете
$usertimelimit       500;

 
#если вам надо графический отчет установите =  1
#WARNING !!!, нужна, GD.PM , ту которую мы отметили перед сборкой!!!
#запустите check-setup.pl для определения библиотеки !!!!
$graphreport         1;

#максимальное значение на графике
# для пользователя за месяц (0.05*(...) = 50mb)
$graphmaxuser=2*(1024*1024*1024);
#для всех пользователей за месяц (1.05*(...) = 1 Gb)
$graphmaxall =2*(1024*1024*1024);

# темы для графиков, доступные :"orange","blue","green","yellow","brown","red"
$barcolor="blue";

Обьединить пользователей в группы и смотреть отчёты по группе

# ee /var/www/html/lightsquid/group.cfg 
192.168.0.63 01 gx-grp
192.168.0.197 02 nata-grp
192.168.0.195 01 gx-grp

после изменений перепарсите :

# /var/www/html/lightsquid/lightparser.pl 
# cd
/var/www/html/lightsquid/ && ./check-setup.pl

Категория: LINUX (Server`s) | Добавил: doc (06.04.2009) | Автор: doc
Просмотров: 16035 | Рейтинг: 0.0/0 |

Всего комментариев: 0

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Поиск
Друзья сайта
www.work-zilla.com
Статистика
Онлайн всего: 1
Гостей: 1
Пользователей: 0


Copyright MyCorp © 2024
Бесплатный хостинг uCoz