URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 5071
[ Назад ]

Исходное сообщение
"OpenNews: Установка лимитов на доступ через прокси сервер squid"

Отправлено opennews , 02-Фев-05 14:52 
Дмитрий Кругликов опубликовал статью (http://rejik.ru/830/index.html) об организации блокировки доступа в сеть, при  превышении одного из лимитов, установленного для пользователя.

Совместно с Squid используются следующие интструменты: анализатор лога SARG  и редиректор Rejik (http://rejik.ru/).

URL: http://rejik.ru/830/index.html
Новость: http://www.opennet.me/opennews/art.shtml?num=5013


Содержание

Сообщения в этом обсуждении
"Установка лимитов на доступ через прокси сервер squid"
Отправлено zloi , 02-Фев-05 14:52 
режик хорошо для удаления баннеров, закрытия порносайтов... но чтобы ограничивать доступ в инет по лимиту это имхо извращение...
проще написать скриптик что т типа ниже и полодить его в крон..

#!/usr/bin/perl

open( f_squid,"</var/log/squid/access.log" ) or die( "Cannot open file squidlog" );

%ipbyte=();%iplog=();
$sum=0;

while( $str=readline(f_squid) )
{
    ( $date,$time,$ip,$res,$byte,$method,$url )=split /[,\s]\s*/, $str;
    $sum+=$byte;          #общий http траффик
    $ipbyte{$ip}+=$byte;  #траффик по айпишникам
    $url=~/[^\/]*\/\/[^\/]*/;
    $url=$&;
    $iplog{$ip}{$url}+=$byte; #эта строчка нужна если хотите еще разделять урлы по айпишникам
}
close( f_squid )

foreach $key( keys %ipbyte )
{
    if( $ipbyte{$key}>$limit )
    {
      #сделать что то чтобы запретить доступ
    }
}

скрипт не проверял.. могут быть баги


"Установка лимитов на доступ через прокси сервер squid"
Отправлено darky , 02-Фев-05 16:01 
Насколько я понял два отрицательных момента:
у всех одинаковый лимит и невозможность обработки больших логов.
В моем случае лимиты (правда тоже у всех одинаковые) выдаются на календарный месяц,
к концу месяца лог переваливает за 100М,
пользуемся тем же механизмом - крон плюс акли самого сквида вместо режека автора, и все это периодически чрезвычайно не нужно грузит машину.
Решение хорошее, но в отдельно взятом офисе.
Тут нужно что-то типа squid2mysql, но наш администратор не помню по каким причинам отказался от него.

"Установка лимитов на доступ через прокси сервер squid"
Отправлено zloi , 02-Фев-05 17:23 
можно самому написать ака squid2mysql

у меня скриптик парсит сквидовский лог каждые пять минут, добавляет в базу и потом ротейтит этот лог... быстро и удобно


"Установка лимитов на доступ через прокси сервер squid"
Отправлено darky , 04-Фев-05 14:14 
Быстро и удобно, да.
Но чтобы было еще и поэтично,
нужен малюсенький демон для "приема лога на себя",
и обсчета "на лету", а дальше хоть в базу, хоть куда
и любая реакция на переполнение лимита без задержки
(даже пятиминутной).

"Установка лимитов на доступ через прокси сервер squid"
Отправлено rtzra , 03-Фев-05 09:38 
Squid Traffic Counter
http://stc.nixdev.org/
имхо, гораздо функциональнее

"Установка лимитов на доступ через прокси сервер squid"
Отправлено Nikola , 07-Фев-05 16:13 
Чем функциональнее?
По моему так ничем.

"Люди помогите squid работать не хочет."
Отправлено Demon , 04-Фев-05 05:12 
Говорит
Запускается squid: /etc/init.d/squid: line 162: 13610 Aborted                 $S
QUID $SQUID_OPTS 2>/dev/null

уже все файлы конфигов пересмотрел, не помагает (стоит ASP 9.2 Siberia squid 2 stable4)                                                  


"Установка лимитов на доступ через прокси сервер squid при помощи sarg"
Отправлено BARADA , 01-Июн-06 12:58 
В sarg есть возможность по превышению определённого объёма, писать пользователя в текстовый файл (какой сам скажешь)и предварительно cron должен читать ну примерно раз в 10-30 минут статистику!!! А в сквиде по этому файлу пишется acl. Ну а ночью этот файл cronом очищается.