freeradius disconnect user using accounting

Leandro Melo - Netsul Telecom leandromelo at netsulinternet.com.br
Tue Apr 7 20:52:38 CEST 2015


dear,

 

use FreeRADIUS Version 2.1.12 and mikrotik as hub, set up the interim update
for 10 seconds (for testing) so that the radius can drop the connection when
the time is reached.

set up the / etc / raddb / sites-avaliable / default to

 

accounting {

detail

unix

radutmp

sqlippool

         sql1

exec

         if ("% {Acct-Session-Time}"> 30) {

           reject

}

attr_filter.accounting_response

}

 

but the log returned by radius if he enters, but drops the connection, what
command to derrumar the connection and return a "reply-message" to the hub?

 

follows the log:

 

...

[sql1]  expand: UPDATE radacct   SET FramedIPAddress =
NULLIF('%{Framed-IP-Address}', '')::inet,   AcctSessionTime =
'%{Acct-Session-Time}',   AcctInputOctets =
(('%{%{Acct-Input-Gigawords}:-0}'::bigint << 32) +
'%{%{Acct-Input-Octets}:-0}'::bigint),   AcctOutputOctets =
(('%{%{Acct-Output-Gigawords}:-0}'::bigint << 32) +
'%{%{Acct-Output-Octets}:-0}'::bigint)   WHERE AcctSessionId =
'%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}'   AND NASIPAddress=
'%{NAS-IP-Address}' AND AcctStopTime IS NULL -> UPDATE radacct   SET
FramedIPAddress = NULLIF('192.168.95.101', '')::inet,   AcctSessionTime =
'1101',   AcctInputOctets = (('0'::bigint << 32) + '211907'::bigint),
AcctOutputOctets = (('0'::bigint << 32) + '407325'::bigint)   WHERE
AcctSessionId = '81c00012' AND UserName = 'teste1'   AND NASIPAddress=
'192.168.1.41' AND AcctStopTime IS NULL

rlm_sql (sql1): Reserving sql socket id: 0

rlm_sql_postgresql: Status: PGRES_COMMAND_OK

rlm_sql_postgresql: query affected rows = 1

rlm_sql (sql1): Released sql socket id: 0

++[sql1] returns ok

++[exec] returns noop

++? if ("%{Acct-Session-Time}" > 30)

        expand: %{Acct-Session-Time} -> 1101

? Evaluating ("%{Acct-Session-Time}" > 30) -> TRUE

++? if ("%{Acct-Session-Time}" > 30) -> TRUE

++- entering if ("%{Acct-Session-Time}" > 30) {...}

+++- if ("%{Acct-Session-Time}" > 30) returns noop

++- group accounting returns noop

[attr_filter.accounting_response]   expand: %{User-Name} -> teste1

attr_filter: Matched entry DEFAULT at line 12

++[attr_filter.accounting_response] returns updated

Sending Accounting-Response of id 232 to 10.0.2.2 port 37115

Finished request 21.

...

 

Att,

 



 



More information about the Freeradius-Users mailing list