实际上我通过mysql获得了AAA,一切都很好。特别是使用最大每日会话属性在连接10分钟(600秒)后断开用户连接。我最近改变了authenticazione使用自定义php脚本的方式。在启用/默认文件的站点中:
authorize{
update control {
Auth-Type := `/usr/bin/php -f /etc/raddb/yourscript.php '%{User-Name}' '%{User-Password}' '%{Client-IP-Address}'`
}
在/etc/freeradius/users:
DEFAULT Auth-Type = Accept
Exec-Program-Wait = "/usr/bin/php -f /etc/raddb/attributes.php '%{User-Name}' '%{User-Password}' '%{Client-IP-Address}'"
在attributes.php中:
<?php
$User = $argv[1];
$Pass = $argv[2];
$Ip = $argv[3];
if ($User == "test")
echo "Max-Daily-Session:=600";
?>
服务器似乎不关心最大每日会话属性,也不发送断开连接的数据包。mysql和自定义身份验证之间有什么变化?
你的nas是什么?radius会话超时的方法是:
- user nas登录radius
- radius向nas回复
Session-Timeout 600s
- 600s后,nas断开用户A的连接。不是radius向nas发送断开连接的数据包
您应该使用属性Session-Timeout := 600
。