I have a task to allocate browsing time 2hrs per day to students in our computer labs.
Logs from radius in debug mode says "res is greater than zero" users are not signed out after Max-Daily-Session is reached.
I want to be able to disconnect a user logged in after they have reached their maximum daily session.
Kindly find below config files which indicate maximum daily session of 120 seconds for testing purposes.
I have searched through Freeradius's mailing-List but have not found solution yet. I will be grateful for help to resolve the problem.
Thank you for help.
######################################################################
/etc/raddb/radius.conf
######################################################################
counter daily {
filename = ${raddbdir}/db.daily
key = User-Name
count-attribute = Acct-Session-Time
reset = daily
counter-name = Daily-Session-Time
check-name = Max-Daily-Session
allowed-servicetype = Framed-User
cache-size = 5000
}
instantiate {
exec
expr
daily
}
authorize {
preprocess
mschap
suffix
eap
files
sql
daily
}
authenticate {
Auth-Type PAP {
pap
}
Auth-Type CHAP {
chap
}
Auth-Type MS-CHAP {
mschap
}
unix
eap
}
#######################################################################
/etc/raddb/users
#######################################################################
clare Max-Daily-Session:=120, User-Password := "password"
#########################################################################
Dubug output
#########################################################################
rlm_counter: Check item = 120, Count = 0
rlm_counter: res is greater than zero
rlm_counter: (Check item - counter) is greater than zero
rlm_counter: Authorized user clare, check_item=120, counter=0
rlm_counter: Sent Reply-Item for user clare, Type=Session-Timeout, value=120
modcall[authorize]: module "daily" returns ok for request 8