----- ====== FreeRADIUS - Dynamic Clients ====== ===== Introduction ===== * The preferred option to define RADIUS clients in RADIUSdesk makes use of the dynamic_clients module. * This module engage the **dynamic-clients** site to load the clients as they make contact with the server provided that their shared secret is correct. * See the cofing of **dynamic-clients** client dymamic { ipaddr = 0.0.0.0/0 dynamic_clients = dynamic_clients lifetime = 3600 } server dynamic_clients { authorize { if ("%{sql: SELECT nasname FROM nas WHERE nasname = '%{Packet-Src-IP-Address}'}") { update control { FreeRADIUS-Client-IP-Address = "%{Packet-Src-IP-Address}" FreeRADIUS-Client-Shortname = "%{sql: SELECT shortname FROM nas WHERE nasname = '%{Packet-Src-IP-Address}'}" FreeRADIUS-Client-Secret = "%{sql: SELECT secret FROM nas WHERE nasname = '%{Packet-Src-IP-Address}'}" FreeRADIUS-Client-NAS-Type = "%{sql: SELECT type FROM nas WHERE nasname = '%{Packet-Src-IP-Address}'}" FreeRADIUS-Client-Require-MA = no } } else{ update control { #--RADIUSdesk : Change secret to something more secure. This is server wide--# FreeRADIUS-Client-Secret = "testing123" FreeRADIUS-Client-IP-Address = "%{Packet-Src-IP-Address}" FreeRADIUS-Client-Require-MA = no FreeRADIUS-Client-Shortname = "%{Packet-Src-IP-Address}" FreeRADIUS-Client-NAS-Type = "other" # FreeRADIUS-Client-Virtual-Server = "radiusdesk-plain" FreeRADIUS-Client-Virtual-Server = "default" } } ok } }