Установка та базове налаштування stargazer

Білінг популярний, завдяки простій установки і настройки. А також великим плюсом білінгу є його відкритість і безкоштовність.

Під обліковим записом "root" виконаємо всі що тут написано.

# Rpm -i stargazer-2.405.9.8.centos.i386.rpm

Якщо ставите на CentOS 6 x32, встановіть спочатку бібліотеку compat-expat:

# Yum install compat-expat1.i686

Основні конфігураційні файли зберігаються в папці / etc / stargazer

В папці / var / stargazer зберігається база MySQL і логи.

Після установки в папці / etc / stargazer / з'явиться 9 файлів:

Включимо логирование шляхом раскоментірованія рядка п'яти файлів. Після цих маніпуляції будуть писатися логи в папку / var / stargazer /

Видалимо знак "#" де стоїть команда "echo". Тим самим раскоментіровав рядок.

# Cd / etc / stargazer
Відкриємо перший файл OnChange:
# Nano OnChange
У ньому бачимо рядок "#echo"
Приберемо знак "#"
Натискаємо комбінацію клавишь CTRL + O, Enter, а потім CTRL + X

Після чого виходить віконце з ім'ям файлу, де ми натискаємо Enter.

Такі дії повторюємо з іншими файлами:
# Nano OnConnect -> видаляємо знак # -> CTRL + O, Enter, CTRL + X
# Nano OnDisconnect -> видаляємо знак # -> CTRL + O, Enter, CTRL + X
# Nano OnUserAdd -> видаляємо знак # -> CTRL + O, Enter, CTRL + X
# Nano OnUserDel -> видаляємо знак # -> CTRL + O, Enter, CTRL + X

Створимо правила IPTABLES (фаєрвол) в папці / etc / sysconfig

І вставимо всередину наступний текст (правила):

Зберігаємо файл / etc / sysconfig / firewall натиснувши комбінацію CTRL + S

Даємо права на запуск:
# Chmod 750 / etc / sysconfig / firewall

І відразу ж перевіряємо як він працює:
# / Etc / sysconfig / firewall

Після виконання скрипта, помилок не повинно бути.

Дані правила фаєрволла після перезавантаження комп'ютера пропадуть. Вся справа в тому, що їх треба вставити в автозавантаження.

Це робиться в такий спосіб:

Кінець файл rc.local додається рядок з шляхом до наших правил:
/ Etc / sysconfig / firewall

Залишилося дописати правила включення і відключення доступу комп'ютерів в Інтернет.
Відкриємо файл OnConnect:
# Nano / etc / stargazer / OnConnect

І додамо в кінець файлу рядки рядки:

# Add iptables rules
/ Sbin / iptables -t filter -A FORWARD -s $ IP -j ACCEPT
/ Sbin / iptables -t filter -A FORWARD -d $ IP -j ACCEPT

Зберігаємо файл - CTRL + O, Enter, CTRL + X

Також змінимо файл / etc / stargazer / OnDisconnect
# Nano / etc / stargazer / OnDisconnect

Додамо наступні рядки в кінець файлу:

# Delete iptables rules
/ Sbin / iptables -t filter -D FORWARD -p all -s $ IP -j ACCEPT
while [$? -eq 0]
do
/ Sbin / iptables -t filter -D FORWARD -p all -s $ IP -j ACCEPT
done
/ Sbin / iptables -t filter -D FORWARD -p all -d $ IP -j ACCEPT
while [$? -eq 0]
do
/ Sbin / iptables -t filter -D FORWARD -p all -d $ IP -j ACCEPT
done

Зберігаємо файл - CTRL + O, Enter, CTRL + X

Тепер включимо автозагрузку Stargazer:

# Chkconfig stargazer on

І запустимо демон білінгу:

На цьому установка і настройка Stargazer завершена!

Налаштування кешируючого DNS сервера

В консолі вводимо:

Створюємо файли зони:

Встановимо пакет Bind, який дозволить додати функцію кешуючого DNS сервера на наш шлюз:

# Yum install bind -y

Поставимо його в автозавантаження:

# Chkconfig named on

Налаштуємо його, відкриємо файл /etc/named.conf і змінимо вміст:

# Додаємо рядок і вказуємо DNS провайдера

# Вказуємо кому дозволено брати DNS запити

Запускаємо службу named:

# Service named start

Без настройки самого Stargazer не обійтися, так як за замовчуванням білінг показує Інтернет трафік в графі Локального трафіку. Треба це виправити.

Відкриваємо /etc/stargazer/stargazer.conf і відповідно до файлом /etc/stargazer/rules.cfg міняємо вміст stargazer.conf:

# Ім'я лог-файлу куди пишуться події
LogFile = /var/log/stargazer.log

# Файл в якому визначаються правила підрахунку трафіку
Rules = / etc / stargazer / rules

# Час через яке пишеться d БД детальна статистика користувача
# Значення: 1, 1/2, 1/4, 1/6.
# 1 - раз в чаc, 1/2 - раз на пів години, 1/4 - раз в 15 хв, 1/6 - раз в 10 хв
DetailStatWritePeriod = 1/6

# Періодичність записи записи в БД інформації про статистику користувача (хвилини)
# При великій кількості користувачів цю величину варто збільшити, тому що
# Запис в БД може займати тривалий час.
# Значення: 1. 1440 (хвилини)
StatWritePeriod = 10

# День зняття абонплати
# Значення: 0. 31. 0 - Останній день місяця
DayFee = 1

# Абонплата знімається в останній (yes) або перший (no) день облікового періоду.
# Це впливає на те, як буде знята абонплата (АП) при переході на новий тариф.
# Якщо у користувача був тариф A з АП = 100 і він хоче перейти на тариф B з АП = 200,
# То при переході на новий тариф з рахунку користувача зніметься 100, якщо
# DayFeeIsLastDay = yes і 200, якщо DayFeeIsLastDay = no
DayFeeIsLastDay = yes

# День скидання даних про трафік за місяць і день переходу користувачів на нові тарифи
# Значення: 0. 31. 0 - Останній день місяця
DayResetTraff = 1

# "Розмазати" зняття абонплати. Зняття АП не раз на місяць, а кожен
# День 1/30 або 1/31 частини АП
# Значення: yes, no
SpreadFee = no

# Дана опція визначає чи може користувач отримати доступ в інтерент
# Якщо у нього на рахунку немає грошей, але залишився передплачений трафік
# Значення: yes, no
FreeMbAllowInet = no

# Ця опція визначає що буде писатися в вартість трафіку в detail_stat.
# Якщо у користувача ще є передплачений трафік і WriteFreeMbTraffCost = no,
# То в detail_stat вартість буде 0. Якщо у користувача вже немає
# Передплаченого трафіку і WriteFreeMbTraffCost = no, то в detail_stat
# Буде записана стоіость трафіку. При WriteFreeMbTraffCost = yes вартість
# Трафіку буде записана в будь-якому випадку.
WriteFreeMbTraffCost = no

# Необов'язковий параметр. Вказує знімати повну абонплату у користувача навіть
# Якщо він биз заморожений тільки частина облікового періоду.
# За замовчуванням встановлений в no
# FullFee = no

# Необов'язковий параметр вказує показувати на рахунку і дозволяти
# Використовувати користувачеві абонплату. За замовчуванням встановлений в yes
# ShowFeeInCash = yes

# Кількість запускаються процесів stg-exec.
# Ці процеси відповідають за виконання скриптів OnConnect, OnDisconnect.
# Кількість процесів означає скільки скриптів можуть виконуватися одночасно.
# Значення: 1. 1024
ExecutersNum = 1

# Message Key для stg-exec.
# Ідентифікатор черги повідомлень для виполнятеля скриптів.
# Його зміна може знадобиться якщо є необхідність запустити кілька
# Примірників stg. Якщо ви не розумієте, що це, не чіпайте цей параметр!
# Значення: 0. 2 ^ 32
# Значення за замовчуванням: 5555
# ExecMsgKey = 5555

# Шлях до директорії, в якій знаходяться модулі сервера
ModulesPath = / usr / lib / stg

# Визначає директорію, в якій будуть знаходиться файли "монітора"
# Роботи сервера. У цій директорії будуть створені порожні файли, час
# Модифікації яких буде змінюватися приблизно раз на хвилину. Якщо якийсь
# Компонент сервера зависне, файл (и) перестане оновлюючи, і з цього
# Ознакою можна визначити збій в роботі сервера і при потребі
# Перезапустити. Якщо параметр не зазначений або порожній, моніторинг проводиться
# не буде. Параметр не є обов'язковим, за замовчуванням порожній.
# MonitorDir = / var / stargazer / monitor

# Другий параметр - це ім'я модуля без mod_ на початку і .so в кінці
# Тобто повне ім'я модуля mod_store_files.so

# Робоча директорія сервера, тут містяться дані про тарифи, користувачів,
# Адміністраторів і т.д.
WorkDir = / var / stargazer

# Власник, група і права доступу на файли статистики (stat) користувача
ConfOwner = root
ConfGroup = root
ConfMode = 600

# Власник, група і права доступу на файли конфігурації (conf) користувача
StatOwner = root
StatGroup = root
StatMode = 640

# Власник, група і права доступу на лог-файли (log) користувача
UserLogOwner = root
UserLogGroup = root
UserLogMode = 640

# Час між посилками запиту користувачеві чи живий він
# І оновленням даних статистики (секунди)
# Значення: 5. 600
UserDelay = 15

# Цей параметр визначає що буде передаватися програмі InetAccess від сервера
# Як отстаток передплаченого трафіку
# Значення:
# FreeMb = 0 - кількість безкоштовних мегабайт в пресчете на ціну нульового напрямку
# FreeMb = 1 - кількість безкоштовних мегабайт в пресчете на ціну першого напряму
# FreeMb = 2 - кількість безкоштовних мегабайт в пресчете на ціну другого напрямку
# FreeMb = 3 - кількість безкоштовних мегабайт в пресчете на ціну третього напряму
#.
# FreeMb = 9 - кількість безкоштовних мегабайт в пресчете на ціну дев'ятого напрямки
# FreeMb = cash - кількість грошей на які користувач може безкоштовно качати
# FreeMb = none - нічого не передавати
FreeMb = cash

# Модулі можна використовувати кілька разів з різними параметрами
#
# Port = 7777
# UserDelay = 15
# UserTimeout = 65
# FreeMb = 0
#

# Настройки модуля конфігурації SgConfig "mod_conf_sg.so"
# Другий параметр - це ім'я модуля без mod_ на початку і .so в кінці

# Порт по якому сервер взаємодіє з конфігуратором
# Значення: 1. 65535
Port = 5555

# Модуль захоплення трафіку "mod_cap_ether.so"
# Другий параметер - це ім'я модуля без mod_ на початку і .so в кінці
# Без параметрів. Тільки ім'я модуля.

# Модуль без параметрів

# Настройки модуля пінг користувачів "mod_ping.so"
# Другий параметр - це ім'я модуля без mod_ на початку і .so в кінці

# Час, в секундах, між пінг одного і того ж користувача
# Значення: 10. 3600
PingDelay = 15

#
# Password = 123456
# ServerIP = 127.0.0.1
# Port = 6666
# AuthServices = Login-User
# AcctServices = Framed-User
#

Жирним наголосив на тому що я міняв. Тут ми змінили назви напрямків за якими ведеться облік трафіку.

Тепер для перевірки відкриємо файл / etc / stargazer / rules

ALL 10.168.50.0/24 DIR1
ALL 10.0.0.0/8 DIR2
ALL 0.0.0.0/0 DIR0

Це робиться через головне меню - Налаштування -> Налаштування.

Тепер підключимося до шлюзу.

При підключенні до сервера у вас запитають логін і пароль, які за умовчанням мають вигляд:

Налаштуємо тарифний план через головне меню "Правка -> Тарифні плани."

Тут правимо напрямок "Internet", вводимо ціну за мегабайт витрачений на цьому напрямку.

У на провайдер Intelsoft, який бере 1 рубль за скачав мегабайт. Червоної рамкою я помітив те що потрібно змінити. Вважати локальний трафік ми не будемо. Після всіх змін натисніть на кнопку "Зберегти"

Установка та базове налаштування stargazer

Заведемо в системі першого користувача user1 і додамо йому на приводу не яку суму грошей :). У нашому випадку ми додали 100 рупій.

Після додавання користувача, натисніть кнопку Оновити

У InetAccess введіть логін і пароль щойно створеного користувача, і натисніть кнопку Підключитися:

Пароль: 123456 (або ваш пароль)

Повинен загорітися зелене індикатор сигналізує про те що доступ в Інтернет відкритий. Запустіть бразуер і введіть в ньому для перевірки:

Повинна з'явиться сторінка Google.

Якщо у вас щось не вийшло, значить треба все перевірити ще раз.

Схожі статті