I use Freeradius + CoovaChilli + Nginx + Ubuntu.
I nicely configured the Freeradius and everything is working fine.. Except that ChilliSpot-Max-Total-Octets terminate the session after 1 117 000 000 octets used by the Mac address but the Username can log in again.
I was expecting that the Username cannot login until he waits daily reset.
Is it due to the Unique ID session ?
In /etc/freeradius/sql/mysql/counter.php
sqlcounter chillispot_max_bytes {
counter-name = ChilliSpot-Max-Total-Octets
check-name = ChilliSpot-Max-Total-Octets
reply-name = ChilliSpot-Max-Total-Octets
reply-message = "C'est pas bien de trop télécharger !!"
sqlmod-inst = sql
key = User-Name
reset = daily
query = "SELECT SUM(AcctInputOctets) + SUM(AcctOutputOctets) FROM
radac$
}
In /etc/freeradius/site-enabled/default
Authorize
{
...
#
# Counters for Chillispot
#
chillispot_max_bytes
daily
...
}
Second problem similar:
Daily limit : I set up a Session-time end that works perfectly but I would like to have a OFF period daily.
sqlcounter dailycounter {
counter-name = Daily-Session-Time
check-name = Max-Daily-Session
reply-name = Session-Timeout
reply-message = "You've used up more than one hour today"
sqlmod-inst = sql
key = User-Name
reset = daily
# This query ignores calls that started in a previous
# reset period and continue into into this one. But it
# is a little easier on the SQL server
query = "SELECT SUM(acctsessiontime) FROM radacct WHERE \
username = '%{%k}' AND acctstarttime > FROM_UNIXTIME('%b')"
}
Dictionnary :
$INCLUDE /usr/share/freeradius/dictionary
$INCLUDE /usr/share/freeradius/dictionary.chillispot
ATTRIBUTE Max-Daily-Session 30011 integer
ATTRIBUTE chillispot_max_bytes 3010 integer
Any idea ?
I was thinking about creating some User group, but I am not sure how to manage that with Radius.
Thank you