Найти - Пользователи
Полная версия: Софт для учета доступа пользователей к Squid
Начало » Python проекты » Софт для учета доступа пользователей к Squid
1 2
k0sh
Есть идея переписать SAMS на Django. Основная цель - получение опыта в написании django приложений. Ну и в построении собственного велосипеда с блэкджеком и сами знаете чем :) . Есть желающие присоединиться? Приглашаются все в независимости от уровня знаний. Буду рад любому содействию.
hop
готов присоедениться к реализации проекта…
k0sh
hop отлично! Задача нашего минимального проекта ограничить и вести учёт трафика с заданных ip. Проект состоит из трёх компонент:

1. Web интерфейс. Состоит из двух частей: администраторская - добавление/изменение/удаление пользователей в базу данных, пользовательская - просмотр текущего лимита трафика
2. База данных. Тут надо выбрать: mysql, sqlite, … Таблица squidusers с полями: ip, name, size.
3. Демон (сервис) парсер логов Squid, должен записывать трафик пользователя в базу данных, если превышен лимит записать в конфиг Squid'a правило на запрет доступа к прокси с этого ip.

Есть какие-нибудь замечания, дополнения, мысли?
helm2004
Могу помочь с Аяксом
ZZZ
У меня не слишком много времени, но готов взять на себя базу данных и всё, что с ней связанно.
k0sh
helm2004 c аяксом пока не понятно где его использовать… В админке чтоб не перегружать страницу при добавлении пользователя?

ZZZ Чисто теоретический вопрос не требующий много времени :) , достаточно ли для такого проекта sqlite или все-таки лучше использовать серверные БД - mysql, postgresql ?
ZZZ
k0sh
c аяксом пока не понятно где его использовать… В админке чтоб не перегружать страницу при добавлении пользователя?
Да. И это удобно.
Но нужно ли оно в начале разработки?

k0sh
достаточно ли для такого проекта sqlite или все-таки лучше использовать серверные БД - mysql, postgresql ?
Зависит от нагруженности системы. Если у нас целевая система, это небольшой офис, то sqlite хватит за глаза, а если у нас сеть на тысячу машин, то лучше большую часть логики БД положить на PL/SQL (Постгри, Оракл).

Начать стоит с того, чтобы составить вменяемое ТЗ.
Составление ТЗ начать с выбора целевой заинтересованной аудитории.
Ну а выбор инструментов нужно производить после создания ТЗ.

Если пытаться объять необъятное, то можно подумать об универсальном интерфейсе БД, чтобы было всё равно, какую RDBMS мы используем, главное подключить нужный модуль. Собственно в джанге почти так и сделано.
Тогда вопрос смещается в сторону адекватности использования стандартного джанговского ORM. Этот вопрос напрямую зависит от оценки требуемой производительности (возможной максимальной загруженности).

Ну и понаписал… Блин.
k0sh, ты подумай о том, что именно ты хочешь написать и изложи нам свои мысли. Мы их обсудим и выберем подходящее решение о том, что именно использовать.
hint: Полазай по сайту SAMS – там ты найдёшь часть мыслей для обдумывания.
hop
ZZZ, может ты возьмешся за написание ТЗ? у тебя вроде как есть опыт работы в команде и ты знаеш с чего следует начать.
Этот проект мне как диплом вполне сойдет, только давайте , а то время поджимает.
Я впринцепе могу хостинг предоставить, Squid, SAMS, Django, Apache, Mysql/PostgreSQL, вообщем все что надо будет.
k0sh
ZZZ ТЗ я составлять не буду :) Для меня этот проект just for fun. В общем то я уже все свои мысли высказал. Замахиваться на 1000 машин в сети сейчас не стоит, поэтому остановимся sqlite (если hop нужен mysql, я думаю этот вопрос легко решается). Какими я вижу первые шаги:

1. Сделать проект общедоступным. Этот шаг я уже выполнил: http://github.com/k0sh/werber (если кого то коробит название, не вопрос, предлагайте свои вариант поменяем)
2. Django web интерфейс для управления пользователями. Тоже вроде как сделал, но требует проверки.
3. Разработка демона. Нужно научиться парсить лог Squid'a и заносить результаты в базу.
4. Написать небольшой howto по запуску нашего приложения.
hop
могу взятся за парсилку лога сквида
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB