Slight issue after having migrated to v3.0.10 from v2.5

Bertalan Voros bertalan.voros at gmail.com
Thu Nov 5 18:28:58 CET 2015


It was staring me in the eye.
                if*(!"%{sql_mac:SELECT COUNT(*) FROM arguswifi.macaddress
WHERE mac = '%{Calling-Station-ID}'}" == 1)*{
                        reject
                }



On Thu, 5 Nov 2015 at 16:54 Bertalan Voros <bertalan.voros at gmail.com> wrote:

> Hello All,
>
> I have just migrated our existing v2.5 server's config to a new one using
> the most recent stable version.
>
> The migration was done by editing each configuration file one by one, none
> of the files were directly copied.
>
> All is well, everything appears to be working as expected apart from one
> slight problem.
>
> There is a mac address check in the Authorize section that doesn't seem to
> take effect any more. Nobody gets rejected.
>
> Code and debug log below. I know it might be staring me in the eye but has
> been unable to find what could be causing it.
>
> Code:
>         if (Called-Station-ID =~ /:SSID-Here$/) {
>                 rewrite_calling_station_id
>                 if(!"%{sql_mac:SELECT COUNT(*) FROM wifi.macaddress WHERE
> mac = '%{Calling-Station-ID}' = 1}"){
>                         reject
>                 }
>         }
>
> Debug log:
> (991) Received Access-Request Id 39 from 10.x.x.x:40001 to 10.11.0.83:1812
> length 170
> (991)   User-Name = "Nexus7xx"
> (991)   NAS-IP-Address =
> (991)   NAS-Port = 0
> (991)   Called-Station-Id = "02-18-4A-14-82-B0:SSID-Here"
> (991)   Calling-Station-Id = "BC-EE-7B-A3-6D-D9"
> (991)   Framed-MTU = 1400
> (991)   NAS-Port-Type = Wireless-802.11
> (991)   Connect-Info = "CONNECT 0Mbps 802.11b"
> (991)   EAP-Message = 0x02b800061900
> (991)   State = 0xc63b617ec58378d04d8f1ca50d306f26
> (991)   Message-Authenticator = 0x16faf8f9d4f9b38c39415aee
> (991) session-state: No cached attributes
> (991) # Executing section authorize from file
> /etc/freeradius/sites-enabled/default
> (991)   authorize {
> (991)     policy filter_username {
> (991)       if (!&User-Name) {
> (991)       if (!&User-Name)  -> FALSE
> (991)       if (&User-Name =~ / /) {
> (991)       if (&User-Name =~ / /)  -> FALSE
> (991)       if (&User-Name =~ /@.*@/ ) {
> (991)       if (&User-Name =~ /@.*@/ )  -> FALSE
> (991)       if (&User-Name =~ /\.\./ ) {
> (991)       if (&User-Name =~ /\.\./ )  -> FALSE
> (991)       if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
> (991)       if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))
> -> FALSE
> (991)       if (&User-Name =~ /\.$/)  {
> (991)       if (&User-Name =~ /\.$/)   -> FALSE
> (991)       if (&User-Name =~ /@\./)  {
> (991)       if (&User-Name =~ /@\./)   -> FALSE
> (991)     } # policy filter_username = notfound
> (991)     [preprocess] = ok
> (991)     if (Called-Station-ID =~ /:SSID-Here$/) {
> (991)     if (Called-Station-ID =~ /:SSID-Here$/)  -> TRUE
> (991)     if (Called-Station-ID =~ /:SSID-Here$/)  {
> (991)       policy rewrite_calling_station_id {
> (991)         if (Calling-Station-Id =~
> /([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})/i){
> (991)         if (Calling-Station-Id =~
> /([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})/i)
> -> TRUE
> (991)         if (Calling-Station-Id =~
> /([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})/i)
> {
> (991)           update request {
> (991)             EXPAND %{tolower:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
> (991)                --> bc-ee-7b-a3-6d-d9
> (991)             Calling-Station-Id := bc-ee-7b-a3-6d-d9
> (991)           } # update request = noop
> (991)         } # if (Calling-Station-Id =~
> /([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})[-:]?([0-9a-f]{2})/i)
> = noop
> (991)         ... skipping else for request 991: Preceding "if" was taken
> (991)       } # policy rewrite_calling_station_id = noop
> (991)       if (!"%{sql_mac:SELECT COUNT(*) FROM wifi.macaddress WHERE mac
> = '%{Calling-Station-ID}' = 1}"){
> rlm_sql (sql_mac): Reserved connection (13)
> (991)       Executing select query: SELECT COUNT(*) FROM wifi.macaddress
> WHERE mac = 'bc-ee-7b-a3-6d-d9' = 1
> rlm_sql (sql_mac): Released connection (13)
> (991)       EXPAND %{sql_mac:SELECT COUNT(*) FROM wifi.macaddress WHERE
> mac = '%{Calling-Station-ID}' = 1}
> (991)          --> 0
> (991)       if (!"%{sql_mac:SELECT COUNT(*) FROM wifi.macaddress WHERE mac
> = '%{Calling-Station-ID}' = 1}") -> FALSE
> (991)     } # if (Called-Station-ID =~ /:SSID-Here$/)  = noop
> (991)     [mschap] = noop
> (991)     if (!EAP-Message) {
> (991)     if (!EAP-Message)  -> FALSE
> (991) eap: Peer sent EAP Response (code 2) ID 184 length 6
> (991) eap: Continuing tunnel setup
> (991)     [eap] = ok
> (991)   } # authorize = ok
>
>


More information about the Freeradius-Users mailing list