Биллинговая система Nodeny
30 Апреля 2024, 21:03:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1] 2
  Печать  
Автор Тема: Помогите стартануть  (Прочитано 6603 раз)
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« : 16 Ноября 2013, 19:32:11 »

Добрый день всем.
Устанавливаю Демку, всё по инструкции на Freebsd 8.4 AMD64
На сервере аппаратный рейд RAID 1
Все пароли как в мануале по умолчанию
Сделал предварительную настройку, завёл пользователя со статическим адресом 10.0.0.12 и даю статус: Всегда онлайн, Доступ разрешён и Всё ОК.
На клиенте прописываю:
IP= 10.0.0.12
255.255.255.0
шлюз 10.0.0.1
ДНС 1.1.1.1
Интернета на клиенте нет.
Если ввести в консоле ipfw table 100 add 0.0.0.0/0 Интернет есть.

Внешний интерфейс bce0 192.168.1.50
К клиентам bce1 10.0.0.1

вывод: ps -ax | grep no
Цитировать
[root@billing /usr/home/morozik]# ps -ax | grep no
    5  ??  DL     0:00.00 [ciss_notify0]
 1054  v0- S      0:00.26 /usr/bin/perl /usr/local/nodeny/nokernel.pl -d (perl5
 1055  v0- S      0:00.20 /usr/bin/perl /usr/local/nodeny/noserver.pl -d (perl5
 1487   0  S+     0:00.00 grep no

Внешний интерфейс bce0 192.168.1.50
К клиентам bce1 10.0.0.1
Если из автозагрузки убрать noserver.pl и запустить в режиме perl noserver.pl -v  получаем:

Цитировать
t@billing /usr/home/morozik]# cd /usr/local/nodeny
[root@billing /usr/local/nodeny]# perl noserver.pl -v
Start. Flag -h for help

loading /usr/local/nodeny/sat.cfg

Connecting to DBI:mysql:database=nodeny;host=localhost;port=3306;mysql_connect_t                                              imeout=5 : 0.021785 sec

loading noserver::nofire.pm

loading noserver::scripts.pm

loading noserver::shapes.pm

SELECT uid, param, tags, service_id FROM v_services WHERE tags LIKE '%,speed,%'
Строк: 2. Время выполнения sql: 0.0004 сек

SELECT SQL_BUFFER_RESULT * FROM nets WHERE priority>0 ORDER BY priority
Строк: 2. Время выполнения sql: 0.0001 сек

Добавление в фаервол сети 10.0.0.0/8 направления 4

Добавление в фаервол сети 0.0.0.0/0 направления 1

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u J                                              OIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a J                                              OIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='                                              on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u                                              .id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT SQL_BUFFER_RESULT uid, SUM(in1+in2+in3+in4) AS traf_in, SUM(out1+out2+out3+out4) AS traf_out FROM users_trf GROUP BY uid
Строк: 2. Время выполнения sql: 0.0002 сек

SELECT uid, param FROM v_services WHERE tags LIKE '%,inet,%'
Строк: 2. Время выполнения sql: 0.0001 сек

Fw On uid: 2, ip: 10.0.0.12, вх.скор: 1024 КБит/с

add 18500 fwd 127.0.0.1, 8080 tcp from any to any 80
add 18501 deny ip from any to any
add 46500 deny ip from any to any
add 60000 deny ip from any to any
add 32000 deny ip from any to any
table 14 flush
table 24 flush
add 5000 skipto 18502 ip from table(24) to table(14)
add 18502 pipe tablearg ip from table(24) to any
table 34 flush
add 33000 skipto 46501 ip from table(14) to table(34)
add 46501 pipe tablearg ip from any to table(34)
add 5001 allow ip from table(44) to table(14)
add 33001 allow ip from table(14) to table(44)
table 14 add 10.0.0.0/8
table 11 flush
table 21 flush
add 5002 skipto 18503 ip from table(21) to table(11)
add 18503 pipe tablearg ip from table(21) to any
table 31 flush
add 33002 skipto 46502 ip from table(11) to table(31)
add 46502 pipe tablearg ip from any to table(31)
add 5003 allow ip from table(41) to table(11)
add 33003 allow ip from table(11) to table(41)
table 11 add 0.0.0.0/0
pipe 1006 config bw 1024000bit/s
pipe 1001 config bw 1024000bit/s
table 31 add 10.0.0.12 1006
table 21 add 10.0.0.12 1001


 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT uid, param, tags, service_id FROM v_services WHERE tags LIKE '%,speed,%'
Строк: 2. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT SQL_BUFFER_RESULT uid, SUM(in1+in2+in3+in4) AS traf_in, SUM(out1+out2+out3+out4) AS traf_out FROM users_trf GROUP BY uid
Строк: 2. Время выполнения sql: 0.0001 сек

SELECT uid, param FROM v_services WHERE tags LIKE '%,inet,%'
Строк: 2. Время выполнения sql: 0.00008700 сек

SELECT uid, param, tags, service_id FROM v_services WHERE tags LIKE '%,speed,%'
Строк: 2. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT uid, param, tags, service_id FROM v_services WHERE tags LIKE '%,speed,%'
Строк: 2. Время выполнения sql: 0.0002 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT SQL_BUFFER_RESULT uid, SUM(in1+in2+in3+in4) AS traf_in, SUM(out1+out2+out3+out4) AS traf_out FROM users_trf GROUP BY uid
Строк: 2. Время выполнения sql: 0.0001 сек

SELECT uid, param FROM v_services WHERE tags LIKE '%,inet,%'
Строк: 2. Время выполнения sql: 0.00008800 сек

 SELECT u.id, a.ip, u.balance FROM ( SELECT INET_NTOA(i.ip) AS ip FROM users u JOIN ip_pool i ON i.uid=u.id WHERE u.lstate=1 UNION SELECT ip FROM auth_now ) a JOIN ip_pool i ON INET_ATON(a.ip)=i.ip JOIN users u ON i.uid=u.id WHERE u.state='on' AND  EXISTS (SELECT uid FROM v_services WHERE tags LIKE '%,inet,%' AND uid=u.id)
Строк: 1. Время выполнения sql: 0.0001 сек

SELECT uid, param, tags, service_id FROM v_services WHERE tags LIKE '%,speed,%'
Строк: 2. Время выполнения sql: 0.0001 сек

Подскажите в каком направлении копать?


Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #1 : 16 Ноября 2013, 20:54:13 »

для того чтобы работала заглушка используется команда fwd  фаервола, но по умолчанию она не скомпилена в ядре. Поэтому 2 варианта:
1) перекомпилить ядро (в доке это есть)
2) закомментировать строку
Код:
$M->{fw}{rules} .= 'add '.$M->{fw}{cursor_out2}++." fwd 127.0.0.1, $port tcp from any to any 80\n";
в /usr/local/nodeny/noserver/nofire.pm если заглушка не нужна
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #2 : 17 Ноября 2013, 19:46:45 »

для того чтобы работала заглушка используется команда fwd  фаервола, но по умолчанию она не скомпилена в ядре. Поэтому 2 варианта:
1) перекомпилить ядро (в доке это есть)
2) закомментировать строку
Код:
$M->{fw}{rules} .= 'add '.$M->{fw}{cursor_out2}++." fwd 127.0.0.1, $port tcp from any to any 80\n";
в /usr/local/nodeny/noserver/nofire.pm если заглушка не нужна

Спасибо сделал по 1 варианту и сразу заработало.

Далее настраиваю MPD5, опять же всё согласно инструкции, дохожу до места где нужно cоздать MySQL процедуры, но при вводе в консоль MySQL данных с документации получаю:
Цитировать
mysql> DROP PROCEDURE IF EXISTS `radcheck`;
ERROR 1370 (42000): alter routine command denied to user 'nodeny'@'localhost' for routine 'nodeny.radcheck'
mysql> DELIMITER $$
mysql> CREATE PROCEDURE `radcheck` (IN login VARCHAR(64))
    -> BEGIN
    ->   SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'hardpass') AS Value,'=='
    ->     FROM users WHERE name=login;
    -> END$$
ERROR 1044 (42000): Access denied for user 'nodeny'@'localhost' to database 'nod eny'
mysql> DELIMITER ;
mysql>
так со всеми процедурами.
Я так понимаю что пользователь nodeny не имеет права доступа с Localhost, как дать ему эти права? или я не в правильном направлении мыслю?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #3 : 17 Ноября 2013, 21:37:18 »

от рута  создай процедуры
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #4 : 18 Ноября 2013, 14:38:40 »

от рута  создай процедуры
Я так сразу и сделал, просто был не уверен что правильно сделал.
Да ещё если ядро компилировалось по Вашей инструкции, то во время установки вот эти записи не нужно делать?:
Цитировать
echo ipfw_load=\"YES\" >> /boot/loader.conf
echo ipdivert_load=\"YES\" >> /boot/loader.conf
echo dummynet_load=\"YES\" >> /boot/loader.conf
Я так понимаю что эти модули подгружает теперь ядро.

и ещё вопросы:
1. после разрыва подключения PPPoE в админке клиент висит авторизованный ещё примерно 3-4 минуты, так и должно быть?
2. в ознакомительной версии заглушка работает или это уже отдельный модуль и его нужно подключить только после покупки?
3. После покупки нужно будет всё с нуля ставить или есть переход с ознакомительной на коммерческую версию?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #5 : 18 Ноября 2013, 14:47:21 »

0. Если в ядре скомпилены эти модули, то подгружать их не нужно в /boot/loader.conf
1. Да, так и задумано, поскольку (так уж устроен этот мир) оборудование/проги глючат (лагают) время от времени, поэтому нужно не сразу вырубать, а давать возможность исправиться. Можно это время сократить, но на таком принципе нодени уже работает черти сколько лет и проблем в этом не было, так что не стоит
2. Да, заглушка работает
3. Достаточно переименовать /usr/local/nodeny  в /usr/local/nodeny.old (для бекапа), загрузить n+ с нового репозитория, заменить sat.cfg  со старого, perl install.pl -w=www и все заработает
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #6 : 18 Ноября 2013, 18:23:04 »

Еще пару вопросов для ознакомления:
Существует ли возможность создать услугу (Безлимитные тарифы) посуточно, чтоб действовала с 0:00 до 23:59, в общем списание ежедневно в 23:59, ну или в 0:00, если возможно то как?
На форуме видел, что люди используют NAS на микротиках, где можно ознакомиться с настройкой этой связки?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #7 : 18 Ноября 2013, 22:48:12 »

а клиенты не будут ругаться, когда купят тариф в 12 дня, а он закончится в 24 часа?
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #8 : 19 Ноября 2013, 08:16:08 »

а клиенты не будут ругаться, когда купят тариф в 12 дня, а он закончится в 24 часа?
Думаю будут))
А насчет микротика как NAS, как реализовать ?
Записан
elite
Начальник планеты
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1227

In LAN we trust!

358714596
Просмотр профиля
« Ответ #9 : 19 Ноября 2013, 08:20:39 »

через радиус
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #10 : 19 Ноября 2013, 08:46:49 »

через радиус
Т.е создаем пул адресов в админке, на микротике настраиваем pppoe сервер, нат, и указываем получать данные по радиусу. Так?
А информацию о скорости тарифа, сроке услуги, радиус тоже передает ?
« Последнее редактирование: 19 Ноября 2013, 09:41:29 от Morozikfeo » Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #11 : 19 Ноября 2013, 17:00:37 »

Ещё подскажите, когда меняю пароль на пользователя MySQL-nodeny, так же меняю его в sat.cfg, после этого рестарт радиуса и радиус перестаёт отвечать на запросы(в инструкции только тут смена пароля), может ещё где нужно сменку сделать?
Записан
0xbad0c0d3
гуру nodeny )
NoDeny
Спец
*

Карма: 116
Offline Offline

Сообщений: 1059



Просмотр профиля
« Ответ #12 : 19 Ноября 2013, 17:32:27 »

 Рот на замке
Записан
Morozikfeo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 22


Просмотр профиля
« Ответ #13 : 19 Ноября 2013, 18:26:51 »

Рот на замке
Информативно ))
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #14 : 19 Ноября 2013, 20:25:24 »

запуск радиуса с консоли radiusd -X
и смотреть где ошибка
Записан
Страниц: [1] 2
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!