Лимит трафика для SQUID'а

На доскональное знание данной темы, не может претендовать, пожалуй ни один спец, из ныне живущих на земле. ;-)
Так поможем друг другу.

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
Аватара пользователя
TOPтыгин
Advanced member
Сообщения: 102
Зарегистрирован: 21 янв 2004, 10:29
Откуда: Барнаул
Контактная информация:

Лимит трафика для SQUID'а

Сообщение TOPтыгин » 12 июн 2004, 21:26

Люди добрые подскажите мне как мне сделать ограничение на объем трафика для пользователей squid. Система такая : Squid 3.0 авторизует пользователей через wb_auth. Sarg считает и выдает. В принципе меня все устраевало, но появился пользователь который не понимает что нельзя выкачивать по 70-80 мегов за 20 минут работы в инете. Мне надо тиаких &(^&^$%&^ отключать ! В ручную можно конечно но иногда бывает поздно ... Я попробовал все уже что написано на opennet в разделе анализаторы сквида. ПОМОГИТЕ !!!

K0VEX
Junior member
Сообщения: 7
Зарегистрирован: 05 июн 2004, 00:22
Откуда: SPb
Контактная информация:

Сообщение K0VEX » 13 июн 2004, 12:15

в сарге есть опция для отлупа юзера по превышении лимита трафика,
а ещё есть режик (rejik.ru) - можно заставить непонятливых видеть в эксплорере только текст - никакой графики, - тариф эконом ! :wink:

Аватара пользователя
TOPтыгин
Advanced member
Сообщения: 102
Зарегистрирован: 21 янв 2004, 10:29
Откуда: Барнаул
Контактная информация:

Сообщение TOPтыгин » 14 июн 2004, 12:42

единственное что умеет сарг это писать имя пользователя в файлик и то каак-то странно ... а насчет реджика чичас поглядю ... но енто ж редиректор ...

Аватара пользователя
exLH
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 5061
Зарегистрирован: 11 фев 2004, 15:49
Откуда: Москва
Контактная информация:

Сообщение exLH » 14 июн 2004, 22:44

Вот что нашлось в squid-users:
-------------------
> I would like to know if either SQUID or a 3rd party program can run a
> quota system for squid. What I need to do is limit all the users using
> squid to brows. Let say I have 50 users on a network, and I want to limit
> the users only to have a 100 MB limit every month. Once they reach their
> limit, they should be blocked or what ever.

Squid does not have this capability, but it can be done fairly easily with a
2-part system. One part tails the access.log and updates some sort of
database; the second part is an external_acl helper that checks this
database and allows/rejects requests as needed.

This has been discussed before; check the archives for more info.
-------------------
Соответственно придется либо самим helper писать (анализаторов логов благо хватает), либо искать готовый...

K0VEX
Junior member
Сообщения: 7
Зарегистрирован: 05 июн 2004, 00:22
Откуда: SPb
Контактная информация:

Сообщение K0VEX » 15 июн 2004, 01:12

режик я имел ввиду приаттачить к сквиду для того чтобы ограничить именно "избранных"(и не только) юзеров на предмет использования траффика только необходимого для работы! -
и если не ощибаюсь, в сквиде можно сделать несколько спулов,
и через них ограничивать скорость канала...
т.е за 20 мин он 80 метров не сможет скачать...
я так думаю, что если этого ему (юзеру) не понять,
так недолго и до того что ему не только www надо будет резать,
но и почту, а потом защищать от спама и вирей

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

а в сарге строка есть про отруб юзеров... :))

Аватара пользователя
TOPтыгин
Advanced member
Сообщения: 102
Зарегистрирован: 21 янв 2004, 10:29
Откуда: Барнаул
Контактная информация:

Сообщение TOPтыгин » 15 июн 2004, 07:30

Строка то есть но вот только не понятно куда и что он пишет :) Блин вроде простая задача в инете куча решений но все заточенны только под конретный случай ... то схема авторизации только NSCA То еще что-нить ... скорее всего придется писать хелпер :roll: хотя озвереть проще ...

K0VEX
Junior member
Сообщения: 7
Зарегистрирован: 05 июн 2004, 00:22
Откуда: SPb
Контактная информация:

Сообщение K0VEX » 25 июн 2004, 15:31

если ещё актуально...

http://www.opennet.ru/prog/sml/100.shtml

Alee
Junior member
Сообщения: 4
Зарегистрирован: 25 июн 2004, 15:58

Сообщение Alee » 25 июн 2004, 16:33

Если до этого всё устраивало и раздражают 70М за 20 мин. - попробуй delay_pools. Требует перекомпилляции.

Пример
delay_pools 3 (у меня их 3)
delay_class 1 2 (2-класс для 1-го пула)
delay_access 1 allow acl_имя (кому идти через эту радость)
delay_access 1 deny all (остальным не идти)
delay_parameters 1 16000/16000 3000/3000 (собственно параметры наполнения и раздачи пула)
............
Подробнее про классы и параметры см. squid.conf

Также можно скомбинировать с
reply_body_max_size 500000 allow acl_имя
тогда пользователь с таким acl не сможет скачать объект более 500к.
Или просто использовать эту фишку без delay_pools.

K0VEX
Junior member
Сообщения: 7
Зарегистрирован: 05 июн 2004, 00:22
Откуда: SPb
Контактная информация:

Сообщение K0VEX » 01 июл 2004, 13:42

опять... если ещё актуально...
буду пробовать...

http://sourceforge.net/projects/tfcontrol

> Traffic Control Scripts 0.05
>
> by Kirill Panuzin
>
>Данный набор скриптов был создан для автоматизации контроля >расхода трафика пользователями.
>
>Кому нужен Trafic Control этот набор скриптов нужен системным >администраторам работающих в
>организациях где требуется хорошая автоматическая программа >статистики и управления
>доступом в интернет.

Slava_K
Junior member
Сообщения: 12
Зарегистрирован: 03 авг 2004, 15:17
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Slava_K » 03 авг 2004, 15:45

Могу поделится своим решением (писал кое что сам, так как было огромное желание разобраться, итог - работает уже полгода):
squid - прокси сервер.
samba - контроллер домена + файловый сервер (в принципе, под Windows существуют ntlm и прочие helpers).
rejik - блокирует рекламу и прочее + блокирует тех, кто превысил лимит (как по пользователю, так и по IP) с подробным объяснением причин и ссылкой на отчет по трафику.
sacc - парсер логов в базу mysql и php-скрипты для типовых отчетов.

Мною написан только модуль external_acl_type (на C), который принимает на вход IP адрес клиента. На выходе всегда: "OK имя_пользователя". Имя пользователя определяется исходя из того, под каким именем с этого IP пользователь вошел в домен.

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

Сбор статистики висит как демон и если превышен лимит, записывает имя пользователя в файл (для rejik) и делает SIGHUP.

В принципе, несмотря на громоздкость описания, система довольно простая и легко модернизируется. Работает в realtime.


Так же считаю полезным изучить и использовать опции delay pools.

В локальной сети, особенно если много Виндовских клиентов удобно использовать wpad в связке файлом .pac (web proxy auto detection и proxy auto configuration).

Ответить

Вернуться в «Серверы - ПО, Unix подобные системы»