AD Group Check - multi SSID - Pass "Require-membership-of" to NTLM_AUTH as variable.

Pierre de Jong pierredejong at gmail.com
Mon Jan 30 08:01:56 CET 2017


Hi all,

I am trying to set up a FreeRadius (v3.12 on debian8) to authenticate
against MS Active Directory, with AD group membership requierement for
"multiple SSID".

So, for exemple, SSID-Corp-Employee is only accessible to a certain users,
member of ADgroupA , and SSID-Corp-Direction, only accessible to users,
member of ADgroupB

When only authenticating with 1 single AD group, there is no problem, the :

> ntlm_auth = "/usr/bin/ntlm_auth --request-nt-key
> --require-membership-of=GALAXY\rad01 --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}}
> --domain=%{%{mschap:NT-Domain}:-GALAXY.PRIV}
> --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Re
> sponse}:-00}"

does the trick...

So, what I thaught could be the easiest way, is to pass the
"--require-membership-of=" as parameter... and even more, that AD group
would be the same as the SSID ...

So, when a new SSID is created, no need to change any in the freeradius,
just create the AD group according to the SSID, and ... that's it.

i put this in the Authorize section of "DEFAULT" and "inner-tunnel", just
after the "filter_username"

############################################################
#############################
rewrite_called_station_id
if (&Called-Station-SSID == "rad01") {
        update request {
            NTLM-Group-Required := "GALAXY\rad01"
User-Name := "pierre"
        }
   }
    elsif (%Called-Station-SSID == "RAD02") {
        update request {
            NTLM-Group-Required := "GALAXY\RAD02"
        }
    }

############################################################
#############################


It seems that it's parsed correct:

# policy rewrite_called_station_id = updated
(76)     if (&Called-Station-SSID == "rad01") {
(76)     if (&Called-Station-SSID == "rad01")  -> TRUE
(76)     if (&Called-Station-SSID == "rad01")  {
(76)       update request {
(76)         NTLM-Group-Required := "GALAXY\rad01"

and my "NTLM_Auth" is the:

ntlm_auth = "/usr/bin/ntlm_auth --request-nt-key
> --require-membership-of=%NTLM-Group-Required
> --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}}
> --domain=%{%{mschap:NT-Domain}:-GALAXY.PRIV}
> --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Re
> sponse}:-00}"


but it does not work... for information, if I replace  %NTLM-Group-Required
by GALAXY\rad01  it does work correct.

Is there any way someone could give me advice on how to achieve this... or
any other way to achieve this ?

Of course, needless to say, I am no expert in "FreeRadius", so, please,
excuses me if it's not the way to go, or if my assomption are wrond

Thanks in advance for your reading and your time.

I have join to the mail a attached file with "a radiusd -X" session.... (No
idea if "attached files pass... sorry, not used the mailling list much so
fare :-D )

Pierre de Jong
-------------- next part --------------
Ready to process requests
(0) Received Access-Request Id 227 from 10.2.103.4:40014 to 10.2.103.8:1812 length 158
(0)   User-Name = "pierre"
(0)   NAS-Identifier = "44d9e7fc21c1"
(0)   NAS-Port = 0
(0)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(0)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(0)   Framed-MTU = 1400
(0)   NAS-Port-Type = Wireless-802.11
(0)   Connect-Info = "CONNECT 0Mbps 802.11b"
(0)   EAP-Message = 0x02cf000b01706965727265
(0)   Message-Authenticator = 0x1ff9a6a599dadec46b7d48157c55dd3b
(0) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(0)   authorize {
(0)     policy filter_username {
(0)       if (&User-Name) {
(0)       if (&User-Name)  -> TRUE
(0)       if (&User-Name)  {
(0)         if (&User-Name =~ / /) {
(0)         if (&User-Name =~ / /)  -> FALSE
(0)         if (&User-Name =~ /@[^@]*@/ ) {
(0)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(0)         if (&User-Name =~ /\.\./ ) {
(0)         if (&User-Name =~ /\.\./ )  -> FALSE
(0)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(0)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(0)         if (&User-Name =~ /\.$/)  {
(0)         if (&User-Name =~ /\.$/)   -> FALSE
(0)         if (&User-Name =~ /@\./)  {
(0)         if (&User-Name =~ /@\./)   -> FALSE
(0)       } # if (&User-Name)  = notfound
(0)     } # policy filter_username = notfound
(0)     policy rewrite_called_station_id {
(0)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(0)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(0)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(0)         update request {
(0)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(0)              --> 56-D9-E7-FE-21-C1
(0)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(0)         } # update request = noop
(0)         if ("%{8}") {
(0)         EXPAND %{8}
(0)            --> rad01
(0)         if ("%{8}")  -> TRUE
(0)         if ("%{8}")  {
(0)           update request {
(0)             EXPAND %{8}
(0)                --> rad01
(0)             &Called-Station-SSID := rad01
(0)           } # update request = noop
(0)         } # if ("%{8}")  = noop
(0)         [updated] = updated
(0)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(0)       ... skipping else: Preceding "if" was taken
(0)     } # policy rewrite_called_station_id = updated
(0)     if (&Called-Station-SSID == "rad01") {
(0)     if (&Called-Station-SSID == "rad01")  -> TRUE
(0)     if (&Called-Station-SSID == "rad01")  {
(0)       update request {
(0)         NTLM-Group-Required := "GALAXY\rad01"
(0)         User-Name := "pierre"
(0)       } # update request = noop
(0)     } # if (&Called-Station-SSID == "rad01")  = noop
(0)     ... skipping elsif: Preceding "if" was taken
(0)     [preprocess] = ok
(0)     [chap] = noop
(0)     [mschap] = noop
(0)     [digest] = noop
(0) suffix: Checking for suffix after "@"
(0) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(0) suffix: No such realm "NULL"
(0)     [suffix] = noop
(0) eap: Peer sent EAP Response (code 2) ID 207 length 11
(0) eap: EAP-Identity reply, returning 'ok' so we can short-circuit the rest of authorize
(0)     [eap] = ok
(0)   } # authorize = ok
(0) Found Auth-Type = eap
(0) # Executing group from file /etc/freeradius/sites-enabled/default
(0)   authenticate {
(0) eap: Peer sent packet with method EAP Identity (1)
(0) eap: Calling submodule eap_peap to process data
(0) eap_peap: Initiating new EAP-TLS session
(0) eap_peap: Flushing SSL sessions (of #0)
(0) eap_peap: [eaptls start] = request
(0) eap: Sending EAP Request (code 1) ID 208 length 6
(0) eap: EAP session adding &reply:State = 0xb35f3ca7b38f259c
(0)     [eap] = handled
(0)   } # authenticate = handled
(0) Using Post-Auth-Type Challenge
(0) Post-Auth-Type sub-section not found.  Ignoring.
(0) # Executing group from file /etc/freeradius/sites-enabled/default
(0) Sent Access-Challenge Id 227 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(0)   EAP-Message = 0x01d000061920
(0)   Message-Authenticator = 0x00000000000000000000000000000000
(0)   State = 0xb35f3ca7b38f259c2c1a966e4e8d8fb9
(0) Finished request
Waking up in 4.9 seconds.
(1) Received Access-Request Id 228 from 10.2.103.4:40014 to 10.2.103.8:1812 length 333
(1)   User-Name = "pierre"
(1)   NAS-Identifier = "44d9e7fc21c1"
(1)   NAS-Port = 0
(1)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(1)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(1)   Framed-MTU = 1400
(1)   NAS-Port-Type = Wireless-802.11
(1)   Connect-Info = "CONNECT 0Mbps 802.11b"
(1)   EAP-Message = 0x02d000a819800000009e16030100990100009503038732e549c9cb2ba64d9daf9fb679fd3a4cdcb07930744efd664f513dd3900e4e00003cc02cc030009fc02bc02f009ec00ac024c014c0280039006bc009c023c013c02700330067c007c011009d009c0035003d002f003c00050004000a00ff010000
(1)   State = 0xb35f3ca7b38f259c2c1a966e4e8d8fb9
(1)   Message-Authenticator = 0xdb5dc55b8e7445e26d2fb9693d4dbc54
(1) session-state: No cached attributes
(1) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(1)   authorize {
(1)     policy filter_username {
(1)       if (&User-Name) {
(1)       if (&User-Name)  -> TRUE
(1)       if (&User-Name)  {
(1)         if (&User-Name =~ / /) {
(1)         if (&User-Name =~ / /)  -> FALSE
(1)         if (&User-Name =~ /@[^@]*@/ ) {
(1)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(1)         if (&User-Name =~ /\.\./ ) {
(1)         if (&User-Name =~ /\.\./ )  -> FALSE
(1)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(1)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(1)         if (&User-Name =~ /\.$/)  {
(1)         if (&User-Name =~ /\.$/)   -> FALSE
(1)         if (&User-Name =~ /@\./)  {
(1)         if (&User-Name =~ /@\./)   -> FALSE
(1)       } # if (&User-Name)  = notfound
(1)     } # policy filter_username = notfound
(1)     policy rewrite_called_station_id {
(1)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(1)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(1)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(1)         update request {
(1)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(1)              --> 56-D9-E7-FE-21-C1
(1)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(1)         } # update request = noop
(1)         if ("%{8}") {
(1)         EXPAND %{8}
(1)            --> rad01
(1)         if ("%{8}")  -> TRUE
(1)         if ("%{8}")  {
(1)           update request {
(1)             EXPAND %{8}
(1)                --> rad01
(1)             &Called-Station-SSID := rad01
(1)           } # update request = noop
(1)         } # if ("%{8}")  = noop
(1)         [updated] = updated
(1)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(1)       ... skipping else: Preceding "if" was taken
(1)     } # policy rewrite_called_station_id = updated
(1)     if (&Called-Station-SSID == "rad01") {
(1)     if (&Called-Station-SSID == "rad01")  -> TRUE
(1)     if (&Called-Station-SSID == "rad01")  {
(1)       update request {
(1)         NTLM-Group-Required := "GALAXY\rad01"
(1)         User-Name := "pierre"
(1)       } # update request = noop
(1)     } # if (&Called-Station-SSID == "rad01")  = noop
(1)     ... skipping elsif: Preceding "if" was taken
(1)     [preprocess] = ok
(1)     [chap] = noop
(1)     [mschap] = noop
(1)     [digest] = noop
(1) suffix: Checking for suffix after "@"
(1) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(1) suffix: No such realm "NULL"
(1)     [suffix] = noop
(1) eap: Peer sent EAP Response (code 2) ID 208 length 168
(1) eap: Continuing tunnel setup
(1)     [eap] = ok
(1)   } # authorize = ok
(1) Found Auth-Type = eap
(1) # Executing group from file /etc/freeradius/sites-enabled/default
(1)   authenticate {
(1) eap: Expiring EAP session with state 0xb35f3ca7b38f259c
(1) eap: Finished EAP session with state 0xb35f3ca7b38f259c
(1) eap: Previous EAP request found for state 0xb35f3ca7b38f259c, released from the list
(1) eap: Peer sent packet with method EAP PEAP (25)
(1) eap: Calling submodule eap_peap to process data
(1) eap_peap: Continuing EAP-TLS
(1) eap_peap: Peer indicated complete TLS record size will be 158 bytes
(1) eap_peap: Got complete TLS record (158 bytes)
(1) eap_peap: [eaptls verify] = length included
(1) eap_peap: (other): before/accept initialization
(1) eap_peap: TLS_accept: before/accept initialization
(1) eap_peap: <<< recv TLS 1.2  [length 0099]
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: >>> send TLS 1.2  [length 0059]
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: >>> send TLS 1.2  [length 08d3]
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: >>> send TLS 1.2  [length 014d]
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: >>> send TLS 1.2  [length 0004]
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: TLS_accept: unknown state
(1) eap_peap: TLS_accept: Need to read more data: unknown state
(1) eap_peap: TLS_accept: Need to read more data: unknown state
(1) eap_peap: In SSL Handshake Phase
(1) eap_peap: In SSL Accept mode
(1) eap_peap: [eaptls process] = handled
(1) eap: Sending EAP Request (code 1) ID 209 length 1004
(1) eap: EAP session adding &reply:State = 0xb35f3ca7b28e259c
(1)     [eap] = handled
(1)   } # authenticate = handled
(1) Using Post-Auth-Type Challenge
(1) Post-Auth-Type sub-section not found.  Ignoring.
(1) # Executing group from file /etc/freeradius/sites-enabled/default
(1) Sent Access-Challenge Id 228 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(1)   EAP-Message = 0x01d103ec19c000000a9116030300590200005503032747dfd00ab4276a30db125f86919e2eeeca73193f140276200b3c4410da807b208b28f44d19a58e3ffeff69974ef14fa5e334ee8105936640efadc616e989ec09c03000000dff01000100000b00040300010216030308d30b0008cf0008cc0003de
(1)   Message-Authenticator = 0x00000000000000000000000000000000
(1)   State = 0xb35f3ca7b28e259c2c1a966e4e8d8fb9
(1) Finished request
Waking up in 4.9 seconds.
(2) Received Access-Request Id 229 from 10.2.103.4:40014 to 10.2.103.8:1812 length 171
(2)   User-Name = "pierre"
(2)   NAS-Identifier = "44d9e7fc21c1"
(2)   NAS-Port = 0
(2)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(2)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(2)   Framed-MTU = 1400
(2)   NAS-Port-Type = Wireless-802.11
(2)   Connect-Info = "CONNECT 0Mbps 802.11b"
(2)   EAP-Message = 0x02d100061900
(2)   State = 0xb35f3ca7b28e259c2c1a966e4e8d8fb9
(2)   Message-Authenticator = 0xab46f30e16a4884c6ea6cf1b064a1896
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(2)   authorize {
(2)     policy filter_username {
(2)       if (&User-Name) {
(2)       if (&User-Name)  -> TRUE
(2)       if (&User-Name)  {
(2)         if (&User-Name =~ / /) {
(2)         if (&User-Name =~ / /)  -> FALSE
(2)         if (&User-Name =~ /@[^@]*@/ ) {
(2)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(2)         if (&User-Name =~ /\.\./ ) {
(2)         if (&User-Name =~ /\.\./ )  -> FALSE
(2)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(2)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(2)         if (&User-Name =~ /\.$/)  {
(2)         if (&User-Name =~ /\.$/)   -> FALSE
(2)         if (&User-Name =~ /@\./)  {
(2)         if (&User-Name =~ /@\./)   -> FALSE
(2)       } # if (&User-Name)  = notfound
(2)     } # policy filter_username = notfound
(2)     policy rewrite_called_station_id {
(2)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(2)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(2)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(2)         update request {
(2)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(2)              --> 56-D9-E7-FE-21-C1
(2)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(2)         } # update request = noop
(2)         if ("%{8}") {
(2)         EXPAND %{8}
(2)            --> rad01
(2)         if ("%{8}")  -> TRUE
(2)         if ("%{8}")  {
(2)           update request {
(2)             EXPAND %{8}
(2)                --> rad01
(2)             &Called-Station-SSID := rad01
(2)           } # update request = noop
(2)         } # if ("%{8}")  = noop
(2)         [updated] = updated
(2)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(2)       ... skipping else: Preceding "if" was taken
(2)     } # policy rewrite_called_station_id = updated
(2)     if (&Called-Station-SSID == "rad01") {
(2)     if (&Called-Station-SSID == "rad01")  -> TRUE
(2)     if (&Called-Station-SSID == "rad01")  {
(2)       update request {
(2)         NTLM-Group-Required := "GALAXY\rad01"
(2)         User-Name := "pierre"
(2)       } # update request = noop
(2)     } # if (&Called-Station-SSID == "rad01")  = noop
(2)     ... skipping elsif: Preceding "if" was taken
(2)     [preprocess] = ok
(2)     [chap] = noop
(2)     [mschap] = noop
(2)     [digest] = noop
(2) suffix: Checking for suffix after "@"
(2) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(2) suffix: No such realm "NULL"
(2)     [suffix] = noop
(2) eap: Peer sent EAP Response (code 2) ID 209 length 6
(2) eap: Continuing tunnel setup
(2)     [eap] = ok
(2)   } # authorize = ok
(2) Found Auth-Type = eap
(2) # Executing group from file /etc/freeradius/sites-enabled/default
(2)   authenticate {
(2) eap: Expiring EAP session with state 0xb35f3ca7b28e259c
(2) eap: Finished EAP session with state 0xb35f3ca7b28e259c
(2) eap: Previous EAP request found for state 0xb35f3ca7b28e259c, released from the list
(2) eap: Peer sent packet with method EAP PEAP (25)
(2) eap: Calling submodule eap_peap to process data
(2) eap_peap: Continuing EAP-TLS
(2) eap_peap: Peer ACKed our handshake fragment
(2) eap_peap: [eaptls verify] = request
(2) eap_peap: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 210 length 1000
(2) eap: EAP session adding &reply:State = 0xb35f3ca7b18d259c
(2)     [eap] = handled
(2)   } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) Post-Auth-Type sub-section not found.  Ignoring.
(2) # Executing group from file /etc/freeradius/sites-enabled/default
(2) Sent Access-Challenge Id 229 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(2)   EAP-Message = 0x01d203e8194032fb76abbff22167647943d7bad0c4180db5579da5942956cdf7c83f3d5c3d0a5b5f750a5d2254f6258d6675ad2a4fcbc9878d6e09aa89edd155a681a4c446addfc0753ef0de32a89a9eb4a0d45dc24a95bf6e1feeb45cc516dabb148b0464a12f827fc9efc390d5310004e8308204e430
(2)   Message-Authenticator = 0x00000000000000000000000000000000
(2)   State = 0xb35f3ca7b18d259c2c1a966e4e8d8fb9
(2) Finished request
Waking up in 4.9 seconds.
(3) Received Access-Request Id 230 from 10.2.103.4:40014 to 10.2.103.8:1812 length 171
(3)   User-Name = "pierre"
(3)   NAS-Identifier = "44d9e7fc21c1"
(3)   NAS-Port = 0
(3)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(3)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(3)   Framed-MTU = 1400
(3)   NAS-Port-Type = Wireless-802.11
(3)   Connect-Info = "CONNECT 0Mbps 802.11b"
(3)   EAP-Message = 0x02d200061900
(3)   State = 0xb35f3ca7b18d259c2c1a966e4e8d8fb9
(3)   Message-Authenticator = 0x0df761451bd09c38e82561bc114d295b
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(3)   authorize {
(3)     policy filter_username {
(3)       if (&User-Name) {
(3)       if (&User-Name)  -> TRUE
(3)       if (&User-Name)  {
(3)         if (&User-Name =~ / /) {
(3)         if (&User-Name =~ / /)  -> FALSE
(3)         if (&User-Name =~ /@[^@]*@/ ) {
(3)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(3)         if (&User-Name =~ /\.\./ ) {
(3)         if (&User-Name =~ /\.\./ )  -> FALSE
(3)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(3)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(3)         if (&User-Name =~ /\.$/)  {
(3)         if (&User-Name =~ /\.$/)   -> FALSE
(3)         if (&User-Name =~ /@\./)  {
(3)         if (&User-Name =~ /@\./)   -> FALSE
(3)       } # if (&User-Name)  = notfound
(3)     } # policy filter_username = notfound
(3)     policy rewrite_called_station_id {
(3)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(3)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(3)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(3)         update request {
(3)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(3)              --> 56-D9-E7-FE-21-C1
(3)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(3)         } # update request = noop
(3)         if ("%{8}") {
(3)         EXPAND %{8}
(3)            --> rad01
(3)         if ("%{8}")  -> TRUE
(3)         if ("%{8}")  {
(3)           update request {
(3)             EXPAND %{8}
(3)                --> rad01
(3)             &Called-Station-SSID := rad01
(3)           } # update request = noop
(3)         } # if ("%{8}")  = noop
(3)         [updated] = updated
(3)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(3)       ... skipping else: Preceding "if" was taken
(3)     } # policy rewrite_called_station_id = updated
(3)     if (&Called-Station-SSID == "rad01") {
(3)     if (&Called-Station-SSID == "rad01")  -> TRUE
(3)     if (&Called-Station-SSID == "rad01")  {
(3)       update request {
(3)         NTLM-Group-Required := "GALAXY\rad01"
(3)         User-Name := "pierre"
(3)       } # update request = noop
(3)     } # if (&Called-Station-SSID == "rad01")  = noop
(3)     ... skipping elsif: Preceding "if" was taken
(3)     [preprocess] = ok
(3)     [chap] = noop
(3)     [mschap] = noop
(3)     [digest] = noop
(3) suffix: Checking for suffix after "@"
(3) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(3) suffix: No such realm "NULL"
(3)     [suffix] = noop
(3) eap: Peer sent EAP Response (code 2) ID 210 length 6
(3) eap: Continuing tunnel setup
(3)     [eap] = ok
(3)   } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/sites-enabled/default
(3)   authenticate {
(3) eap: Expiring EAP session with state 0xb35f3ca7b18d259c
(3) eap: Finished EAP session with state 0xb35f3ca7b18d259c
(3) eap: Previous EAP request found for state 0xb35f3ca7b18d259c, released from the list
(3) eap: Peer sent packet with method EAP PEAP (25)
(3) eap: Calling submodule eap_peap to process data
(3) eap_peap: Continuing EAP-TLS
(3) eap_peap: Peer ACKed our handshake fragment
(3) eap_peap: [eaptls verify] = request
(3) eap_peap: [eaptls process] = handled
(3) eap: Sending EAP Request (code 1) ID 211 length 723
(3) eap: EAP session adding &reply:State = 0xb35f3ca7b08c259c
(3)     [eap] = handled
(3)   } # authenticate = handled
(3) Using Post-Auth-Type Challenge
(3) Post-Auth-Type sub-section not found.  Ignoring.
(3) # Executing group from file /etc/freeradius/sites-enabled/default
(3) Sent Access-Challenge Id 230 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(3)   EAP-Message = 0x01d302d3190020417574686f72697479820900b4d7ec4991844547300f0603551d130101ff040530030101ff30360603551d1f042f302d302ba029a0278625687474703a2f2f7777772e6578616d706c652e6f72672f6578616d706c655f63612e63726c300d06092a864886f70d01010b050003820101
(3)   Message-Authenticator = 0x00000000000000000000000000000000
(3)   State = 0xb35f3ca7b08c259c2c1a966e4e8d8fb9
(3) Finished request
Waking up in 4.9 seconds.
(4) Received Access-Request Id 231 from 10.2.103.4:40014 to 10.2.103.8:1812 length 301
(4)   User-Name = "pierre"
(4)   NAS-Identifier = "44d9e7fc21c1"
(4)   NAS-Port = 0
(4)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(4)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(4)   Framed-MTU = 1400
(4)   NAS-Port-Type = Wireless-802.11
(4)   Connect-Info = "CONNECT 0Mbps 802.11b"
(4)   EAP-Message = 0x02d3008819800000007e1603030046100000424104b38da94cf6b538e9a702d09a9dd9c42911885a7b8804d36b4acbbf4859c6741dd7cfda9e5c613511218ac6bd51309bfb4b8537b991be1d93bc3ab4a448db0d7f140303000101160303002800000000000000009fb82bcc00778730b2a3d352604c27
(4)   State = 0xb35f3ca7b08c259c2c1a966e4e8d8fb9
(4)   Message-Authenticator = 0x22d199b5de9b5599dbcceeb450b56113
(4) session-state: No cached attributes
(4) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(4)   authorize {
(4)     policy filter_username {
(4)       if (&User-Name) {
(4)       if (&User-Name)  -> TRUE
(4)       if (&User-Name)  {
(4)         if (&User-Name =~ / /) {
(4)         if (&User-Name =~ / /)  -> FALSE
(4)         if (&User-Name =~ /@[^@]*@/ ) {
(4)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(4)         if (&User-Name =~ /\.\./ ) {
(4)         if (&User-Name =~ /\.\./ )  -> FALSE
(4)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(4)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(4)         if (&User-Name =~ /\.$/)  {
(4)         if (&User-Name =~ /\.$/)   -> FALSE
(4)         if (&User-Name =~ /@\./)  {
(4)         if (&User-Name =~ /@\./)   -> FALSE
(4)       } # if (&User-Name)  = notfound
(4)     } # policy filter_username = notfound
(4)     policy rewrite_called_station_id {
(4)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(4)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(4)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(4)         update request {
(4)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(4)              --> 56-D9-E7-FE-21-C1
(4)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(4)         } # update request = noop
(4)         if ("%{8}") {
(4)         EXPAND %{8}
(4)            --> rad01
(4)         if ("%{8}")  -> TRUE
(4)         if ("%{8}")  {
(4)           update request {
(4)             EXPAND %{8}
(4)                --> rad01
(4)             &Called-Station-SSID := rad01
(4)           } # update request = noop
(4)         } # if ("%{8}")  = noop
(4)         [updated] = updated
(4)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(4)       ... skipping else: Preceding "if" was taken
(4)     } # policy rewrite_called_station_id = updated
(4)     if (&Called-Station-SSID == "rad01") {
(4)     if (&Called-Station-SSID == "rad01")  -> TRUE
(4)     if (&Called-Station-SSID == "rad01")  {
(4)       update request {
(4)         NTLM-Group-Required := "GALAXY\rad01"
(4)         User-Name := "pierre"
(4)       } # update request = noop
(4)     } # if (&Called-Station-SSID == "rad01")  = noop
(4)     ... skipping elsif: Preceding "if" was taken
(4)     [preprocess] = ok
(4)     [chap] = noop
(4)     [mschap] = noop
(4)     [digest] = noop
(4) suffix: Checking for suffix after "@"
(4) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(4) suffix: No such realm "NULL"
(4)     [suffix] = noop
(4) eap: Peer sent EAP Response (code 2) ID 211 length 136
(4) eap: Continuing tunnel setup
(4)     [eap] = ok
(4)   } # authorize = ok
(4) Found Auth-Type = eap
(4) # Executing group from file /etc/freeradius/sites-enabled/default
(4)   authenticate {
(4) eap: Expiring EAP session with state 0xb35f3ca7b08c259c
(4) eap: Finished EAP session with state 0xb35f3ca7b08c259c
(4) eap: Previous EAP request found for state 0xb35f3ca7b08c259c, released from the list
(4) eap: Peer sent packet with method EAP PEAP (25)
(4) eap: Calling submodule eap_peap to process data
(4) eap_peap: Continuing EAP-TLS
(4) eap_peap: Peer indicated complete TLS record size will be 126 bytes
(4) eap_peap: Got complete TLS record (126 bytes)
(4) eap_peap: [eaptls verify] = length included
(4) eap_peap: <<< recv TLS 1.2  [length 0046]
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: <<< recv TLS 1.2  [length 0001]
(4) eap_peap: <<< recv TLS 1.2  [length 0010]
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: >>> send TLS 1.2  [length 0001]
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: >>> send TLS 1.2  [length 0010]
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: TLS_accept: unknown state
(4) eap_peap: (other): SSL negotiation finished successfully
(4) eap_peap: SSL Connection Established
(4) eap_peap: [eaptls process] = handled
(4) eap: Sending EAP Request (code 1) ID 212 length 57
(4) eap: EAP session adding &reply:State = 0xb35f3ca7b78b259c
(4)     [eap] = handled
(4)   } # authenticate = handled
(4) Using Post-Auth-Type Challenge
(4) Post-Auth-Type sub-section not found.  Ignoring.
(4) # Executing group from file /etc/freeradius/sites-enabled/default
(4) Sent Access-Challenge Id 231 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(4)   EAP-Message = 0x01d4003919001403030001011603030028504d2dbb5c7fcbb8baf8b6de136307521de9e7c9a3ec098cf81fc4e7a952135397a86fd8da77edd6
(4)   Message-Authenticator = 0x00000000000000000000000000000000
(4)   State = 0xb35f3ca7b78b259c2c1a966e4e8d8fb9
(4) Finished request
Waking up in 4.9 seconds.
(5) Received Access-Request Id 232 from 10.2.103.4:40014 to 10.2.103.8:1812 length 171
(5)   User-Name = "pierre"
(5)   NAS-Identifier = "44d9e7fc21c1"
(5)   NAS-Port = 0
(5)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(5)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(5)   Framed-MTU = 1400
(5)   NAS-Port-Type = Wireless-802.11
(5)   Connect-Info = "CONNECT 0Mbps 802.11b"
(5)   EAP-Message = 0x02d400061900
(5)   State = 0xb35f3ca7b78b259c2c1a966e4e8d8fb9
(5)   Message-Authenticator = 0xf59cebeaa4fbb32b1b887ae960bbe4be
(5) session-state: No cached attributes
(5) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(5)   authorize {
(5)     policy filter_username {
(5)       if (&User-Name) {
(5)       if (&User-Name)  -> TRUE
(5)       if (&User-Name)  {
(5)         if (&User-Name =~ / /) {
(5)         if (&User-Name =~ / /)  -> FALSE
(5)         if (&User-Name =~ /@[^@]*@/ ) {
(5)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(5)         if (&User-Name =~ /\.\./ ) {
(5)         if (&User-Name =~ /\.\./ )  -> FALSE
(5)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(5)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(5)         if (&User-Name =~ /\.$/)  {
(5)         if (&User-Name =~ /\.$/)   -> FALSE
(5)         if (&User-Name =~ /@\./)  {
(5)         if (&User-Name =~ /@\./)   -> FALSE
(5)       } # if (&User-Name)  = notfound
(5)     } # policy filter_username = notfound
(5)     policy rewrite_called_station_id {
(5)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(5)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(5)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(5)         update request {
(5)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(5)              --> 56-D9-E7-FE-21-C1
(5)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(5)         } # update request = noop
(5)         if ("%{8}") {
(5)         EXPAND %{8}
(5)            --> rad01
(5)         if ("%{8}")  -> TRUE
(5)         if ("%{8}")  {
(5)           update request {
(5)             EXPAND %{8}
(5)                --> rad01
(5)             &Called-Station-SSID := rad01
(5)           } # update request = noop
(5)         } # if ("%{8}")  = noop
(5)         [updated] = updated
(5)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(5)       ... skipping else: Preceding "if" was taken
(5)     } # policy rewrite_called_station_id = updated
(5)     if (&Called-Station-SSID == "rad01") {
(5)     if (&Called-Station-SSID == "rad01")  -> TRUE
(5)     if (&Called-Station-SSID == "rad01")  {
(5)       update request {
(5)         NTLM-Group-Required := "GALAXY\rad01"
(5)         User-Name := "pierre"
(5)       } # update request = noop
(5)     } # if (&Called-Station-SSID == "rad01")  = noop
(5)     ... skipping elsif: Preceding "if" was taken
(5)     [preprocess] = ok
(5)     [chap] = noop
(5)     [mschap] = noop
(5)     [digest] = noop
(5) suffix: Checking for suffix after "@"
(5) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(5) suffix: No such realm "NULL"
(5)     [suffix] = noop
(5) eap: Peer sent EAP Response (code 2) ID 212 length 6
(5) eap: Continuing tunnel setup
(5)     [eap] = ok
(5)   } # authorize = ok
(5) Found Auth-Type = eap
(5) # Executing group from file /etc/freeradius/sites-enabled/default
(5)   authenticate {
(5) eap: Expiring EAP session with state 0xb35f3ca7b78b259c
(5) eap: Finished EAP session with state 0xb35f3ca7b78b259c
(5) eap: Previous EAP request found for state 0xb35f3ca7b78b259c, released from the list
(5) eap: Peer sent packet with method EAP PEAP (25)
(5) eap: Calling submodule eap_peap to process data
(5) eap_peap: Continuing EAP-TLS
(5) eap_peap: Peer ACKed our handshake fragment.  handshake is finished
(5) eap_peap: [eaptls verify] = success
(5) eap_peap: [eaptls process] = success
(5) eap_peap: Session established.  Decoding tunneled attributes
(5) eap_peap: PEAP state TUNNEL ESTABLISHED
(5) eap: Sending EAP Request (code 1) ID 213 length 40
(5) eap: EAP session adding &reply:State = 0xb35f3ca7b68a259c
(5)     [eap] = handled
(5)   } # authenticate = handled
(5) Using Post-Auth-Type Challenge
(5) Post-Auth-Type sub-section not found.  Ignoring.
(5) # Executing group from file /etc/freeradius/sites-enabled/default
(5) Sent Access-Challenge Id 232 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(5)   EAP-Message = 0x01d500281900170303001d504d2dbb5c7fcbb9f7ff8f8e63a463592487f851520beba2e2b38792be
(5)   Message-Authenticator = 0x00000000000000000000000000000000
(5)   State = 0xb35f3ca7b68a259c2c1a966e4e8d8fb9
(5) Finished request
Waking up in 4.8 seconds.
(6) Received Access-Request Id 233 from 10.2.103.4:40014 to 10.2.103.8:1812 length 207
(6)   User-Name = "pierre"
(6)   NAS-Identifier = "44d9e7fc21c1"
(6)   NAS-Port = 0
(6)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(6)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(6)   Framed-MTU = 1400
(6)   NAS-Port-Type = Wireless-802.11
(6)   Connect-Info = "CONNECT 0Mbps 802.11b"
(6)   EAP-Message = 0x02d5002a1900170303001f00000000000000011b13f5e2b9c4536d5e2345c972295ba64e13ef659e9962
(6)   State = 0xb35f3ca7b68a259c2c1a966e4e8d8fb9
(6)   Message-Authenticator = 0x4efe9ecef83e2f675000776d422c7e81
(6) session-state: No cached attributes
(6) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(6)   authorize {
(6)     policy filter_username {
(6)       if (&User-Name) {
(6)       if (&User-Name)  -> TRUE
(6)       if (&User-Name)  {
(6)         if (&User-Name =~ / /) {
(6)         if (&User-Name =~ / /)  -> FALSE
(6)         if (&User-Name =~ /@[^@]*@/ ) {
(6)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(6)         if (&User-Name =~ /\.\./ ) {
(6)         if (&User-Name =~ /\.\./ )  -> FALSE
(6)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(6)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(6)         if (&User-Name =~ /\.$/)  {
(6)         if (&User-Name =~ /\.$/)   -> FALSE
(6)         if (&User-Name =~ /@\./)  {
(6)         if (&User-Name =~ /@\./)   -> FALSE
(6)       } # if (&User-Name)  = notfound
(6)     } # policy filter_username = notfound
(6)     policy rewrite_called_station_id {
(6)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(6)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(6)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(6)         update request {
(6)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(6)              --> 56-D9-E7-FE-21-C1
(6)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(6)         } # update request = noop
(6)         if ("%{8}") {
(6)         EXPAND %{8}
(6)            --> rad01
(6)         if ("%{8}")  -> TRUE
(6)         if ("%{8}")  {
(6)           update request {
(6)             EXPAND %{8}
(6)                --> rad01
(6)             &Called-Station-SSID := rad01
(6)           } # update request = noop
(6)         } # if ("%{8}")  = noop
(6)         [updated] = updated
(6)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(6)       ... skipping else: Preceding "if" was taken
(6)     } # policy rewrite_called_station_id = updated
(6)     if (&Called-Station-SSID == "rad01") {
(6)     if (&Called-Station-SSID == "rad01")  -> TRUE
(6)     if (&Called-Station-SSID == "rad01")  {
(6)       update request {
(6)         NTLM-Group-Required := "GALAXY\rad01"
(6)         User-Name := "pierre"
(6)       } # update request = noop
(6)     } # if (&Called-Station-SSID == "rad01")  = noop
(6)     ... skipping elsif: Preceding "if" was taken
(6)     [preprocess] = ok
(6)     [chap] = noop
(6)     [mschap] = noop
(6)     [digest] = noop
(6) suffix: Checking for suffix after "@"
(6) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(6) suffix: No such realm "NULL"
(6)     [suffix] = noop
(6) eap: Peer sent EAP Response (code 2) ID 213 length 42
(6) eap: Continuing tunnel setup
(6)     [eap] = ok
(6)   } # authorize = ok
(6) Found Auth-Type = eap
(6) # Executing group from file /etc/freeradius/sites-enabled/default
(6)   authenticate {
(6) eap: Expiring EAP session with state 0xb35f3ca7b68a259c
(6) eap: Finished EAP session with state 0xb35f3ca7b68a259c
(6) eap: Previous EAP request found for state 0xb35f3ca7b68a259c, released from the list
(6) eap: Peer sent packet with method EAP PEAP (25)
(6) eap: Calling submodule eap_peap to process data
(6) eap_peap: Continuing EAP-TLS
(6) eap_peap: [eaptls verify] = ok
(6) eap_peap: Done initial handshake
(6) eap_peap: [eaptls process] = ok
(6) eap_peap: Session established.  Decoding tunneled attributes
(6) eap_peap: PEAP state WAITING FOR INNER IDENTITY
(6) eap_peap: Identity - pierre
(6) eap_peap: Got inner identity 'pierre'
(6) eap_peap: Setting default EAP type for tunneled EAP session
(6) eap_peap: Got tunneled request
(6) eap_peap:   EAP-Message = 0x02d5000b01706965727265
(6) eap_peap: Setting User-Name to pierre
(6) eap_peap: Sending tunneled request to inner-tunnel
(6) eap_peap:   EAP-Message = 0x02d5000b01706965727265
(6) eap_peap:   FreeRADIUS-Proxied-To = 127.0.0.1
(6) eap_peap:   User-Name = "pierre"
(6) Virtual server inner-tunnel received request
(6)   EAP-Message = 0x02d5000b01706965727265
(6)   FreeRADIUS-Proxied-To = 127.0.0.1
(6)   User-Name = "pierre"
(6) WARNING: Outer and inner identities are the same.  User privacy is compromised.
(6) server inner-tunnel {
(6)   # Executing section authorize from file /etc/freeradius/sites-enabled/inner-tunnel
(6)     authorize {
(6)       policy filter_username {
(6)         if (&User-Name) {
(6)         if (&User-Name)  -> TRUE
(6)         if (&User-Name)  {
(6)           if (&User-Name =~ / /) {
(6)           if (&User-Name =~ / /)  -> FALSE
(6)           if (&User-Name =~ /@[^@]*@/ ) {
(6)           if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(6)           if (&User-Name =~ /\.\./ ) {
(6)           if (&User-Name =~ /\.\./ )  -> FALSE
(6)           if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(6)           if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(6)           if (&User-Name =~ /\.$/)  {
(6)           if (&User-Name =~ /\.$/)   -> FALSE
(6)           if (&User-Name =~ /@\./)  {
(6)           if (&User-Name =~ /@\./)   -> FALSE
(6)         } # if (&User-Name)  = notfound
(6)       } # policy filter_username = notfound
(6)       policy rewrite_called_station_id {
(6)         if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(6)         if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> FALSE
(6)         else {
(6)           [noop] = noop
(6)         } # else = noop
(6)       } # policy rewrite_called_station_id = noop
(6)       if (&Called-Station-SSID == "rad01") {
(6)       ERROR: Failed retrieving values required to evaluate condition
(6)       elsif (%Called-Station-SSID == "RAD02") {
(6)       elsif (%Called-Station-SSID == "RAD02")  -> FALSE
(6)       else {
(6)         update request {
(6)           NTLM-Group-Required := "S-1-5-21-2281471460-mmmmmm-nnnnnnnnn-1387"
(6)         } # update request = noop
(6)       } # else = noop
(6)       [chap] = noop
(6)       [mschap] = noop
(6) suffix: Checking for suffix after "@"
(6) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(6) suffix: No such realm "NULL"
(6)       [suffix] = noop
(6)       update control {
(6)         &Proxy-To-Realm := LOCAL
(6)       } # update control = noop
(6) eap: Peer sent EAP Response (code 2) ID 213 length 11
(6) eap: EAP-Identity reply, returning 'ok' so we can short-circuit the rest of authorize
(6)       [eap] = ok
(6)     } # authorize = ok
(6)   Found Auth-Type = eap
(6)   # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(6)     authenticate {
(6) eap: Peer sent packet with method EAP Identity (1)
(6) eap: Calling submodule eap_mschapv2 to process data
(6) eap_mschapv2: Issuing Challenge
(6) eap: Sending EAP Request (code 1) ID 214 length 43
(6) eap: EAP session adding &reply:State = 0xbd54a3aabd82b9f3
(6)       [eap] = handled
(6)     } # authenticate = handled
(6) } # server inner-tunnel
(6) Virtual server sending reply
(6)   EAP-Message = 0x01d6002b1a01d60026109e3bdec9cbb411b67a164e86a272df16667265657261646975732d332e302e3132
(6)   Message-Authenticator = 0x00000000000000000000000000000000
(6)   State = 0xbd54a3aabd82b9f3309aeb04bc239791
(6) eap_peap: Got tunneled reply code 11
(6) eap_peap:   EAP-Message = 0x01d6002b1a01d60026109e3bdec9cbb411b67a164e86a272df16667265657261646975732d332e302e3132
(6) eap_peap:   Message-Authenticator = 0x00000000000000000000000000000000
(6) eap_peap:   State = 0xbd54a3aabd82b9f3309aeb04bc239791
(6) eap_peap: Got tunneled reply RADIUS code 11
(6) eap_peap:   EAP-Message = 0x01d6002b1a01d60026109e3bdec9cbb411b67a164e86a272df16667265657261646975732d332e302e3132
(6) eap_peap:   Message-Authenticator = 0x00000000000000000000000000000000
(6) eap_peap:   State = 0xbd54a3aabd82b9f3309aeb04bc239791
(6) eap_peap: Got tunneled Access-Challenge
(6) eap: Sending EAP Request (code 1) ID 214 length 74
(6) eap: EAP session adding &reply:State = 0xb35f3ca7b589259c
(6)     [eap] = handled
(6)   } # authenticate = handled
(6) Using Post-Auth-Type Challenge
(6) Post-Auth-Type sub-section not found.  Ignoring.
(6) # Executing group from file /etc/freeradius/sites-enabled/default
(6) Sent Access-Challenge Id 233 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(6)   EAP-Message = 0x01d6004a1900170303003f504d2dbb5c7fcbba03101f4ae013daecee83a3de971bdc706fdb3aca12772f98e15a5590649295556cc5c8cdc69ca64ff7d002ef2f97ee6091008d8bb84699
(6)   Message-Authenticator = 0x00000000000000000000000000000000
(6)   State = 0xb35f3ca7b589259c2c1a966e4e8d8fb9
(6) Finished request
Waking up in 4.8 seconds.
(7) Received Access-Request Id 234 from 10.2.103.4:40014 to 10.2.103.8:1812 length 261
(7)   User-Name = "pierre"
(7)   NAS-Identifier = "44d9e7fc21c1"
(7)   NAS-Port = 0
(7)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(7)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(7)   Framed-MTU = 1400
(7)   NAS-Port-Type = Wireless-802.11
(7)   Connect-Info = "CONNECT 0Mbps 802.11b"
(7)   EAP-Message = 0x02d600601900170303005500000000000000028e87cb590a701b47746c8016ce47b7f86b1fe6a45bc3acdcb316e82907eef552f0b955864689b57252686b22225ee49e5c8e8cb3402b58cea5ec49062bddcdc67d327e856106545e7af64dda90
(7)   State = 0xb35f3ca7b589259c2c1a966e4e8d8fb9
(7)   Message-Authenticator = 0x0573cf6c301fbbb191e4f3aefd62a2f8
(7) session-state: No cached attributes
(7) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(7)   authorize {
(7)     policy filter_username {
(7)       if (&User-Name) {
(7)       if (&User-Name)  -> TRUE
(7)       if (&User-Name)  {
(7)         if (&User-Name =~ / /) {
(7)         if (&User-Name =~ / /)  -> FALSE
(7)         if (&User-Name =~ /@[^@]*@/ ) {
(7)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(7)         if (&User-Name =~ /\.\./ ) {
(7)         if (&User-Name =~ /\.\./ )  -> FALSE
(7)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(7)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(7)         if (&User-Name =~ /\.$/)  {
(7)         if (&User-Name =~ /\.$/)   -> FALSE
(7)         if (&User-Name =~ /@\./)  {
(7)         if (&User-Name =~ /@\./)   -> FALSE
(7)       } # if (&User-Name)  = notfound
(7)     } # policy filter_username = notfound
(7)     policy rewrite_called_station_id {
(7)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(7)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(7)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(7)         update request {
(7)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(7)              --> 56-D9-E7-FE-21-C1
(7)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(7)         } # update request = noop
(7)         if ("%{8}") {
(7)         EXPAND %{8}
(7)            --> rad01
(7)         if ("%{8}")  -> TRUE
(7)         if ("%{8}")  {
(7)           update request {
(7)             EXPAND %{8}
(7)                --> rad01
(7)             &Called-Station-SSID := rad01
(7)           } # update request = noop
(7)         } # if ("%{8}")  = noop
(7)         [updated] = updated
(7)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(7)       ... skipping else: Preceding "if" was taken
(7)     } # policy rewrite_called_station_id = updated
(7)     if (&Called-Station-SSID == "rad01") {
(7)     if (&Called-Station-SSID == "rad01")  -> TRUE
(7)     if (&Called-Station-SSID == "rad01")  {
(7)       update request {
(7)         NTLM-Group-Required := "GALAXY\rad01"
(7)         User-Name := "pierre"
(7)       } # update request = noop
(7)     } # if (&Called-Station-SSID == "rad01")  = noop
(7)     ... skipping elsif: Preceding "if" was taken
(7)     [preprocess] = ok
(7)     [chap] = noop
(7)     [mschap] = noop
(7)     [digest] = noop
(7) suffix: Checking for suffix after "@"
(7) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(7) suffix: No such realm "NULL"
(7)     [suffix] = noop
(7) eap: Peer sent EAP Response (code 2) ID 214 length 96
(7) eap: Continuing tunnel setup
(7)     [eap] = ok
(7)   } # authorize = ok
(7) Found Auth-Type = eap
(7) # Executing group from file /etc/freeradius/sites-enabled/default
(7)   authenticate {
(7) eap: Expiring EAP session with state 0xbd54a3aabd82b9f3
(7) eap: Finished EAP session with state 0xb35f3ca7b589259c
(7) eap: Previous EAP request found for state 0xb35f3ca7b589259c, released from the list
(7) eap: Peer sent packet with method EAP PEAP (25)
(7) eap: Calling submodule eap_peap to process data
(7) eap_peap: Continuing EAP-TLS
(7) eap_peap: [eaptls verify] = ok
(7) eap_peap: Done initial handshake
(7) eap_peap: [eaptls process] = ok
(7) eap_peap: Session established.  Decoding tunneled attributes
(7) eap_peap: PEAP state phase2
(7) eap_peap: EAP method MSCHAPv2 (26)
(7) eap_peap: Got tunneled request
(7) eap_peap:   EAP-Message = 0x02d600411a02d6003c31091ec4c1a3227e314c0297013f462fc40000000000000000654bb73f2e49fdb82e96e89138933e449f612efb76875d2900706965727265
(7) eap_peap: Setting User-Name to pierre
(7) eap_peap: Sending tunneled request to inner-tunnel
(7) eap_peap:   EAP-Message = 0x02d600411a02d6003c31091ec4c1a3227e314c0297013f462fc40000000000000000654bb73f2e49fdb82e96e89138933e449f612efb76875d2900706965727265
(7) eap_peap:   FreeRADIUS-Proxied-To = 127.0.0.1
(7) eap_peap:   User-Name = "pierre"
(7) eap_peap:   State = 0xbd54a3aabd82b9f3309aeb04bc239791
(7) Virtual server inner-tunnel received request
(7)   EAP-Message = 0x02d600411a02d6003c31091ec4c1a3227e314c0297013f462fc40000000000000000654bb73f2e49fdb82e96e89138933e449f612efb76875d2900706965727265
(7)   FreeRADIUS-Proxied-To = 127.0.0.1
(7)   User-Name = "pierre"
(7)   State = 0xbd54a3aabd82b9f3309aeb04bc239791
(7) WARNING: Outer and inner identities are the same.  User privacy is compromised.
(7) server inner-tunnel {
(7)   session-state: No cached attributes
(7)   # Executing section authorize from file /etc/freeradius/sites-enabled/inner-tunnel
(7)     authorize {
(7)       policy filter_username {
(7)         if (&User-Name) {
(7)         if (&User-Name)  -> TRUE
(7)         if (&User-Name)  {
(7)           if (&User-Name =~ / /) {
(7)           if (&User-Name =~ / /)  -> FALSE
(7)           if (&User-Name =~ /@[^@]*@/ ) {
(7)           if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(7)           if (&User-Name =~ /\.\./ ) {
(7)           if (&User-Name =~ /\.\./ )  -> FALSE
(7)           if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(7)           if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(7)           if (&User-Name =~ /\.$/)  {
(7)           if (&User-Name =~ /\.$/)   -> FALSE
(7)           if (&User-Name =~ /@\./)  {
(7)           if (&User-Name =~ /@\./)   -> FALSE
(7)         } # if (&User-Name)  = notfound
(7)       } # policy filter_username = notfound
(7)       policy rewrite_called_station_id {
(7)         if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(7)         if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> FALSE
(7)         else {
(7)           [noop] = noop
(7)         } # else = noop
(7)       } # policy rewrite_called_station_id = noop
(7)       if (&Called-Station-SSID == "rad01") {
(7)       ERROR: Failed retrieving values required to evaluate condition
(7)       elsif (%Called-Station-SSID == "RAD02") {
(7)       elsif (%Called-Station-SSID == "RAD02")  -> FALSE
(7)       else {
(7)         update request {
(7)           NTLM-Group-Required := "S-1-5-21-2281471460-mmmmmm-nnnnnnnnn-1387"
(7)         } # update request = noop
(7)       } # else = noop
(7)       [chap] = noop
(7)       [mschap] = noop
(7) suffix: Checking for suffix after "@"
(7) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(7) suffix: No such realm "NULL"
(7)       [suffix] = noop
(7)       update control {
(7)         &Proxy-To-Realm := LOCAL
(7)       } # update control = noop
(7) eap: Peer sent EAP Response (code 2) ID 214 length 65
(7) eap: No EAP Start, assuming it's an on-going EAP conversation
(7)       [eap] = updated
(7)       [files] = noop
(7)       [expiration] = noop
(7)       [logintime] = noop
(7)       [pap] = noop
(7)     } # authorize = updated
(7)   Found Auth-Type = eap
(7)   # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(7)     authenticate {
(7) eap: Expiring EAP session with state 0xbd54a3aabd82b9f3
(7) eap: Finished EAP session with state 0xbd54a3aabd82b9f3
(7) eap: Previous EAP request found for state 0xbd54a3aabd82b9f3, released from the list
(7) eap: Peer sent packet with method EAP MSCHAPv2 (26)
(7) eap: Calling submodule eap_mschapv2 to process data
(7) eap_mschapv2: # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(7) eap_mschapv2:   authenticate {
(7) mschap: Creating challenge hash with username: pierre
(7) mschap: Client is using MS-CHAPv2
(7) mschap: Executing: /usr/bin/ntlm_auth --request-nt-key --require-membership-of=%{NTLM-Group-Required} --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} --domain=%{%{mschap:NT-Domain}:-GALAXY.PRIV} --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Response}:-00}:
(7) mschap: EXPAND --require-membership-of=%{NTLM-Group-Required}
(7) mschap:    --> --require-membership-of=S-1-5-21-2281471460-mmmmmm-nnnnnnnnn-1387
(7) mschap: EXPAND --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}}
(7) mschap:    --> --username=pierre
(7) mschap: ERROR: No NT-Domain was found in the User-Name
(7) mschap: EXPAND --domain=%{%{mschap:NT-Domain}:-GALAXY.PRIV}
(7) mschap:    --> --domain=GALAXY.PRIV
(7) mschap: Creating challenge hash with username: pierre
(7) mschap: EXPAND --challenge=%{%{mschap:Challenge}:-00}
(7) mschap:    --> --challenge=a5aace215cfd7042
(7) mschap: EXPAND --nt-response=%{%{mschap:NT-Response}:-00}
(7) mschap:    --> --nt-response=654bb73f2e49fdb82e96e89138933e449f612efb76875d29
(7) mschap: ERROR: Program returned code (1) and output 'Unexpected information received (0xc000000d)'
(7) mschap: External script failed
(7) mschap: ERROR: External script says: Unexpected information received (0xc000000d)
(7) mschap: ERROR: MS-CHAP2-Response is incorrect
(7)     [mschap] = reject
(7)   } # authenticate = reject
(7) eap: Sending EAP Failure (code 4) ID 214 length 4
(7) eap: Freeing handler
(7)       [eap] = reject
(7)     } # authenticate = reject
(7)   Failed to authenticate the user
(7)   Login incorrect (Failed retrieving values required to evaluate condition): [pierre/<via Auth-Type = eap>] (from client Galaxy.priv port 0 via TLS tunnel)
(7)   Using Post-Auth-Type Reject
(7)   # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(7)     Post-Auth-Type REJECT {
(7) attr_filter.access_reject: EXPAND %{User-Name}
(7) attr_filter.access_reject:    --> pierre
(7) attr_filter.access_reject: Matched entry DEFAULT at line 11
(7)       [attr_filter.access_reject] = updated
(7)       update outer.session-state {
(7)         &Module-Failure-Message := &request:Module-Failure-Message -> 'Failed retrieving values required to evaluate condition'
(7)       } # update outer.session-state = noop
(7)     } # Post-Auth-Type REJECT = updated
(7) } # server inner-tunnel
(7) Virtual server sending reply
(7)   MS-CHAP-Error = "\326E=691 R=1 C=3085b775235144ea99ea6f7ac706b6d4 V=3 M=Authentication failed"
(7)   EAP-Message = 0x04d60004
(7)   Message-Authenticator = 0x00000000000000000000000000000000
(7) eap_peap: Got tunneled reply code 3
(7) eap_peap:   MS-CHAP-Error = "\326E=691 R=1 C=3085b775235144ea99ea6f7ac706b6d4 V=3 M=Authentication failed"
(7) eap_peap:   EAP-Message = 0x04d60004
(7) eap_peap:   Message-Authenticator = 0x00000000000000000000000000000000
(7) eap_peap: Got tunneled reply RADIUS code 3
(7) eap_peap:   MS-CHAP-Error = "\326E=691 R=1 C=3085b775235144ea99ea6f7ac706b6d4 V=3 M=Authentication failed"
(7) eap_peap:   EAP-Message = 0x04d60004
(7) eap_peap:   Message-Authenticator = 0x00000000000000000000000000000000
(7) eap_peap: Tunneled authentication was rejected
(7) eap_peap: FAILURE
(7) eap: Sending EAP Request (code 1) ID 215 length 46
(7) eap: EAP session adding &reply:State = 0xb35f3ca7b488259c
(7)     [eap] = handled
(7)   } # authenticate = handled
(7) Using Post-Auth-Type Challenge
(7) Post-Auth-Type sub-section not found.  Ignoring.
(7) # Executing group from file /etc/freeradius/sites-enabled/default
(7) session-state: Saving cached attributes
(7)   Module-Failure-Message := "Failed retrieving values required to evaluate condition"
(7) Sent Access-Challenge Id 234 from 10.2.103.8:1812 to 10.2.103.4:40014 length 0
(7)   EAP-Message = 0x01d7002e19001703030023504d2dbb5c7fcbbbc5469324f1a95f9ea55a2fce82dea2e00473109a28619661ae8222
(7)   Message-Authenticator = 0x00000000000000000000000000000000
(7)   State = 0xb35f3ca7b488259c2c1a966e4e8d8fb9
(7) Finished request
Waking up in 4.8 seconds.
(8) Received Access-Request Id 235 from 10.2.103.4:40014 to 10.2.103.8:1812 length 211
(8)   User-Name = "pierre"
(8)   NAS-Identifier = "44d9e7fc21c1"
(8)   NAS-Port = 0
(8)   Called-Station-Id = "56-D9-E7-FE-21-C1:rad01"
(8)   Calling-Station-Id = "C0-EE-FB-4B-FA-10"
(8)   Framed-MTU = 1400
(8)   NAS-Port-Type = Wireless-802.11
(8)   Connect-Info = "CONNECT 0Mbps 802.11b"
(8)   EAP-Message = 0x02d7002e19001703030023000000000000000320b22f60170206a92ede96e61c35df8cb165876aa4f581edad7701
(8)   State = 0xb35f3ca7b488259c2c1a966e4e8d8fb9
(8)   Message-Authenticator = 0xe4f48714798068aa684811266a444df0
(8) Restoring &session-state
(8)   &session-state:Module-Failure-Message := "Failed retrieving values required to evaluate condition"
(8) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(8)   authorize {
(8)     policy filter_username {
(8)       if (&User-Name) {
(8)       if (&User-Name)  -> TRUE
(8)       if (&User-Name)  {
(8)         if (&User-Name =~ / /) {
(8)         if (&User-Name =~ / /)  -> FALSE
(8)         if (&User-Name =~ /@[^@]*@/ ) {
(8)         if (&User-Name =~ /@[^@]*@/ )  -> FALSE
(8)         if (&User-Name =~ /\.\./ ) {
(8)         if (&User-Name =~ /\.\./ )  -> FALSE
(8)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))  {
(8)         if ((&User-Name =~ /@/) && (&User-Name !~ /@(.+)\.(.+)$/))   -> FALSE
(8)         if (&User-Name =~ /\.$/)  {
(8)         if (&User-Name =~ /\.$/)   -> FALSE
(8)         if (&User-Name =~ /@\./)  {
(8)         if (&User-Name =~ /@\./)   -> FALSE
(8)       } # if (&User-Name)  = notfound
(8)     } # policy filter_username = notfound
(8)     policy rewrite_called_station_id {
(8)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i)) {
(8)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  -> TRUE
(8)       if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  {
(8)         update request {
(8)           EXPAND %{toupper:%{1}-%{2}-%{3}-%{4}-%{5}-%{6}}
(8)              --> 56-D9-E7-FE-21-C1
(8)           &Called-Station-Id := 56-D9-E7-FE-21-C1
(8)         } # update request = noop
(8)         if ("%{8}") {
(8)         EXPAND %{8}
(8)            --> rad01
(8)         if ("%{8}")  -> TRUE
(8)         if ("%{8}")  {
(8)           update request {
(8)             EXPAND %{8}
(8)                --> rad01
(8)             &Called-Station-SSID := rad01
(8)           } # update request = noop
(8)         } # if ("%{8}")  = noop
(8)         [updated] = updated
(8)       } # if (&Called-Station-Id && (&Called-Station-Id =~ /^([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})[^0-9a-f]?([0-9a-f]{2})([^0-9a-f](.+))?$/i))  = updated
(8)       ... skipping else: Preceding "if" was taken
(8)     } # policy rewrite_called_station_id = updated
(8)     if (&Called-Station-SSID == "rad01") {
(8)     if (&Called-Station-SSID == "rad01")  -> TRUE
(8)     if (&Called-Station-SSID == "rad01")  {
(8)       update request {
(8)         NTLM-Group-Required := "GALAXY\rad01"
(8)         User-Name := "pierre"
(8)       } # update request = noop
(8)     } # if (&Called-Station-SSID == "rad01")  = noop
(8)     ... skipping elsif: Preceding "if" was taken
(8)     [preprocess] = ok
(8)     [chap] = noop
(8)     [mschap] = noop
(8)     [digest] = noop
(8) suffix: Checking for suffix after "@"
(8) suffix: No '@' in User-Name = "pierre", looking up realm NULL
(8) suffix: No such realm "NULL"
(8)     [suffix] = noop
(8) eap: Peer sent EAP Response (code 2) ID 215 length 46
(8) eap: Continuing tunnel setup
(8)     [eap] = ok
(8)   } # authorize = ok
(8) Found Auth-Type = eap
(8) # Executing group from file /etc/freeradius/sites-enabled/default
(8)   authenticate {
(8) eap: Expiring EAP session with state 0xb35f3ca7b488259c
(8) eap: Finished EAP session with state 0xb35f3ca7b488259c
(8) eap: Previous EAP request found for state 0xb35f3ca7b488259c, released from the list
(8) eap: Peer sent packet with method EAP PEAP (25)
(8) eap: Calling submodule eap_peap to process data
(8) eap_peap: Continuing EAP-TLS
(8) eap_peap: [eaptls verify] = ok
(8) eap_peap: Done initial handshake
(8) eap_peap: [eaptls process] = ok
(8) eap_peap: Session established.  Decoding tunneled attributes
(8) eap_peap: PEAP state send tlv failure
(8) eap_peap: Received EAP-TLV response
(8) eap_peap:   The users session was previously rejected: returning reject (again.)
(8) eap_peap:   This means you need to read the PREVIOUS messages in the debug output
(8) eap_peap:   to find out the reason why the user was rejected
(8) eap_peap:   Look for "reject" or "fail".  Those earlier messages will tell you
(8) eap_peap:   what went wrong, and how to fix the problem
(8) eap: ERROR: Failed continuing EAP PEAP (25) session.  EAP sub-module failed
(8) eap: Sending EAP Failure (code 4) ID 215 length 4
(8) eap: Failed in EAP select
(8)     [eap] = invalid
(8)   } # authenticate = invalid
(8) Failed to authenticate the user
(8) Login incorrect (eap: Failed continuing EAP PEAP (25) session.  EAP sub-module failed): [pierre/<via Auth-Type = eap>] (from client Galaxy.priv port 0 cli C0-EE-FB-4B-FA-10)
(8) Using Post-Auth-Type Reject
(8) # Executing group from file /etc/freeradius/sites-enabled/default
(8)   Post-Auth-Type REJECT {
(8) attr_filter.access_reject: EXPAND %{User-Name}
(8) attr_filter.access_reject:    --> pierre
(8) attr_filter.access_reject: Matched entry DEFAULT at line 11
(8)     [attr_filter.access_reject] = updated
(8)     [eap] = noop
(8)     policy remove_reply_message_if_eap {
(8)       if (&reply:EAP-Message && &reply:Reply-Message) {
(8)       if (&reply:EAP-Message && &reply:Reply-Message)  -> FALSE
(8)       else {
(8)         [noop] = noop
(8)       } # else = noop
(8)     } # policy remove_reply_message_if_eap = noop
(8)   } # Post-Auth-Type REJECT = updated
(8) Delaying response for 1.000000 seconds
Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(8) Sending delayed response
(8) Sent Access-Reject Id 235 from 10.2.103.8:1812 to 10.2.103.4:40014 length 44
(8)   EAP-Message = 0x04d70004
(8)   Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.8 seconds.
(0) Cleaning up request packet ID 227 with timestamp +5
(1) Cleaning up request packet ID 228 with timestamp +5
(2) Cleaning up request packet ID 229 with timestamp +5
(3) Cleaning up request packet ID 230 with timestamp +5
(4) Cleaning up request packet ID 231 with timestamp +5
(5) Cleaning up request packet ID 232 with timestamp +5
(6) Cleaning up request packet ID 233 with timestamp +5
(7) Cleaning up request packet ID 234 with timestamp +5
(8) Cleaning up request packet ID 235 with timestamp +5
Ready to process requests


More information about the Freeradius-Users mailing list