Система предназначена для учета трафика сети Интернет в малых и средних организациях. На данный момент, учитывается только трафик прокси-сервера.

Учет базируется на пользователях, каждый из которых имеет свой персональный лимит. Единица учета трафика - байт. Среди пользователей выбирается один или несколько администраторов, которые выполняют функции управления доступом. Учет ведется автоматически согласно заданным параметрам.

Основные понятия и принципы

Прокси-сервер - сервис, который является посредником между клиентами (приложениями) и ресурсами сети Интернет. В его функции входит обработка запросов, скачивание объектов из сети Интернет, и "отдача" последних обратно клиенту в виде ответа.

Система учета (далее, просто Система) - программный комплекс, имеющий графический web-интерфейс и предназначенный для управления прокси-сервером. Система непрерывно читает основной журнал прокси-сервера, анализируя статистические данные его работы. Результаты анализа используются для учета трафика сети Интернет. Перед обработкой конкретного запроса клиента, прокси-сервер сверяет имеющиеся у него данные с данными Системы, обеспечивая требуемое ограничение доступа.

Суперпользователь сервера - специалист, который занимается обслуживанием сервера. Этот сотрудник имеет прямой доступ к файлам и ресурсам сервера, и может настраивать сервисы непосредственно через редактирование их конфигурационных файлов. В обязанности суперпользователя сервера входит обеспечение работоспособности системы.

Ключ - персональные "логин" и "пароль". Логин является уникальным в пределах системы. Пароль же выбирается произвольно, является конфиденциальным и в некоторых случаях может быть пустым.

Политика учета - общий принцип огранизации доступа, который задается при установке системы. Политика главным образом отражает вид идентификации пользователя системой: как хост сети (IP-адрес), как владельца уникального ключа, либо как совокупность обоих видов. Для конкретных IP-адресов может быть выбран лишь один из двух видов идентификации, и после запуска системы в эксплуатацию политика может быть изменена лишь суперпользователем сервера. Другими словами, с самого начала следует отделить список хостов (подсетей) с авторизацией по ключу (которые предлагают ввод ключа для доступа к сервисам Интернет) от списка хостов (подсетей) с авторизацией по IP-адресу. Авторизация по IP-адресу хоста целесообразна в тех случаях, когда хосты закреплены за сотрудниками и имеют собственные средства защиты от несанкционированного доступа к рабочему пространству (например, блокировка доступа к консоли Windows).

Пользователь - ответственный сотрудник, так или иначе нуждающийся в доступе к сервисам сети Интернет. Каждый пользователь однозначно идентифицируется ключом или IP-адресом, в зависимости от выбранной политики учета. У каждого пользователя есть свой собственный счетчик расхода трафика.

Администратор - пользователь, наделенный особыми полномочиями по управлению системой. В обязанности администратора входит добавление и удаление пользователей, редактирование их учетных данных, наблюдение за статистикой работы пользователей в сети Интернет и тд.

Лимит - максимальный расход трафика. Лимит задается администратором для каждого пользователя индивидуально. Когда счетчик расхода трафика определенного пользователя превышает заданный для него лимит, доступ к сети Интернет автоматически блокируется. Администратор может выборочно снять ограничение расхода трафика для некоторых (или всех) пользователей, однако лимит при этом все же остается (хоть и не действует).

Период - это временной интервал, в течение которого действуют лимиты. При завершении периода, система производит свертку: счетчики расхода для всех пользователей сбрасываются в ноль, после чего начинается новый период. Размер периода задается администратором. На данный момент период может быть: неделя, 2 недели, день, месяц. Во всех случаях, кроме месяца, момент свертки вычисляется от начала текущего периода. В случае месяца, свертка производится 1 числа каждого месяца (или позднее как только это становится возможным, если сервер оказался выключенным в это время). Все работы по периодам производятся системой один раз в сутки.

Статистика в системе ведется по доменным именам серверов (сайтов), отдельно по дням (датам). Администратор может просматривать статистику любого пользователя; пользователь может просматривать только свою статистику. Во время ежедневной работы с периодами, система записывает статистику в архив. Архивы статистики также доступны для просмотра.

Настройки системы

Здесь описаны параметры системы, доступные для редактирования и просмотра администратором. Обыкновенные пользователи не имеют доступа к ним.

Прокси-сервер squid является кэширующим. Это значит, что некоторые объекты ресурсов сети Интернет копируются на диск сервера (кэшируются) во время обработки запросов пользователей по ним. Если прокси-сервер обнаруживает, что запрошенный пользователем объект присутствует в кэше и не изменился на оригинальном ресурсе в сети Интернет, то данный объект "отдается" пользователю из кэша. Таким образом, прокси-сервер иногда "экономит" общий трафик, а система может переносить эту "экономию" на пользователей. Учет сэкономленного трафика по пользователям может быть включен или выключен администратором, что влияет лишь на обновление счетчиков расхода трафика, но не на статистику. Практика показывает, что кэширование обычно не дает ощутимых результатов.

Все без исключения пользователи могут иметь пароль. В зависимости от выбранной политики, пароль защищает разные компоненты системы. С авторизацией по IP-адресу, пароль защищает только доступ пользователя к системе. С авторизацией по ключу, пароль защищает доступ к прокси-серверу и доступ к системе. По выбору администратора система может запрещать пользователям иметь пустые пароли. Данное ограничение распостраняется только на пользователей с авторизацией по ключу. Следует понять, что активация запрета пустых паролей в настройках системы фактически не меняет никаких данных, что может привести к полной блокировке пользователей с пустыми паролями в системе (в этом случае, администратор должен задать для этих пользователей новые пароли). Будьте внимательны! Если все администраторы авторизуются по ключу, и имеют пустые пароли, то при включении запрета пустых паролей в настройках Вы полностью заблокируете возможность управления системой через web-интерфейс! В этом случае снять запрет пустых паролей сможет только суперпользователь сервера.

Анализ работы прокси-сервера системой опирается на дату/время последней обработанной записи из его основного журнала. Это значение указывает на момент, когда прокси-сервер обработал последний запрос пользователей на данный момент времени. Следует поставить в известность суперпользователя сервера, если это значение указывает на явно неправильное время (т.е. Вы уверены, что пользователи работают в Интернете, а это значение не меняется).

Система собирает статистические данные из основного журнала прокси-сервера каждую минуту, что фиксируется в виде даты/времени. Это значение показано как "Время последнего запуска агента прокси-сервера", и в нормальном (рабочем) режиме окрашивается в зеленый цвет. Если система не производила анализ статистических данных более 5 минут, то режим становится аварийным (это значение окрашивается в красный цвет). В аварийном режиме доступ пользователей к прокси-серверу полностью блокируется, и в этом случае следует поставить в известность суперпользователя сервера.

Администратор может задать размер периода по своему выбору. При этом, начало текущего периода показано как "Время последнего сброса счетчиков трафика".

Управление системой (администрирование)

Доступ к управлению имеют только администраторы. Пользователю без привелегий администратора интерфейс управления доступен в упрощенном виде: можно только просмотреть свои учетные данные, и сменить свой пароль. Все без исключения пользователи перечислены в виде списка (таблицы), где каждая строка представляет одного пользователя. Последние две строки списка дают общие (суммарные) для системы значения расхода и лимита трафика. Броузер должен поддерживать запуск java-script сценариев, а иначе возможен лишь просмотр текущих значений.

Ниже перечислены все поля строки по порядку:

  1. В соответствии с политикой учета, пользователь может авторизоваться либо по ключу (), либо по IP-адресу (). Система устанавливает этот признак автоматически во время добавления пользователя в систему администратором. Наличие пользователей с разными признаками примененной политики учета в списке не означает, что система поддерживает обе политики
  2. Каждый пользователь в системе имеет свой уникальный идентификатор (ID), который в зависимости от выбранной политики учета представляет собой либо логин, либо IP-адрес. Этот идентификатор не может быть изменен. Чтобы изменить логин пользователя, администратор должен удалить пользователя из системы, а затем добавить его заново.
  3. Администратор отличается от пользователя привелегиями (правами). Чтобы дать пользователю () привелегии администратора, либо отобрать у администратора () привелегии, сделав его обычным пользователем, следует активировать этот элемент (нажать на это изображение).
  4. Все пароли в системе хранятся в зашифрованном виде. Получить пароль из шифра практически невозможно, но администратор может произвольно задать новый пароль любому пользователю. Для этого следует нажать на изображение ключей:
  5. Описание пользователя предназначено для облегчения управления системой и просмотра статистики. Оно может быть пустым (undefined), однако такая практика не рекомендуется, т.к. ID пользователя зачастую нечитабелен (плохо воспринимаются) человеком. Описание представляет из себя гиперссылку, активация (клик) которой позволяет поменять его.
  6. Лимит пользователя действует в пределах одного периода и отображается в этом поле в мегабайтах. Оно также представляет из себя гиперссылку, что позволяет администратору произвольно менять лимит любого пользователя.
  7. Во время работы пользователя в Интернете через прокси-сервер, система увеличивает счетчик расхода трафика пользователем сообразно его активности. Счетчики расхода сбрасываются (обнуляются) одновременно для всех пользователей во время свертки периода. Если в системе установлен учет запросов из кэша, то счетчики отражают количество информации, переданной от прокси-сервера к приложениям пользователя; если в системе отключен учет запросов из кэша, то счетчики отражают количество информации, полученной прокси-сервером из сети Интернет по запросам пользователя. Счетчик показывает значение расхода трафика пользователем также в мегабайтах.
  8. Прокси-сервер непрерывно (но с небольшими задержками) отслеживает состояние индикаторов доступа пользователей. Когда счетчик расхода трафика пользователем превышает его лимит, система устанавливает индикатор доступа в запрещающее значение (). Затем когда значение лимита пользователя становится большим, чем значение расхода трафика (например, счетчики сбросились во время очередной свертки периода, или администратор повысил лимит этому пользователю, или администратор снял ограничение расхода трафика для этого пользователя), система устанавливает индикатор доступа обратно в разрешающее значение (). Возможные задержки прокси-сервера в процедуре проверки индикаторов доступа может настроить суперпользователь сервера.
  9. Администратор может выборочно снять ограничение расхода трафика пользователем по лимиту, а также опять включить его. Для этого достаточно активировать гиперссылку, значение которой показывает состояние ограничения по пользователю на данный момент. Однако, независимо от того, включено ограничение или нет, счетчик расхода трафика всегда показывает актуальное значение.
  10. Администратор может удалить пользователя () из системы. Эту операцию нельзя отменить.
  11. Чтобы быстро перейти к статистике пользователя за текущие сутки, следует активировать это изображение .
Сразу под таблицей расположены одна или две формы добавления пользователей в систему, в зависимости от выбранной политики учета. При добавлении пользователя можно сразу снять ограничение расхода трафика по лимиту, поставив галочку "игнорировать лимит". Также, при добавлении можно наделить пользователя привелегиями администратора, поставив галочку "администратор". Если пользователь добавляется во время периода, целесообразно также установить некоторое начальное (отличное от нуля) значение счетчика расхода трафика; обычно так бывает, когда лимит должности для нового сотрудника уже известен, но работу он начинает в середине или в конце периода. Поля "Счетчик" и "Лимит" принимают значения в мегабайтах.

Статистика

Прокси-сервер пишет подробнейший журнал своей работы по обслуживанию запросов клиентов. Система собирает только необходимые для обеспечения учета данные: сайты, объем трафика и адрес (логин) клиента. Эти данные аккумулируются системой в течение суток, а во время очередной работы с периодами, записываются в архив. Таким образом, текущая статистика содержит собранные данные за текущие сутки, а архив - все остальное с начала запуска системы в эксплуатацию.

Пользователь может свободно просматривать свою статистику, включая архив. Администратор, кроме своей, может просматривать статистику любого пользователя, включая архив. Статистика представляет из себя список доменных имен (или IP-адресов с портами или без) ресурсов сети Интернет с расходом трафика по каждому. Эти данные хранятся отдельно по каждому пользователю. Значение расхода трафика представлено в десятичном виде в мегабайтах с двумя знаками после запятой. Детально описывать интерфейс нет смысла, так как все органы взаимодействия со статистикой снабжены простыми подписями (ссылки говорят сами за себя).

Что стоит отметить, так это наличие формы перехода в архив. Если эта форма не отображается, значит архив еще не создан (нечего хранить, либо сервер не в состоянии писать в архив). Если Вы уверены, что система работает уже не один день, а архивы так и не доступны, следует поставить в известность суперпользователя сервера. Также следует обратить внимание на абсолютную независимость принципов сбора и предоставления статистики от текущих настроек системы.

Прочее

Когда броузер настраивается на работу через прокси-сервер, то и работа в системе также производится через прокси-сервер. Это сводит к нулю авторизацию в системе по IP-адресу (но доступ в Интернет работает отлично). Также при этом наблюдается весьма нежелательный эффект, когда система учитывает трафик работы пользователя с ее же графическим web-интерфейсом. Плюс ко всему этому, при блокировке доступа пользователя к прокси-серверу, web-интерфейс системы также естественно блокируется. Чтобы избежать всех вышеописанных проблем, следует настроить в броузере исключение адреса системы (для Internet Explorer это пункты меню "Пуск" - "Настройка" - "Панель управления" - "Свойства обозревателя" - вкладка "Подключения" - кнопка "Настройка сети" - кнопка "Дополнительно" - поле "Исключения").