Страница 1 из 1
STG-2.405 скрипты
Добавлено: 2009-06-22 12:07:40
Sun
Не могу понять в чем проблема есть такой скрипт:
Код: Выделить всё
#!/bin/sh
fwcmd="/sbin/ipfw -q"
IP=$2
ID=$4
${fwcmd} add `expr $ID '*' 10 + 8000` allow ip from $IP to any
echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log
при этом ipfw пишет такое
Код: Выделить всё
./OnConnect
expr: syntax error
ipfw: hostname ``to'' unknown
при этом в
/var/stargazer/users/$LOGIN/connect.log исправно пишутся все данные переменных :
Код: Выделить всё
C 2009.06.22-15.42.25 192.168.0.100 2000.000000
D 2009.06.22-15.42.54 192.168.0.100 2000.000000
C 2009.06.22-15.43.02 192.168.0.100 2000.000000
C 2009.06.22-15.57.02 192.168.0.100 2000.000000
C 2009.06.22-16.09.34 192.168.0.100 2000.000000
C 2009.06.22-16.13.54 192.168.0.100 2000.000000
D 2009.06.22-16.22.04 192.168.0.100 2000.000000
C 2009.06.22-16.22.05 192.168.0.100 2000.000000
Суть скрипта добавить в ipfw правила, может кто сталкивался с этой проблемой, биллинг stargazer-2.405

Re: STG-2.405 скрипты
Добавлено: 2009-06-22 12:23:56
schizoid
так а $IP - разве 2-й параметр? не 3-й?
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 15:51:39
sun guest
хм.. че то не подумал переменные вывести и сравнит ... спс попробую.
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 16:40:03
sun guest
кажется проблема не в переменных... в голую скрипт ругается правильно потому что система не предает параметры пользователя,завтро буду побовать с клиента цепляться. в принцепи скрипт работает но в файре правило не встоет походу из синтаксической ошибки...
как можно вывести результат на экран во время выполнения скрипта,подскажите пожалуйста?
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 16:43:15
schizoid
#!/bin/sh -x ?
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 17:00:56
sun guest
файл исполняемый,сорри что означает флаг -х?
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 17:10:26
schizoid
Код: Выделить всё
-x xtrace
Write each command (preceded by the value of the PS4 variable) to
standard error before it is executed. Useful for debugging.
дебагер в общем
Re: STG-2.405 скрипты
Добавлено: 2009-06-22 17:30:39
sun guest
спс,буду знать ) завтра проверю как этот скрипт билингом обрабатывается
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 4:28:02
Sun
Проверил работает, вчера вероятно из за неуказанного шелла в скрипте он не работал
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 11:42:23
Sun
Короче система работает, теперь заморочился прикрутить впн и авторизацию через радиус но пока че то не пойму как радиус работает... и как с тем же мпд заставить работать
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 12:25:33
schizoid
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 12:49:55
Sun
спс,помню что видел где то )
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 13:18:58
Sun
Как правильно написать условие, че то понять не могу ...
Код: Выделить всё
#!/bin/sh -x
fwcmd="/sbin/ipfw -q"
iif="rl1"
A="192.168.0.100"
LOGIN=$1
IP=$2
CASH=$3
ID=$4
DIRS=$5
${fwcmd} add `expr $ID '*' 10 + 8000` allow ip from $IP to any via ${iif}
if [ $IP == $A ];
then
${fwcmd} add `expr $ID '*' 10 + 8001` ip from $IP to 192.168.0.1
fi
echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log
интересует почему он выдает эту строку
[: !=: unexpected operator
Код: Выделить всё
+ fwcmd=/sbin/ipfw -q
+ iif=rl1
+ A=192.168.0.100
+ LOGIN=
+ IP=
+ CASH=
+ ID=
+ DIRS=
+ expr * 10 + 8000
expr: syntax error
+ /sbin/ipfw -q add allow ip from to any via rl1
ipfw: hostname ``to'' unknown
+ [ != 192.168.0.100 ]
[: !=: unexpected operator
+ date +%Y.%m.%d-%H.%M.%S
+ echo C 2009.06.23-18.05.43
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 15:47:30
schizoid
параметры скрипту не передаются походу
Re: STG-2.405 скрипты
Добавлено: 2009-06-23 15:55:24
schizoid
так попробуй
#!/bin/sh -x
fwcmd="/sbin/ipfw -q"
iif="rl1"
A="192.168.0.100"
LOGIN=$1
IP=$2
CASH=$3
ID=$4
DIRS=$5
${fwcmd} add `expr $ID '*' 10 + 8000` allow ip from $IP to any via ${iif}
if [ $IP = $A ];
then
${fwcmd} add `expr $ID '*' 10 + 8001` ip from $IP to 192.168.0.1
fi
echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log
ну и запуск скрипта аля: sh -x 123 test 192.168.0.77 123 5 temp
Re: STG-2.405 скрипты
Добавлено: 2009-06-24 8:26:53
Sun
Код: Выделить всё
sh -x OnConnect user 192.168.0.101 100 2 temp
+ fwcmd=/sbin/ipfw -q
+ iif=rl1
+ A=192.168.0.101
+ LOGIN=user
+ IP=192.168.0.101
+ CASH=100
+ ID=2
+ DIRS=temp
+ expr 2 * 10 + 8000
+ /sbin/ipfw -q add 8020 allow ip from 192.168.0.101 to any via rl1
+ [ 192.168.0.101 = 192.168.0.101 ]
+ expr 2 * 10 + 8001
+ /sbin/ipfw -q add 8021 ip from 192.168.0.101 to 192.168.0.1
ipfw: invalid action ip
Re: STG-2.405 скрипты
Добавлено: 2009-06-24 8:32:02
Sun
Все разобрался

как всегда вина всему невнимательность ...
Код: Выделить всё
#!/bin/sh -x
fwcmd="/sbin/ipfw -q"
iif="rl1"
A=192.168.0.101
LOGIN=$1
IP=$2
CASH=$3
ID=$4
DIRS=$5
${fwcmd} add `expr $ID '*' 10 + 8000` allow ip from $IP to any via ${iif}
if [ $IP = $A ];
then
${fwcmd} add `expr $ID '*' 10 + 8001` deny ip from $IP to 192.168.0.1
fi
echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log
ошибка была что правило для ipfw не правильно написал пропустил действие deny.
ЗЫ: to
schizoid огромное спасибо что помог!!!
