SAMS (SQUID Account Management System) документация

О SAMS

Состав SAMS

При инсталляции SAMS будут установлены следующие элементы:
  • WEB интерфейс (путь по-умолчанию /usr/local/share/sams)
  • samsdaemon (путь по-умолчанию /usr/local/bin)
  • sams (путь по-умолчанию /usr/local/bin)
  • samsf (путь по-умолчанию /usr/local/bin)
  • samsredir (путь по-умолчанию /usr/local/bin)

    WEB интерфейс SAMS

    Предназначен для администрирования SAMS

    samsdaemon

    Демон, обеспечивающий совместное функционирование всех частей SAMS.
  • запускает утилиты обработки логов sams или samsf
  • вносит изменения в файл конфигурации SQUID squid.conf
  • перезапускает SQUID
  • очищает счетчики пользователей
    -d - включить вывод отладочной информации samsdaemon реконфигурирование прокси сервера SQUID.

    sams

    Утилита, читающая файл access.log, и заносящая данные о трафике пользователей в базу данных данных. При превышении объема трафика, полученного пользователем, выдается команда на его отключение.
    Запуск утилиты обеспечивает samsdaemon.
    Ключи:
    -c - очистить счетчики трафика пользователей
    -d - включить вывод отладочной информации
    По-умолчанию очистка счетчика трафика пользователей должна происходить первого числа каждого месяца. Если вы хотите очищать счетчики трафика чаще, настройте запуск утилиты sams с ключем -c при помощи cron.

    samsf

    Утилита, замещающая файл access.log fifo файлом (/var/log/squid/!access.log), и заносящая данные о трафике пользователей в базу данных данных. SQUID заносит данные непосредственно в fifo файл, на вход samsf. Данные обрабатываются непрерывно, и при превышении объема трафика, полученного пользователем, выдается команда на его отключение.
    Запуск утилиты обеспечивает samsdaemon.
    Ключи:
    -d - включить вывод отладочной информации. При данном ключе samsf не переходит в режим демона, и отладочная информация выводится в консоль.

    samsredir

    Редиректор SAMS. Запуск samsredir должен быть прописан в файле squid.conf.
    samsredir обеспечивает:
  • запрет доступа пользователей к SQUID
  • запрет доступа пользователей к запрещенным ресурсам
  • перенаправление запросов пользователей к графичиским ресурсам (баннерам, счетчикам и т.п.)
  • ограничение времени доступа пользователей к SQUID
    Если в настройках SAMS стоит использование samsredir, в ACL файлах SQUID доступ разрешен всем пользователям. Запрет доступа пользователей и ограничение времени доступа к SQUID осуществляется редиректором.

    Принцип работы SAMS

    Через web интерфейс происходит настройка всех параметров SAMS:
  • принцип авторизации пользователей в SQUID
  • регистрация пользователей SQUID и настройка их свойств (квота на трафик, запрет доступа и т.п.)
  • настройка запрета доступа пользователей к нежелательным ресурсам интернет
  • просмотр отчетов по посещенным пользователями ресурсам.
  • просмотр журнала событий SAMS
  • выдача команды на реконфигурирование SQUID
  • настройка чтения данных из логов SQUID

    Обработка логов SQUID производится двумя утилитами:

  • sams
  • samsf

    программа sams регулярно вызывается демоном samsdaemon для чтения файла логов SQUID access.log и занесения данных в базу данных MySQL. При превышении пользователем квоты трафика происходит отключение пользователя и выдача команды на реконфигурирование SQUID.

    демон samsf запускается демоном samsdaemon и создает fifo файл access.log, в кторой SQUID пишет свои логи. Если уже существовал текстовый файл access.log, он переносится в файл access.log.{time stamp}. Демон samsf заносит данные о трафике в базу данных MySQL.
    Обработка данных демоном samsf происходит непрерывно, и реакция на превышение пользователем трафика более быстрая, чем утилиты sams. При превышении пользователем квоты трафика происходит отключение пользователя и выдача команды на реконфигурирование SQUID.

    демон samsdaemon постоянно ждет команду на реконфигурирование SQUID. При ее получении от WEB интерфейса sams или программ sams и samsf samsdaemon призводит:

  • создает файлы ACL
  • прописывает ACL в squid.conf
  • реконфигурирует SQUID
    Samsdaemon изменяет squid.conf привязываясь к тегам начала разделов. По-этому все тэги должны быть на месте. При изменении squid.conf удаляются только настройки, внесенные для работы с sams (они содержат в себе строку "_sams_").

    Редиректор samsredir запускается при старте SQUID. На основе информации о пользователях, полученной из базы данных SAMS редиректор производит:

  • разрешает допуск пользователей в интернет
  • запрещает доступ пользователей к запрещенным ресурсам
  • перенаправляет запросы пользователей к графическим файлам (баннерам и т.п.)