[sisyphus] подсчет траффика squid

Vladimir Lettiev =?iso-8859-1?q?crux_=CE=C1_syktsu=2Eru?=
Ср Окт 27 09:33:22 MSD 2004


Mike Lykov пишет:
> В сообщении от Вторник 26 Октябрь 2004 22:53 Vladimir Lettiev написал:
>>Я озадачился точно такой же задачей, 
> 
> Я ей тоже озадачен  %)

:) Получается действительно необходимо готовое универсальное решение 
данной задачи.

>>как раз дошёл до необходимости 
>>написания fifo-ридера, а тут готовая реализация. Спасибо.
> 
> У меня пока все только по access.log.

У меня пока тоже, но через aa.patch к сквиду можно в реальном времени 
снимать состояние закачек и появляется возможность прерывать 
пользователя не по факту закачки, а во время неё.

>>* во-первых я думаю надо стремиться сделать такую реализацию демонов,
>>которая не требовала бы привелегий root'а
>>* полностью отказаться от перезагрузки/переконфигурации сервера
> 
> Но вот интересно, как без этого обойтись? У меня стоит squidguard, с помошью 
> которого я регулирую имена пользователей разных категорий.
> Он же делает перенаправление на местный апач, где разным категориям (кончился 
> лимит/нет лимита) показывает разную страницу с обьяснением.
> 
> Но вот переконфигурировать его можно только заставив squid перечитать 
> конфигурацию, squid -k reconfigure (service squid reload).
> 
> Вы знаете, как заставить его перечитать конфигурацию не от рута? Или обойтись 
> без этого вообще? как?

Ответ простой - использовать LDAP. Несложный helper для сквида (пример 
которого был в аттачменте письма от Епифанова Сергея) проверяет 
состояние аккаунта в LDAP и запрещает доступ, когда это необходимо. Сам 
helper работает с привелегиями squid. При появлении изменений в доступе 
пользователей перезапуск сервиса squid не требуется.

Но конечно в этом случае использование squidGuard становится возможным 
только для фильтрации. Перенаправление на страничку по факту исчерпания 
лимита сделать будет нельзя (простым способом). Над решением этой 
проблемы я как раз и работаю, но серьёзной её не считаю, т.к. сам факт 
работы системы на пониженых привилегиях и отсутствие постоянных 
reconfigure даёт значительно бОльший выигрыш.

>>* ввести дополнительно поддержку mysql
> 
> у меня все в berkeley db ;) (не требует установки СУБД каких-то 
> дополнительно ;)

тоже вариант, но он локальный, а система может быть распределёной: 
apache и СУБД на разных хостах. Как на страничках веб-сервера тогда 
писать статистику по трафику?

>>* использовать модуль perl-LDAP, вместо напрягания ldapsearch
> 
> у меня использует Net::LDAP для получения данных из win2000 active directory 
> (имена пользователей)

Это собственно одно и тоже, просто я назвал имя пакета.

>>Когда приведу в порядок свои наработки также выложу где-нить на общий
>>доступ.
> 
> У меня тоже все в состоянии "работает для меня.." ;)

Неплохо бы сделать "работает для всех" Ж)


-- 
С уважением, Владимир Леттиев aka crux <crux на syktsu.ru>



Подробная информация о списке рассылки Sisyphus