2016-04-01 6 views
0

Eigentlich habe ich AAA von MySQL und alles funktioniert gut. Vor allem die Verwendung Max-Daily-Session Attribut, um den Benutzer nach 10min (600sec) Verbindung zu trennen. Ich habe kürzlich den Weg authenticazione mit einem benutzerdefinierten PHP-Skript geändert. In sites-enabled/default file:Freeradius Max-Daily-Session in benutzerdefinierte Authentifizierung

authorize{ 
update control { 
    Auth-Type := `/usr/bin/php -f /etc/raddb/yourscript.php '%{User-Name}' '%{User-Password}' '%{Client-IP-Address}'` 
} 

in/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}'" 

In attributes.php:

<?php 
$User = $argv[1]; 
$Pass = $argv[2]; 
$Ip = $argv[3]; 
if ($User == "test") 
    echo "Max-Daily-Session:=600"; 
?> 

Es scheint, dass der Server nicht der Fall ist kümmert sich um das Max-Daily-Session-Attribut und sendet nicht das Packet of Disconnect. Was ändert sich zwischen mysql und der benutzerdefinierten Authentifizierung?

Antwort

0

Was ist deine Nas? Verfahren nach Radius Session-Timeout ist:

  1. Benutzer A Anmeldung von nas
  2. Radius Antwort Session-Timeout 600s zum Radius
  3. nach 600S Nas, nas trennen Benutzers A. Es ist der Radius nicht Packet von Disconnect senden Nas.

Sie sollten das Attribut Session-Timeout := 600 verwenden.

Verwandte Themen