среда, 26 декабря 2007 г.

Обзор Бесплатных Биллинг систем на Linux

Решил обновить блог 21.03.10
Многое уже поменялось за 2 года. Но с нормальных биллингов всёравно не хватка. Особым лидером вышел Траффпро (бывший Office-Control). Свой выбор я остановил именно на нём, бесплатной версии вполне хватает для управления офисом.
Сам обзор оставлю в не изменённом виде, как достояние истории. Большая часть информации в нём до сих пор актуальна. Приятного чтения :)


Потребовалось на работе установить систему учёта и контроля трафика. Как всегда, я взялся за поиски Бесплатной системы для OC Linux.

Что я для себя хотел найти:
1) Учёт всего и вся (по всем портам)
2) Подробная статистика кто куда и зачем
3) Авторизация юзеров (чтоб ни кто другой, кроме самого юзера не мог накачать трафик)
3) Чтоб юзер мог смотреть сколько он сам скачал
4) Минимум вмешательства В ОСWin юзера.
5) Простота установки и настройки биллинга

Забегая немного вперёд, хочю сказать что я такую систему нашёл, и сейчас она успешно работает на предприятии, и в этом обзоре я буду рассматривать эту сборку.


Товарищь google.com дал мне очень много интересной и полезной информации, но как оказалось нормальных и бесплатных биллинг систем не так уж много.
Все они делятся на 2 типа у каждого есть свои плюсы и минусы:
1) На Iptables -
+ Считают траффик по всем портам и по всем направления. = Точность подсчёта
+ Фиксируют по Ip иногда и по мас адресу.
+ Стабильность работы при больших нагрузках.
+ Хорошая система Тарификации и отключения юзеров
- Не гибкость, учёт только по компьютерам, а не по юзерам
- Нет статистики по посещаемым страницам
- Часто, отсутствует какая либо авторизация по юзерам.

2) На Squid -
+ Подробная статистика о посещаемых сайтах каждого юзера
+ Возможность установить блокировку на определённые сайты и поставить Банерорезку
+ Развитая акаунт система (юзеры могут быть как привязаны к адресу компьютера так и быть полностью свободны, т.е. заходить в интернет под своим логином и паролем с Любого компьютера)
+ Различные способы авторизации (ip, ntlm, ncsa - если не понятно что это, то ниже расскажу что к чему :) )
+ Возможность лимитирования трафика.
- считают трафик Только по 80 порту!
- Из этого следует что контролировать почту, фтп, банклиенты и подобные программы мы не сможем!
- Придётся прописывать Адрес прокси на клиентских машинах для использования авторизации по логину и паролю.


Хочю заметить, что в некоторых биллингах какие-то из минусов отсутствуют, но и там есть свои "тараканы" :)

А теперь рассмотрим самих кандидатов.


Биллинги на iptables:


NeTAMS (Network Traffic Accounting and Monitoring Software)

www.netams.com

Работает под управлением Unix (Linux/FreeBSD/Solaris). Поддерживаются различные методы сбора статистики (tee/divert/ip_queue/ulog/libpcap/netflow v5 и v9/netgraph), хранения в базе данных (BerkleyDB/MySQL/PostgresSQL/Oracle/Radius), агрегирования, отображения, оповещения и пр. Возможно проводить блокировку на базе квот, авторизации, исчерпании баланса (биллинг); управлять полосой пропускания, контролировать подмену MAC-адреса, делать связь с RADIUS, создавать гибкие политики учета и фильтрации. Более подробней о возможностях в этом списке.
Многие админы хвалят, но что они в нём нашли не знаю, может им нравится перелопачивать кучу программного кода, чтоб находить нужные зависимости. Пробовал Его ставить на AltLinux 2.4, Ubuntu, Fedore. Ни на одной системе нормально не завёлся, что-то не хватало в зависимостях, но почитав подробно в мануалах я понял, что даже если он заработает, мне придётся потратить не одну ночь и не одну неделю для доведения его в божеский вид.

Не заработал!

Вывод:
- Только для профи.
- Запутанная документация
- Многое доделывать нужно самому
- ввиде sh, rpm и .deb пакетов не существует





STARGAZER

http://stargazer.dp.ua/


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

Основные возможности системы:

  • контроль над клиентами сети, их добавление, удаление, текущие корректировки
  • авторизация клиента, с последующим разрешением или запретом доступа в Internet
  • подсчет трафика по предварительно заданным направлениям и правилам
  • подсчет израсходованных клиентом средств и автоматическое отключение в случае их полного расходования
  • хранение дополнительной информации о клиенте, такой как домашний адрес, телефон и т.д.
  • автоматический пинг всех клиентов сети и вывод результатов на экран
  • ведение кредитной истории для всех клиентов
  • оперативное предоставление клиенту информации о его трафике и наличии средств
  • формирование подробных отчетов о состоянии клиентов
  • внешние модули
Более подробно на http://stargazer.dp.ua/doc20/about.html

Админы говорят, что это отличный (чуть ли не единсвенный) вариант для тех, кто хочет получить максимальный функционал при минимальных затратах. Основная нацеленность биллинга - для небольших интернет провайдеров.
Очень понравился функционал и возможности биллинга. И Наконец Подробная и Всеобъемлющая инструкция по установке и использованию!!! (к сожалению все бесплатные системы страдают отсутствием именно нормальной документацией, толи разработчикам лень её писать, толи они думают что мы и сами догадаемся как её ставить). Но долго радоваться мне не прошлось.
Ставлю всё на систему Ubuntu.
Сразу во время сборки в самом скрипте сборке (./build) возникли непонятные проблемы. Оказалось что разработчик вместо gmake написал make (позже я узнаю, что это для совместимости с FreeBSD). Ладно с эти справились, но далее пошли проблема за проблемой- невозможность компиляции на определенных пакетах gc++, не запускающийся демон контроля трафика, не работа скриптов onConnect/onDisconnect.
Далее пробую собрать это дело на системе AltLinux 2.4 уже из готового пакета, то там тоже сталкиваюсь с дюжиной проблем.
Где-то через неделю мучений по попыткам заставить его нормально работать я забросил это дело, темболее от форумчан я узнал что этот биллинг иногда теряет информацию из собственной базы и для безопасности его нужно переводить на Mysql, а это ещё дополнительный гемор. Да и попытки разработчика "угодить" как и Linux (всем дистрибутивам сразу!), так и FreeBSD ни к чему хорошему не привело (как говориться, за 2-мя заяцами погонишься, ни одного не поймаешь). Не знаю как на BSD, но на Linux этот биллинг

Не заработал!

Вывод:
+
Хороший сайт с подробным мануалом
+ Простая система управления в GUI (оконной) оболочке
+ Продуманный клиент авторизатор
- Сложность установки связанная желанием угодить и BSD и Linux
- Нет rpm и .deb пакетов сборки (а sh сделан так, что только усложняет установку)





NiTraf

http://nitalaut.sarkor.uz/nitraf-uchyot-trafika-v-linux/


Что может NiTraf ?
На данный момент список возможностей таков:

  • Подсчет трафика за день/с начала месяца/с начала года в разбивке по ip-адресам
  • Возможность получения отчетов за произвольные день/месяц/год в разбивке по ip-адресам
  • Возможность получения отчетов за произвольные день/месяц/год в по конкретному ip-адресу
  • Возможность выставления квот по трафику(отдельно по входящему и исходящему).
    По превышению лимита пользователь отключается от интернета(в iptables добавляется соответствующее правило)
  • Для удобства просмотра отчётов есть возможность присваивать ip-адресам алиасы(псевдонимы), под которыми они будут фигурировать в отчётах
  • По каждому ip-адресу можно просмотреть детальную статистику(в разбивке по портам и протоколам). Список портов можно изменять
  • Более подробно на http://nitalaut.sarkor.uz/nitraf-uchyot-trafika-v-linux/

    Простейший биллинг, всё по мнимому. Заработал на системе Ubuntu. На других не пробовал, так как и на Ubuntu он отлично

    РАБОТАЕТ!

    Вывод:
    + Подробная инструкция по установке на Debian системы http://nitalaut.sarkor.uz/instrukcii/
    + Быстрота развертывания системы
    + Подробная Веб статистика
    + Возможность учёта по различным портам
    - Контроль только по IP (юзер может сменить свой IP и использовать чужой трафик)
    - Нет авторизации по логину и паролю для юзеров
    - Нет rpm и .deb пакетов сборки




    Office-Control

    Теперь уже http://traffpro.ru

    Система "Office-Control" предназначена для управления и защиты сетей офисов. Разрабатывается с учетом потребности в проектах, исключающих утомительную настройку сервера, и позволяет свести к минимуму время на развёртывание и обслуживание системы. Включает в себя несколько компонент, из которых можно построить необходимый комплекс для любых нужд офиса.

    Комплекс позволяет:
    • контролировать доступ к серверу как из сети интернет, так и из внутренней сети
    • предупреждать распространённые атаки на сервер с помощью интеллектуальной системы защиты
    • управлять доступом из внутренней сети во внешнюю, и из внешней во внутреннюю
    • вести логирование всех несанкционированных попыток доступа к серверу и к защищённой внутренней сети
    • рассылать уведомления по email администраторам комплекса в случае попыток взлома системы или в критических ситуациях
    • контролировать потребление трафика пользователями внутренней сети
    • ограничивать доступа пользователей к ресурсам внешней сети по портам и адресам
    Система предоставляет отчёты по потреблению трафика пользователями, содержит в своём составе терминал администратора под две операционные системы Windows и Linux, также имеется модуль Web клиента, который не зависит от платформы. Также предусмотрен индикатор трафика для пользователя сети, позволяющий получать отчёты пользователем без вмешательства администратора.
    Проект сейчас активно развивается и только выходит из стадии бетатестирования. Но уже сейчас я вполне успешно установил эту систему. Да и разработчики активно продолжают развитие проекта. Так например, стоило мне упомянуть, что не помешалоб в биллинге авторизацию через веб интерфейс сделать, как через 2 дня на сайте эже появился этот модуль! Единсвенное с чем могут возникнуть трудности, это документация, пока она сыровата, но её сполна заменяет консультация по ICQ, разработчик не только помог в установке но даже проконсультировал по работе биллинга с Iptables и помог настроить правила безопасности (в дальнейшем они планируют перенести функции управления фаярволла в веб админку, дабы окончательно упростить работу администратора). Посмотрим что у них получиться :)
    И забыл упомянуть, биллинг заточен под Системы RedHat (Fedora, CentOS, RedHat)
    Лично у меня на Fedore 8

    РАБОТАЕТ!


    Вывод:

    + Хорошая поддержка проекта
    + Привязка не только по Ip но и mac!
    + Подробная Веб статистика
    + Авторизация по логину и паролю через Web-интерфейс
    + Есть rpm пакет
    + Стабильная работа с Squid
    - Сыроватость (на время написания статьи веб админка ещё не была готова, приходилось добавлять юзеров через скрипты.)
    - все остальные мелкие минусы, скорее, тоже относятся к сырости чем к закоренелым недостаткам. Буду пристально наблюдать за дальнейшим развитием проекта...





    SUB Billing

    http://www.subbilling.ru/

    О SUB Billing:
    Это система сбора информации о трафике пользователей через ulog-acctd. Обработанные данные записываются в MySQL или PostgreSQL базу. Для управления биллингом используется удобный, простой и понятный веб интерфейс.

    Характеристики:
    +Сбор данных - ulogd
    +Базы хранения - mysql, postgresql
    +Авторизация - freeradius, chap-secrets
    + Скрипты запускаемые cron

    Возможности:
    +Работа через - NAT, PPTPD (VPN)
    +Группы пользователей: каждой группе можно назначить скидку на трафик.
    +Тарифные планы с расчетным периодом, абонентской платой, установкой предоплаченного трафика.
    +Установка зон тарификации.
    +Установка временных зон.
    +Установка праздничных дней.
    +Подробный отчет по платежам, подключениям, трафику в общем, и по разным тарифным зонам.
    +Карты оплаты.
    +Техническая поддержка.
    +Зачисление произвольной суммы на счет.
    +Группы администраторов с разными разрешенными действиями.
    +Детализированный трафик

    В пользовательском веб интерфейсе:
    +Детальная информация об аккаунте
    +Подробный отчет по платежам, подключениям, трафику в общем, и по разным тарифным зонам.
    +Оплата экспресс картой
    +Настройки доверительных адресов, пароля, смена тарифного плана.
    +Отправка запросов в тех. поддержку
    +Новости на главной странице


    Пробовал ставить на Debian, что-то не сошлось в настройках VPN. Долго разбираться не стал, так как для работы с биллингом на каждой клиентской машине нужно создавать VPN подключения, а это не в ходило в мои условия по идеальному биллингу. В основном эту систему использают Gentoo-ники, хотя мануалы идут для Debian. И всё же на Ubuntu

    Не заработал!

    Вывод:
    +
    Хороший сайт, хоть и мануал пришлось поискать (он в архиве с биллингом)
    + По скринам, хорошая веб админка
    + Развивающийся проект
    - Проблемы при установке на стандартный Debian
    - Нет rpm и .deb пакетов сборки




    Биллинги на SQUID:


    Sarg + Wemin

    Собирал эту систему я на Ubuntu
    Инструкция просто до безобрация - Заходим на www.webmin.com и качаем последнию весию Debian Package.
    А потом sudo apt-get install squid sarg (если не получается, то вам сюда forum.ubuntu.ru)
    Далее в webmine находим вкладу Squid (что-то там) report (ах да, ещё немного с squid повозиться придётся, но это не так сложно, т.к. все настройки через webmin сделать можно)
    Данная система у меня успешно работала в паре с NiTraf на Ubuntu 7.4

    РАБОТАЕТ!

    + Легко установить (информации в интернете просто уйма)
    + Можно свободно просмотреть с какого IP какие сайты были просмотрены, сколько было скачано с этих сайтов и таму подобное.
    - Сами юзеры не могут посмотреть статистику только для себя
    - Генерировать отчёты приходиться вручную





    SQUID Account Management System(SAMS)

    http://sams.nixdev.net/
    http://sams.perm.ru/
    Основные возможности:
    • Администрирование системы через web интерфейс
    • Ограничение объема трафика пользователей
    • Автоматическое отключение пользователей, превысивших лимит.
    • Ведение списков запрещенных для доступа пользователей ресурсов интернет.
    • Настройка доступа пользователей через механизм шаблонов.
    • Разбиение пользователей на группы для удобства администрирования системы.
    • Формирование отчетов по трафику пользователей за любой отрезок времени.
    • Поддержка различных видов авторизации SQUID.
    • Поддержка использования редиректоров SQUID.
    • Различные категории пользователей SAMS.
    • Восстановление файлов из кэша SQUID.
    • подробнее о возможностях SAMS...

    Поддерживаемые ОС: GNU/Linux, FreeBSD, OpenBSD, Sun Solaris x86

    Определённо Лидер среди всех биллинговых систем на Squid!
    К сожаления на Ubuntu 7.4 он у меня ни в какую не захотел работать, но за-то отлично Заработал на Fedore 8. Понравилась удобная Веб админка, широкие возможности по распределению прав у пользователей (ограничения по трафику, по пропускной способности, по сайтам).

    РАБОТАЕТ!


    + Подробная инструкция по установке на сайте разработчика
    + Отличная веб админка
    + Широкие возможности по управлению правами пользователей
    + У пользователей есть свой личный кабинет, где они могут посмотреть свою статистику (мб и посещённые страницы)
    + Можно свободно просмотреть с какого IP какие сайты были просмотрены, сколько было скачано с этих сайтов и таму подобное.
    + Продуманная система взаимодействия со Squid-ом
    - Я бы ещё немного доработал дизайн админки
    - Считает трафик только по 80 порту


    Сейчас мой выбор:
    Linux Fedore 8
    Office-Control + SAMS (+ прозрачное проксирование)

    Я объединил 2 типа биллинга для того чтоб получить:

    Office-Control:
    1) Учёт трафика по всем портам
    2) авторизация пользователей через веб интерфейс
    3) управлением прав доступа для юзеров и лимита трафика
    SAMS:
    4) Подробная статистика по посещаемым сайтам как для админа так и для пользователя
    5) экономия трафика за счёт кэширования трафика
    6) Ограничение на посещение определённых сайтов


    В следующей статье я расскажу как всё это собрать, настроить и запустить вместе. Дам примеры рабочих конфигов и свои сборки.


    P.s.
    Для разработчиков и фанатов не заработавших биллингов - На время тестирования у меня не было ни времени, ни знаний. В среднем, я экспериментировал с биллингом в течении 5 дней, если этого было мало, чтоб его запустить, то я брался за другой. Я буду рад если вы укажите причины по которым ваш билинг не запустился или дадите подробную, реально Работающюю, инструкцию по установке! (мои контакты в самом конце)


    P.p.s. (21.10.08)
    Давно не обновлял эту статью, но обращения ко мне в асю по данному вопросу всё ещё приходят. По этому отвечу сразу. Сейчас мой выбор TrffPro.ru (бывший ОфискКонтрол). Там есть всё что нужно, и объединяет возможности сквидовского биллинга (Самс) и табловского.

    © Copyright 2007 Lek (ICQ 355767)