经过反复的测试,终于发现问题所在。
其实并非在fedora意外关机或断电后,会让已登陆的帐号永久锁死无法再次登陆(前提Simultaneous-Use=1),而是因为意外的关机会让chilli 和radiusd 同时被Kill,其实只要chilli先于radiusd终止,radius就会记录terminate cause=NAS reboot,而正常断开所有已联接帐户。反之,则radius无法收到chillispot被终止的请求。一切的根源都在于radius会记录已登陆的帐号信息到/var/log/radius/radutmp中,这正是radius判断用户是否登陆的依据,可想而知,radiusd的提前退出,会造成radutmp中一直留有在线信息,当然无法登陆了。
所以,一切都是如此简单。
rc.local中写入 radzap -N 0 localhost testing123
便在系统启动时删除了radutmp中所有从IP=0 的NAS登陆的帐号。OK!
残留一个问题,锁死帐号在这样解锁后,AcctStopTime便是Fedora再次开机的时间了,而不是上次关机的时间,试想,关机若长达3天,那么这个用户就会在线3天,计费3天,天哪,这个问题以后再说。
vindo 于 2008-10-28 15:51:52发表:
转载请注明出处 谢谢
原文http://cid-8274acb9b1aefca5.spaces.live.com/blog/cns!8274ACB9B1AEFCA5!123.entry