[gnu-radius] мога кто подскажет?..

huyabla

radius.info:
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/users:6: parse error
Apr 18 07:32:06 [2570]: discarding user `DEFAULT'
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/users reloaded.
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver:10: auth_max_connections is obsolete
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver:21: acct_max_connections is obsolete
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `server' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `group_query' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `acct_nasdown_query' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `acct_nasup_query' statement
Apr 18 07:32:06 [2570]: disabling SQL authentication
Apr 18 07:32:06 [2570]: disabling SQL accounting
Apr 18 07:32:06 [2570]: USER LIST IS EMPTY
Apr 18 07:32:06 [2570]: Radiusd is not listening on any port. Trying to continue anyway...
Apr 18 07:32:06 [2570]: Ready
Apr 18 07:32:06 [2570]: Ready to process requests.
radius.log:
Apr 18 07:32:06 Main.info: Starting
Apr 18 07:32:06 Main.info: Terminating the subprocesses
Apr 18 07:32:06 Main.info: Loading configuration files.
Apr 18 07:32:06 Main.info: reading /usr/local/etc/raddb/config
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/config:5: obsolete statement
Apr 18 07:32:06 Main.error: /usr/local/etc/raddb/users:6: parse error
Apr 18 07:32:06 Main.error: discarding user `DEFAULT'
Apr 18 07:32:06 Main.info: /usr/local/etc/raddb/users reloaded.
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/sqlserver:10: auth_max_connections is obsolete
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/sqlserver:21: acct_max_connections is obsolete
Apr 18 07:32:06 Main.error: /usr/local/etc/raddb/sqlserver: missing `server' statement
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/sqlserver: missing `group_query' statement
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/sqlserver: missing `acct_nasdown_query' statement
Apr 18 07:32:06 Main.warning: /usr/local/etc/raddb/sqlserver: missing `acct_nasup_query' statement
Apr 18 07:32:06 Main.notice: disabling SQL authentication
Apr 18 07:32:06 Main.notice: disabling SQL accounting
Apr 18 07:32:06 Main.error: USER LIST IS EMPTY
Apr 18 07:32:06 Main.alert: Radiusd is not listening on any port. Trying to continue anyway...
Apr 18 07:32:06 Main.info: Ready
Apr 18 07:32:06 Main.info: Ready to process requests.
/usr/local/etc/raddb/sqlserver:
interface postgres
login ?
password ?

keepopen yes
idle_timeout 14400

doauth yes
auth_max_connections 24

auth_db vpn

auth_query select passwd from users where user_name='%u' AND active = TRUE and get_traffic_limit('%u') >= 0

reply_attr_query SELECT attr,param \
FROM users_attribute \
WHERE op IS NULL AND user_name='%u'
doacct yes
acct_max_connections 24
acct_db vpn

acct_start_query INSERT INTO stat(user_name,start,ip,frm,acct_s_id,pid,update) \
VALUES('%u','%D','%C{Framed-IP-Address}', \
'%C{Calling-Station-Id}','%C{Acct-Session-Id}','%C{Login-Service}','%D')

acct_alive_query UPDATE stat \
SET tm = %C{Acct-Session-Time}, \
update = '%D', \
inp = %C{Acct-Input-Octets}, \
out = %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND acct_s_id = '%C{Acct-Session-Id}'

acct_stop_query UPDATE stat \
SET tm = %C{Acct-Session-Time}, \
update = '%D', \
stop = '%D', \
inp = %C{Acct-Input-Octets}, \
out = %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND acct_s_id = '%C{Acct-Session-Id}'; \
UPDATE users_attribute \
SET param = INT8(param) - %C{Acct-Input-Octets} - %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND attr = 'Traffic-Limit'; \
UPDATE users \
SET active = false WHERE get_traffic_limit('%u') <= 0 AND user_name = '%u'; \
SELECT check_lost('%u')

народ что не так?...

huyabla

файлы из логов...
_________________________________
config:
# For detailed description, run:
# info Radius config
option {
usr2delay 30;
max-requests 1024;
log-dir "/var/log";
acct-dir "/var/acct";
};
logging {
prefix-hook "default_log_prefix";
channel default {
file "radius.log";
print-category yes;
print-level yes;
};
channel info {
file "radius.info";
print-pid yes;
};
channel debug {
file "radius.debug";
};
category auth {
print-auth yes;
print-failed-pass yes;
};
category info {
channel info;
};
category =debug {
channel debug;
};
category * {
channel default;
};
};
auth {
max-requests 127;
request-cleanup-delay 2;
detail yes;
strip-names yes;
checkrad-assume-logged yes;
};
acct {
max-requests 127;
request-cleanup-delay 2;
};
rewrite {
load "checknas.rw";
load "log-hook.rw";
};
# snmp {
# listen no;
# };
__________________________________-
users:
# This is the users database.
DEFAULT Auth-Type = Local, Password-Location = SQL
Service-Type = Framed-User,
Framed-Protocol = PPP,

__________________________________

в шестой строке, на которую он ругается, нет ни чего кроме бита конца файла (EOF)...
sqlserver:
#
interface postgres
login vpn
password HGVPN
keepopen yes
idle_timeout 14400
doauth yes
auth_max_connections 24
auth_db vpn
#
auth_query select passwd from users where user_name='%u' AND active = TRUE and get_traffic_limit('%u') >= 0
reply_attr_query SELECT attr,param \
FROM users_attribute \
WHERE op IS NULL AND user_name='%u'
doacct yes
acct_max_connections 24
acct_db vpn
acct_start_query INSERT INTO stat(user_name,start,ip,frm,acct_s_id,pid,update) \
VALUES('%u','%D','%C{Framed-IP-Address}', \
'%C{Calling-Station-Id}','%C{Acct-Session-Id}','%C{Login-Service}','%D')
acct_alive_query UPDATE stat \
SET tm = %C{Acct-Session-Time}, \
update = '%D', \
inp = %C{Acct-Input-Octets}, \
out = %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND acct_s_id = '%C{Acct-Session-Id}'
acct_stop_query UPDATE stat \
SET tm = %C{Acct-Session-Time}, \
update = '%D', \
stop = '%D', \
inp = %C{Acct-Input-Octets}, \
out = %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND acct_s_id = '%C{Acct-Session-Id}'; \
UPDATE users_attribute \
SET param = INT8(param) - %C{Acct-Input-Octets} - %C{Acct-Output-Octets} \
WHERE user_name = '%u' AND attr = 'Traffic-Limit'; \
UPDATE users \
SET active = false WHERE get_traffic_limit('%u') <= 0 AND user_name = '%u'; \
SELECT check_lost('%u')
______________________________

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

sergey_m

> народ что не так?...
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/users:6: parse error

spirinale

в шестой строке, на которую он ругается, нет ни чего кроме бита конца файла (EOF)...
зопятая в конце пятой строчки должна присутствовать?

huyabla

а по твоему её там нет?..

huyabla

даже если и нет сносил я её...
фишка не в этом... я не в настройке радиуса ни в в его сообщениях об ошибках не рублю ни разом...
что вообще означают parse error и is obsolete?...

sergey_m

parse
obsolete

huyabla

пасиб глеб... значение слов я уже смотрел... мне бы в контексте поточней... с проблемой в узерс разобрался я а вот sqlserver до сих пор криво написан...

sergey_m

Кстати, а почему не freeradius?

huyabla

я же сказал они для меня все на одно лицо... ибо я не рублю в них ни разом... весь конфиг взят из одной из статей на www.opennet.ru ... тока не фига не выходит... занялся я этим из общего развития, дабы привыкнуть к осваемой ОС... да тока вот до её освоения далеко ашо ...

spirinale

судя по этим ошибкам
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver:10: auth_max_connections is obsolete
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver:21: acct_max_connections is obsolete
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `server' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `group_query' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `acct_nasdown_query' statement
Apr 18 07:32:06 [2570]: /usr/local/etc/raddb/sqlserver: missing `acct_nasup_query' statement
Apr 18 07:32:06 [2570]: disabling SQL authentication
Apr 18 07:32:06 [2570]: disabling SQL accounting
тебе стоит посмотреть на следующее:
GNU Radius Reference Manual (там все с примерами/темплатами)
server string 
Specifies the hostname or IP address of the SQL server.

group_query string
Specifies the query that retrieves the list of user groups the user belongs to.
This query is used when Group or Group-Name attribute appears in the LHS
of a user's or hint's profile.

acct_nasup_query string
Specifies the SQL query to be used upon arrival of an Accounting Off Packet.

acct_nasdown_query string
Specifies the SQL query to be used when a NAS sends Accounting On Packet.

sergey_m

Тогда лучше займись FreeRADIUS. Он считается лутшым нах.

huyabla

выбор есть только тогда когда ты можешь почувствовать и осознать разницу... а пока надо научиться понимать хоть какой нить...
Оставить комментарий
Имя или ник:
Комментарий: