Mikrotik 和 Freeradius(用户时间限制)

Mikrotik 和 Freeradius(用户时间限制)

我正在使用 freeradius 来验证通过 mikrotik routerboard 访问互联网的用户。

我想在 mysql 数据库中设置默认时间段内的最大时间限制。例如,我想允许用户在一周内的总连接时间为 7 小时。我应该在数据库的哪个字段中交替使用哪些值。

我用于实现的参考指南是这里

我尝试在数据库的组回复表中使用各种变量,并在测试中得到了答复,但可能我使用了错误的变量,例如 Session-Time = 60 只是每 60 秒重置一次会话(仅用于测试)而不是断开用户的连接。

答案1

会话时间将设置会话可能需要的最长时间。这不考虑其他规则,例如一天或一周的最长时间。您需要比 RADIUS 回复中的属性更多的逻辑。

需要有状态存储来跟踪用户的使用时间。RADIUS 计费足以满足此目的。例如,在 MySQL 中存储计费数据时,您可以查询一段时间内已使用的会话时间,以计算即将到来的会话的新会话时间。

FreeRADIUS 具有用于此目的的模块:sql计数器柜台. 文档涵盖了实施示例。

相关内容