Биллинговая система Nodeny
15 Мая 2024, 09:26:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
  Начало Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 ... 3 4 [5]
61  Главная категория / Nodeny 50 / проблема с номерами точек топологии : 14 Мая 2010, 15:51:03
Указываю точку подключения для юзера либо для оборудования.
Скажем точка №5 (вкладка дополнительно в данных  клиента)
Кликаю по ссылке "Точка 5" (https://ХХХ.net.ua/cgi-bin/adm/adm.pl?pp=T1-9905466397NlRfPMMlmlDwIUODDsWQQ&a=oper&act=points&op=edit&id=5), но открываются данные совершенно другой точки № 9... и так с любыми точками топологии.
чтобы открылась точка с номером "5", мне необходимо поменять edit&id=5 в запросе на edit&id=1 (https://XXX.net.ua/cgi-bin/adm/adm.pl?pp=T1-9905466397NlRfPMMlmlDwIUODDsWQQ&a=oper&act=points&op=edit&id=1)

Предпологаю что проблема, в том, что запрос формируется не по номеру точки, а по айди записи в таблице.
Но первая запись в таблице это не обязательно точка с номером 1 (у меня,например, 5) и номера точек задаются не обязательно подряд, т.е. у меня для каждой карты своя сотня точек зарезервирована и номера идут 5,4,....65, потом 101...130 и т.д.
Как исправить?
62  Главная категория / Разработка / Альтернативный авторизатор authweb nodeny-alternative-authorizer : 01 Мая 2010, 11:59:33
Заинтересовал данный авторизатор, т.к. авторизация происходит через веб(минимум проблем с фаерволом на стороне пользователя) + простой и доступный интерфейс(ничего лишнего).

Но увы никак не удается заставить его работать.
При подключении все время сообщает: "Неверный логин или пароль!".
Пробовал на готовом бинаре, пересобирал из исходников в ms visual studio - бестолку.
Были подозрения что возникают проблемы при передачи логина/пароля ввиду несоответствия кодировок либо проблем с сертификатом безопасности.

Добавил в stat.pl несколько строк, дабы записывать логин и пароль в лог файл:

Код:
$auth_log='/usr/local/nodeny/login.log'; 
.......
open(LOG, ">> $auth_log");
 print LOG $pass;
 print LOG $UU;
 close LOG;

логин и пароль, переданные на сервер, полностью соответствуют, тому что записано в лог.
в логах апача тоже все ок.
Цитировать
XX.XX.XX.XX - - [01/May/2010:03:31:01 +0300] "GET /cgi-bin/stat.pl?ses=&a=98&uu=garik3&pp=94a5f0635f5e7163fc23346870d55b52 HTTP/1.1" 200 802

теряюсь в догадках, прошу помощи Улыбающийся

исходники:
http://code.google.com/p/nodeny-alternative-authorizer/source/browse/#svn/trunk/Authorizer
63  Главная категория / Разработка / Re: Windows Firewall и авторизатор : 27 Апреля 2010, 10:09:01

мы скорее откажемся от авторизации вовсе по мере перехода на упр. железо.
юзеры привыкли к авторизатору с времен старгейзера. переучивать их на что-то иное, имхо, лишний гемор.
64  Главная категория / Разработка / Re: Windows Firewall и авторизатор : 26 Апреля 2010, 17:57:48
Очень заинтересовал Ваш авторизатор. Вот только он мне постоянно выдает, что неверный логин или пароль, хотя вводить пробывал даже путем копировать и вставить  Улыбающийся

Та же проблема.
Запускал бинарь который здесь выкладывали. потом собирал сам из исходников.
Все время при подключении пишет: "Неверный логин или пароль!"
Что я делаю не так?
65  Главная категория / Nodeny 50 / Re: нужна помощь с netgraph netflow : 06 Апреля 2010, 04:34:33
заработало. нашел пару ошибок.
1.
Код:
# netstat |grep 88
tcp4       0      0  localhost.8888         localhost.52754        ESTABLISHED
tcp4       0      0  localhost.52754        localhost.8888         ESTABLISHED
порт 8888 занят другим приложением, поменял порт.

2. подправил rc.conf (спасибо+1 Elisium) http://forum.nodeny.com.ua/index.php?topic=486.msg4791#msg4791
Код:
flow_capture_enable="YES"
flow_capture_profiles="nodeny"
flow_capture_nodeny_flags="-n1 -N0 -R /usr/local/nodeny/netflow_8888.pl"
# Ниже ип шлюза, отдающего нетфлов или 0.0.0.0, если не важна суперсекретность ))
flow_capture_nodeny_remoteip="10.0.121.1"
# Ниже ип биллинга, коллектора нетфлов или 0.0.0.0, если слушать на всех ифейсах
flow_capture_nodeny_localip="10.0.121.10"
flow_capture_nodeny_datadir="/var/db/flows"
flow_capture_nodeny_pid="/var/run/flow-capture/flow-capture.pid"
flow_capture_nodeny_port="8888"
flow_capture_nodeny_user="root"


66  Главная категория / Nodeny 50 / нужна помощь с netgraph netflow : 05 Апреля 2010, 23:01:56
пытаюсь перейти с ipcad на netflow(netgraph), бьюсь второй день.

лог админки биллинга:
Код:
cat: /var/run/flow-capture/flow-capture.pid.8888: No such file or directory
cat: /var/run/flow-capture/flow-capture.pid.8888: No such file or directory
cat: /var/run/flow-capture/flow-capture.pid.8888: No such file or directory
cat: /var/run/flow-capture/flow-capture.pid.8888: No such file or directory
cat: /var/run/flow-capture/flow-capture.pid.8888: No such file or directory
в папках /var/run/flow-capture/ и /var/db/flows/ пусто

в мониторинге ядра ноудени
Код:
Не получен трафик от netflow: local (8888:2,3).

1-ая сетевая смотрит в локалку
2,3 в инет
ось  freebsd 7.0-RELEASE-p12
все необх. модули подгружены согласно инструкции.
все крутится на одной тачке.

netflow.pl -ничего не менял
Код:
#!/usr/bin/perl

# Вход:
# 0 - порт
# 1 - название файла

$flow_base='/var/db/flows/';
$nodeny_base='/usr/local/nodeny/';
$flow_capture_pid='/var/run/flow-capture/flow-capture.pid';

$flow_print=`which flow-print` || '/usr/local/bin/flow-print';
$flow_export=`which flow-export` || '/usr/local/bin/flow-export';
$cat=`which cat` || '/bin/cat';

chomp $flow_print;
chomp $flow_export;
chomp $cat;

$flow_base=~s/\/$//;
$nodeny_base=~s/\/$//;

($port,$file_name)=@ARGV;
$port=~s/\s+//g;

if ($port=~/(\d+):(.+)$/)
  {# для данного сенсора известен номер внешнего интерфейса
   $out_int=",$2,";
   $port=$1;
  }else
  {
   undef $out_int;
   $port=int $port;
  }

$flow_file=$flow_base.'/$ARGV[0]';
$file_pl="$nodeny_base/netflow_$port.pl";


exit unless open(F,">$file_pl");

{
 $n="\n";
 unless (defined $out_int)
   {
    print F qq{#!/usr/bin/perl$n}.
      qq{ system("$flow_print -f6 < $flow_file >$file_name 2>/dev/null");$n}.
      qq{ unlink "$flow_file";$n};

netflow_8888.pl сгенерирован автоматом
Код:
#!/usr/bin/perl
$lines=`/usr/local/bin/flow-export -f2 -mdoctets,srcaddr,dstaddr,input,output,srcport,dstport,prot < /var/db/flows/$ARGV[0] 2>/dev/null`;
$out_int=',2,3,';
$out="";
foreach $line (split /\n/,$lines)
 {
  ($bytes,$src,$dst,$src_if,$dst_if,$src_port,$dst_port,$prot)=split /,/,$line;
  next if $prot<1;
  $h="$src\t$dst\t1\t$bytes\t$src_port\t$dst_port\t$prot\t";
  $out.=$h."2\n" if $out_int=~/,$src_if,/;
  $out.=$h."1\n" if $out_int=~/,$dst_if,/;
 }
exit unless open (F,'>/usr/local/nodeny/sql/1-1270498952_temp');
print F $out;
close(F);
rename '/usr/local/nodeny/sql/1-1270498952_temp','/usr/local/nodeny/sql/1-1270498952';
unlink "/var/db/flows/$ARGV[0]";

netflow.txt
Код:
mkpeer ipfw: netflow 100 iface0
name ipfw:100 netflow
msg netflow: setdlt { iface = 0 dlt = 12 }
mkpeer netflow: ksocket export inet/dgram/udp
msg netflow:export connect inet/127.0.0.1:8888

rc.firewall
Код:
#!/bin/sh -

fwcmd="/sbin/ipfw -q"
ifOut='fxp1'
ifOut2='fxp2'
mailSrvIp='xxx.xxx.xxx.xxx'


${fwcmd} table 120 flush
${fwcmd} table 120 add 224.0.0.0/4
${fwcmd} table 120 add 192.168.0.0/16
${fwcmd} table 120 add 172.16.0.0/12


${fwcmd} -f flush

${fwcmd} add 11 allow tcp from any to me dst-port 1723 in
${fwcmd} add 12 allow tcp from me 1723 to any out
${fwcmd} add 13 allow gre from any to any

${fwcmd} add 25  allow tcp from any to 10.36.3.3 dst-port 5006
${fwcmd} add 30  allow tcp from 10.36.0.0/16 to 10.36.3.3 dst-port 10000
${fwcmd} add 40 allow udp from any 53 to me #dns input
#priem pochti s ineta
${fwcmd} add 42 allow tcp from any to ${mailSrvIp} 25 in #mail
${fwcmd} add 43 allow udp from any to ${mailSrvIp} 25 in #mail
${fwcmd} add 44 allow tcp from 10.36.0.0/16 to me 25,110,143 keep-state

${fwcmd} add 50 allow tcp from any to me 22
${fwcmd} add 51 allow tcp from me 22 to any

${fwcmd} add 100 deny tcp from any to any 445

${fwcmd} add 110 allow ip from any to any via lo0
${fwcmd} add 115 allow ip from any to any via lo1
${fwcmd} add 120 skipto 1000 ip from me to any
${fwcmd} add 130 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
${fwcmd} add 140 deny ip from any to "table(120)"
${fwcmd} add 150 deny ip from "table(120)" to any
${fwcmd} add 160 skipto 2000 ip from any to me

${fwcmd} add 200 skipto 500 ip from any to any via ${ifOut}
${fwcmd} add 205 skipto 500 ip from any to any via ${ifOut2}


${fwcmd} add 280 fwd 127.0.0.1,81 tcp from "table(35)" to not me dst-port 80
${fwcmd} add 290 fwd 127.0.0.1,8080 tcp from not "table(0)" to not me dst-port 80
${fwcmd} add 300 skipto 4500 ip from any to any in

#${fwcmd} add 400 skipto 450 ip from any to any recv ${ifOut}
#${fwcmd} add 405 skipto 450 ip from any to any recv ${ifOut2}
${fwcmd} add 400 ngtee 100 ip from any to any
${fwcmd} add 405 ngtee 100 ip from any to any

#${fwcmd} add 420 divert 1 ip from any to any
#${fwcmd} add 450 divert 2 ip from any to any
${fwcmd} add 490 allow ip from any to any

${fwcmd} add 500 skipto 32500 ip from any to any in
#${fwcmd} add 510 divert 1 ip from any to any
${fwcmd} add 510 ngtee 100 ip from any to any
${fwcmd} add 540 allow ip from any to any

${fwcmd} add 1000 allow udp from any 53,7723 to any
${fwcmd} add 1010 allow tcp from any to any setup keep-state
${fwcmd} add 1020 allow udp from any to any keep-state
${fwcmd} add 1100 allow ip from any to any

${fwcmd} add 2000 check-state
${fwcmd} add 2010 allow icmp from any to any
${fwcmd} add 2020 allow tcp from any to any 80,443,5222,5223
${fwcmd} add 2050 deny ip from any to any via ${ifOut}
${fwcmd} add 2055 deny ip from any to any via ${ifOut2}
${fwcmd} add 2060 allow udp from any to any 53,7723

${fwcmd} add 2100 deny ip from any to any

${fwcmd} add 32490 deny ip from any to any


rc.conf
Код:
.....
#netflow netgraph
ngnetflow_enable="YES"
# flow_capture
flow_capture_enable="NO"
.....

ngnetflow.sh
Код:
#!/bin/sh
. /etc/rc.subr

name="ngnetflow"
rcvar=`set_rcvar`

load_rc_config $name
: ${ngnetflow_enable="YES"}

start_cmd="ngnetflow_start"
stop_cmd="ngnetflow_stop"

ngnetflow_start() {

/usr/sbin/ngctl -f /usr/local/nodeny/netflow.txt

}

ngnetflow_stop() {
/usr/sbin/ngctl -f- <<-NODENY
shutdown netflow:
NODENY
}

run_rc_command "$1"

подскажите, плз., куда копать?
67  Главная категория / Nodeny 50 / Re: Номер дома с буквой в точках топологии и доп. полях шаблона адрес : 29 Января 2010, 14:12:51
удобно конечно, но как быть если есть дома с буквой у которых есть еще по нескольку корпусов?
скажем дом 46а корпус 1, 2, 3.
считаю, что буква должна быть в поле с номером дома.
68  Главная категория / Nodeny 50 / Номер дома с буквой в точках топологии и доп. полях шаблона адрес : 22 Января 2010, 18:07:58
У нас как минимум 1/3 домов идет с буквой (1а, 46а, 29б и т.п.)
Веб админка ноудени не воспринимает ничего кроме цифр.

Дабы исправить в доп. полях шаблона адрес нашел следующие рекомендации:
50.32/docs/h/work.html#dopdata
Цитировать
К примеру, у поля «номер дома» тип «целое положительное». Если же в вашем городе существуют не цифровые дома, то вы можете поменять тип на строковый. Вы можете добавить строковое поле «город».
поменял тип поля в с цельного положительного на строковое однострочное.

А вот что поменять для сабжа в точках топологии не нашел и проделал следующее:

в таблице points поменял тип поля house
Поле     Тип     Сравнение     Атрибуты                       Null     По умолчанию     Дополнительно     
было house     int(11)                                             Нет     0     
стало house     varchar(6)     cp1251_general_ci          Нет     0

Код:
cd /usr/local/nodeny/web/
ee o_points.pl

Код:
#&RRow('*','lll','Дом',&input_t('house',$house,10,10),'').
&RRow('*','lll','Дом',&input_t('house',$house,10,10),'можно не число').

#$Fhouse=int $F{house};
$Fhouse=&Filtr($F{house});

#$d->{sql}="street=$Fstreet,house=$Fhouse,block='$Fblock',pod='$Fpod',cod_pod=$Fcod_pod,comment='$Fcomment',unknown_ports=$Funknown_ports,".
$d->{sql}="street=$Fstreet,house='$Fhouse',block='$Fblock',pod='$Fpod',cod_pod=$Fcod_pod,comment='$Fcomment',unknown_ports=$Funknown_ports,".

#$new_data.=($new_data && ', ')."дом: $Fhouse" if $Fhouse != $house;
$new_data.=($new_data && ', ')."дом: $Fhouse" if $Fhouse ne $house;

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


69  Главная категория / Разработка / Re: Нужен модуль расширеного управления почтой : 10 Января 2010, 05:55:03
+1
имхо, фичи - must have, модуль вполне может бы универсальным.
у нас почта крутится на exim http://www.exim.org/, с vexim.
требования практически идентичны озвученным выше. возм. потребуется несколько доп полей.



70  Главная категория / Разработка / Re: Модуль кредита : 04 Января 2010, 10:15:27
Насчет вечной музыки - сделал так что сума на счету пользователя сколько раз не нажимай будет одинаковая, а плата за услугу будет с каждым нажатием сниматься. Тоесть если берем припустим 100 грн. на счет падает 100 грн и -5 грн за услугу, если еще раз взять кредит 100 грн, на счету будет 100 грн, а за услугу 2 платежа и уже-10 грн. Это чтоб отучить тех кто хотят обмануть.   
скорее юзера будут звонить и говорить "ой, я что-то не так нажал и у меня списало 2 раза по 5 грн", имхо лучше просто не давать второй кредит с соответствующим уведомлением. иначе будут морочить голову ТП за эти 5 грн.

P.S. в веб интерфейсе Алферова в Старгейзере, например, каждый третий юзер при заказе смены пакета на след месяц, зачем-то клацает "обновить страницу" либо повторяет операцию 2-3 раза "чтоб наверняка )))", а потом искренне удивляется почему с него списало не 10, а 20-30 грн. за смену пакета.... ну и обязательно звонит в ТП чтоб сделали сторно.
71  Главная категория / Nodeny 49 / подскажите DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at : 30 Декабря 2009, 00:11:51
В логах следующее:
Код:
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 512.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 512.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 512.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 512.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 512.
DBD::mysql::db do failed: Table 'bill.traf_info' doesn't exist at nodeny.pl line 517.
подскажите, что с этим делать? Улыбающийся
кусок nodeny.pl:
Код:
sub sqldo
{
 my ($sql,$mess)=@_;
 my $rows;
 $dbh or &SoftConnectToDB;
 $dbh or return(undef);
 $rows=$dbh->do($sql);
 $V && &debug(($mess && "$mess:\n").(length($sql)<800? "$rows=$sql" : "$rows=[long sql]".substr($sql,0,200).'...'));
 $rows && return($rows);  #stroka 512
 &SoftConnectToDB;
 $dbh or return(undef);  
 return $dbh->do($sql);  #stroka 517
}

посмотрел базу bill, таблицы traf_info не нашел. пробану создать.
какие поля должны быть в этой таблице?
---------------------
так. пока писал... сам разобрался. может кому пригодится...
необходимая информация есть в файле bill.sql в папке с дистрибутивом биллинга.

создадим таблицу:

#mysql -u root -p bill

затем
Код:
CREATE TABLE `traf_info` (
  `time` int(10) unsigned NOT NULL,
  `cod` mediumint(8) unsigned NOT NULL,
  `data1` text NOT NULL,
  KEY `time` (`time`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
72  Главная категория / Общий раздел / Re: необходимо раздать всем юзерам белые айпи : 22 Декабря 2009, 02:07:40
а какой способ авторизации использовать собираетесь?
а в точку обмена трафиком бинатить реальные ип в нужную подсеть фейковых, если там такие кривые админы Улыбающийся
хотим использвать л2 авторизацию, т.е. авторизатор либо "всегда онлайн" с привязкой к порту.
привычный вариант после старгейзера.
если бинатить в точку обмена трафиком загрузка еще больше выходит, поток 400-500 мегабит в каждую сторону в вечернее время.
отдельный таз ставить нужно, имхо, не факт что результат будет удовлетворительным при такой нагрузке.
в ядре стоит edge-core es4626-sfp (натить есно не умеет).
выпрямить админов будет проблематично, пиринги создаются хаотично, каждый общается непосредственно с своими пирами, прочие-же маршруты принимает по бгп и соответсвенно донести инфу всем админам о том, что такую-то белую сеточку /21 следует пускать напрямую к юзерам будет сложно. скорее некоторые ее зафильтруют дабы юзерам не насчитывался "Инет" трафик в dc++ ))
73  Главная категория / Общий раздел / необходимо раздать всем юзерам белые айпи : 21 Декабря 2009, 16:45:25
получили AS+PI /21
хотим раздать юзерам.
с  vpn и pppoe не хотелось бы связываться, т.к чем дальше в лес тем быстрее безлимиты и выше нагрузка на сервера доступа соответственно. другие провайдеры в нашем регионе уже отказываются потихоньку от vpn и нам бы не хотелось наступить на те же  грабли.
бинат, насколько я понимаю, подходит когда необходимо раздать десяток - два айпи и в моем случае не вариант.
раздать всем тупо белые айпи непосредственно без серых - будут траблы с местными паритетами в городской сети, т.к. все прочие сети юзают исключительно серые адреса.
как лучше поступить?
Страниц: 1 ... 3 4 [5]
Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!