Freeradius-Users
Threads by month
- ----- 2026 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- 27050 discussions
Hello,
I desperately need your help. I am noob with FreeRadius so please guide me what i am doing wrong.
My point is using freeradius as a Proxy. Because we already have a PAP supported Radius, so i want to do eap auth part on freeradius and then Proxy the Access-request to our own Radius. We are trying 802.1x authantication.
According to my readings i did below steps :
1 . Edit clients.conf for my mobile devices to Access freeradius
client nevotek {
ipaddr = 213.74.143.140
secret = testing1234
}
2. add home_server in proxy.conf
home_server IAS {
ipaddr = 192.168.0.252
port = 1812
type = "auth"
secret = "secret"
response_window = 20
max_outstanding = 65536
}
home_server_pool jack_pool {
type = fail-over
home_server = IAS
}
realm nevotek {
auth_pool = jack_pool
nostirp
}
3. edit eap.cof
default_eap_type = ttls
and in ttls function :
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = yes
proxy_tunneled_request_as_eap = no
virtual_server = "proxy-inner-tunnel"
}
4. prepare Proxy.config soft link for sites-enabled, added nevotek in proxy-inner-tunnel:
server proxy-inner-tunnel {
authorize {
update control {
Proxy-To-Realm := "nevotek"
}
}
authenticate {
eap
}
post-proxy {
eap
}
}
5. disabled "suffix" part in sites-enabled/default
But no chance. Also android and IOS devices has different behaviors.
Here is the output of IOS device :
(2) Received Access-Request Id 216 from 213.74.143.148:19733 to 10.0.0.4:1812 length 311
(2) User-Name = "iosuser2(a)nevotek.com"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "74-8d-08-b1-f2-17"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001205fbba08c"
(2) Acct-Session-Id = "5fbba08c/74:8d:08:b1:f2:17/352"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xca8e79cacb8d6ce3fd1d37ee8f32d170
(2) Message-Authenticator = 0xc7b01c5b471b2eb70578f1dc7ed6e7ea
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./) {
(2) if (&User-Name =~ /(a)\./) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Finished EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Previous EAP request found for state 0xca8e79cacb8d6ce3, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xca8e79cac88a6ce3
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 216 from 10.0.0.4:1812 to 213.74.143.148:19733 length 0
(2) EAP-Message = 0x01040150158000000528d123b84f84592a0a7ccb12b23ec09a0c025464d3f258d5090bffa282b17870910449329f906380b0b4340ef2b6a1dc73e72d35763148b65bfc0401010038af8b17d95590598994e5ec35c96642e3e8fce291173f61b7e1ca06aa4b749dd3f2bbe12175a964524311069490e0f6
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xca8e79cac88a6ce3fd1d37ee8f32d170
(2) Finished request
And here is the output of Android device :
(2) Received Access-Request Id 59 from 213.74.143.148:38031 to 10.0.0.4:1812 length 312
(2) User-Name = "anonymous(a)nevotek.com"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(2) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xd875f9c9d976ec270910ae6415adb475
(2) Message-Authenticator = 0xe92ebb9e5e7641c5515a25ae2ee50929
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./) {
(2) if (&User-Name =~ /(a)\./) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xd875f9c9d976ec27
(2) eap: Finished EAP session with state 0xd875f9c9d976ec27
(2) eap: Previous EAP request found for state 0xd875f9c9d976ec27, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xd875f9c9da71ec27
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 59 from 10.0.0.4:1812 to 213.74.143.148:38031 length 0
(2) EAP-Message = 0x01040150158000000528a2e03207e6a1163699a1cff7af74692beaafff15b2a3033c4d0238dd7014db04f7f40d669da91832dd39bbdbfca1bdb456f26f4a981b5a820108040100b7a20cf24aad9d35b94575b849f9e8ef528d1b13e7caea59f3cc578845763a601b7fceb8ffda9d989423730b5ea4c0f3
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xd875f9c9da71ec270910ae6415adb475
(2) Finished request
Waking up in 4.3 seconds.
(3) Received Access-Request Id 60 from 213.74.143.148:38031 to 10.0.0.4:1812 length 319
(3) User-Name = "anonymous(a)nevotek.com"
(3) Chargeable-User-Identity = 0x00
(3) Operator-Name = "1nevotek.com"
(3) Location-Capable = Civic-Location
(3) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(3) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(3) NAS-Port = 4
(3) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(3) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(3) NAS-IP-Address = 10.1.2.225
(3) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(3) Airespace-Wlan-Id = 7
(3) Service-Type = Framed-User
(3) Framed-MTU = 1300
(3) NAS-Port-Type = Wireless-802.11
(3) EAP-Message = 0x0204000d150015030300020230
(3) State = 0xd875f9c9da71ec270910ae6415adb475
(3) Message-Authenticator = 0xbd27e9cbdb496b0f8072580915cabc5d
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./) {
(3) if (&User-Name =~ /(a)\./) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) [chap] = noop
(3) [mschap] = noop
(3) [digest] = noop
(3) eap: Peer sent EAP Response (code 2) ID 4 length 13
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0xd875f9c9da71ec27
(3) eap: Finished EAP session with state 0xd875f9c9da71ec27
(3) eap: Previous EAP request found for state 0xd875f9c9da71ec27, released from the list
(3) eap: Peer sent packet with method EAP TTLS (21)
(3) eap: Calling submodule eap_ttls to process data
(3) eap_ttls: Authenticate
(3) eap_ttls: Continuing EAP-TLS
(3) eap_ttls: [eaptls verify] = ok
(3) eap_ttls: Done initial handshake
(3) eap_ttls: <<< recv TLS 1.2 [length 0002]
(3) eap_ttls: ERROR: TLS Alert read:fatal:unknown CA
(3) eap_ttls: TLS_accept: Need to read more data: error
(3) eap_ttls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
(3) eap_ttls: In SSL Handshake Phase
(3) eap_ttls: In SSL Accept mode
(3) eap_ttls: SSL Application Data
(3) eap_ttls: ERROR: TLS failed during operation
(3) eap_ttls: ERROR: [eaptls process] = fail
(3) eap: ERROR: Failed continuing EAP TTLS (21) session. EAP sub-module failed
(3) eap: Sending EAP Failure (code 4) ID 4 length 4
(3) eap: Failed in EAP select
(3) [eap] = invalid
(3) } # authenticate = invalid
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> anonymous(a)nevotek.com
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Delaying response for 1.000000 seconds Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 60 from 10.0.0.4:1812 to 213.74.143.148:38031 length 44
(3) EAP-Message = 0x04040004
(3) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.1 seconds.
(0) Cleaning up request packet ID 57 with timestamp +25 Waking up in 0.2 seconds.
(1) Cleaning up request packet ID 58 with timestamp +26 Waking up in 0.3 seconds.
(2) Cleaning up request packet ID 59 with timestamp +26 Waking up in 0.2 seconds.
(3) Cleaning up request packet ID 60 with timestamp +26
Regards.
Sent from Yahoo Mail on Android
1
0
Hello,
I desperately need your help. I am noob with FreeRadius so please guide me what i am doing wrong.
My point is using freeradius as a Proxy. Because we already have a PAP supported Radius, so i want to do eap auth part on freeradius and then Proxy the Access-request to our own Radius. We are trying 802.1x authantication.
According to my readings i did below steps :
1 . Edit clients.conf for my mobile devices to Access freeradius
client nevotek {
ipaddr = 213.74.143.140
secret = testing1234
}
2. add home_server in proxy.conf
home_server IAS {
ipaddr = 192.168.0.252
port = 1812
type = "auth"
secret = "secret"
response_window = 20
max_outstanding = 65536
}
home_server_pool jack_pool {
type = fail-over
home_server = IAS
}
realm nevotek {
auth_pool = jack_pool
nostirp
}
3. edit eap.cof
default_eap_type = ttls
and in ttls function :
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = yes
proxy_tunneled_request_as_eap = no
virtual_server = "proxy-inner-tunnel"
}
4. prepare Proxy.config soft link for sites-enabled, added nevotek in proxy-inner-tunnel:
server proxy-inner-tunnel {
authorize {
update control {
Proxy-To-Realm := "nevotek"
}
}
authenticate {
eap
}
post-proxy {
eap
}
}
5. disabled "suffix" part in sites-enabled/default
But no chance. Also android and IOS devices has different behaviors.
Here is the output of IOS device :
(2) Received Access-Request Id 216 from 213.74.143.148:19733 to 10.0.0.4:1812 length 311
(2) User-Name = "iosuser2(a)nevotek.com<mailto:iosuser2@nevotek.com>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "74-8d-08-b1-f2-17"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001205fbba08c"
(2) Acct-Session-Id = "5fbba08c/74:8d:08:b1:f2:17/352"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xca8e79cacb8d6ce3fd1d37ee8f32d170
(2) Message-Authenticator = 0xc7b01c5b471b2eb70578f1dc7ed6e7ea
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Finished EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Previous EAP request found for state 0xca8e79cacb8d6ce3, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xca8e79cac88a6ce3
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 216 from 10.0.0.4:1812 to 213.74.143.148:19733 length 0
(2) EAP-Message = 0x01040150158000000528d123b84f84592a0a7ccb12b23ec09a0c025464d3f258d5090bffa282b17870910449329f906380b0b4340ef2b6a1dc73e72d35763148b65bfc0401010038af8b17d95590598994e5ec35c96642e3e8fce291173f61b7e1ca06aa4b749dd3f2bbe12175a964524311069490e0f6
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xca8e79cac88a6ce3fd1d37ee8f32d170
(2) Finished request
And here is the output of Android device :
(2) Received Access-Request Id 59 from 213.74.143.148:38031 to 10.0.0.4:1812 length 312
(2) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(2) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xd875f9c9d976ec270910ae6415adb475
(2) Message-Authenticator = 0xe92ebb9e5e7641c5515a25ae2ee50929
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xd875f9c9d976ec27
(2) eap: Finished EAP session with state 0xd875f9c9d976ec27
(2) eap: Previous EAP request found for state 0xd875f9c9d976ec27, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xd875f9c9da71ec27
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 59 from 10.0.0.4:1812 to 213.74.143.148:38031 length 0
(2) EAP-Message = 0x01040150158000000528a2e03207e6a1163699a1cff7af74692beaafff15b2a3033c4d0238dd7014db04f7f40d669da91832dd39bbdbfca1bdb456f26f4a981b5a820108040100b7a20cf24aad9d35b94575b849f9e8ef528d1b13e7caea59f3cc578845763a601b7fceb8ffda9d989423730b5ea4c0f3
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xd875f9c9da71ec270910ae6415adb475
(2) Finished request
Waking up in 4.3 seconds.
(3) Received Access-Request Id 60 from 213.74.143.148:38031 to 10.0.0.4:1812 length 319
(3) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>"
(3) Chargeable-User-Identity = 0x00
(3) Operator-Name = "1nevotek.com"
(3) Location-Capable = Civic-Location
(3) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(3) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(3) NAS-Port = 4
(3) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(3) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(3) NAS-IP-Address = 10.1.2.225
(3) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(3) Airespace-Wlan-Id = 7
(3) Service-Type = Framed-User
(3) Framed-MTU = 1300
(3) NAS-Port-Type = Wireless-802.11
(3) EAP-Message = 0x0204000d150015030300020230
(3) State = 0xd875f9c9da71ec270910ae6415adb475
(3) Message-Authenticator = 0xbd27e9cbdb496b0f8072580915cabc5d
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(3) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) [chap] = noop
(3) [mschap] = noop
(3) [digest] = noop
(3) eap: Peer sent EAP Response (code 2) ID 4 length 13
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0xd875f9c9da71ec27
(3) eap: Finished EAP session with state 0xd875f9c9da71ec27
(3) eap: Previous EAP request found for state 0xd875f9c9da71ec27, released from the list
(3) eap: Peer sent packet with method EAP TTLS (21)
(3) eap: Calling submodule eap_ttls to process data
(3) eap_ttls: Authenticate
(3) eap_ttls: Continuing EAP-TLS
(3) eap_ttls: [eaptls verify] = ok
(3) eap_ttls: Done initial handshake
(3) eap_ttls: <<< recv TLS 1.2 [length 0002]
(3) eap_ttls: ERROR: TLS Alert read:fatal:unknown CA
(3) eap_ttls: TLS_accept: Need to read more data: error
(3) eap_ttls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
(3) eap_ttls: In SSL Handshake Phase
(3) eap_ttls: In SSL Accept mode
(3) eap_ttls: SSL Application Data
(3) eap_ttls: ERROR: TLS failed during operation
(3) eap_ttls: ERROR: [eaptls process] = fail
(3) eap: ERROR: Failed continuing EAP TTLS (21) session. EAP sub-module failed
(3) eap: Sending EAP Failure (code 4) ID 4 length 4
(3) eap: Failed in EAP select
(3) [eap] = invalid
(3) } # authenticate = invalid
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Delaying response for 1.000000 seconds Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 60 from 10.0.0.4:1812 to 213.74.143.148:38031 length 44
(3) EAP-Message = 0x04040004
(3) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.1 seconds.
(0) Cleaning up request packet ID 57 with timestamp +25 Waking up in 0.2 seconds.
(1) Cleaning up request packet ID 58 with timestamp +26 Waking up in 0.3 seconds.
(2) Cleaning up request packet ID 59 with timestamp +26 Waking up in 0.2 seconds.
(3) Cleaning up request packet ID 60 with timestamp +26
Regards.
[http://www.nevotek.com/nevotekmail/logo.png] Mesut Ozturk
R&D Senior Developer
P: +902122867576 E: mesut(a)nevotek.com
F: +902122867476 W: www.nevotek.com
[http://www.nevotek.com/nevotekmail/maps-icon.png] Santa Clara-CA, USA<https://www.google.com/maps/place/5201+Great+America+Pkwy+%23320,+Santa+Cla…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Istanbul, TURKEY<https://www.google.com/maps/search/teknokent,+Istanbul,+Turkey/@41.106333,2…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Dubai, UAE<https://www.google.com/maps/place/Internet+City,+Building+%2314+-+Dubai+-+U…>
[www.nevotek.com]<www.nevotek.com>
1
0
Hello,
I desperately need your help. I am noob with FreeRadius so please guide me what i am doing wrong.
My point is using freeradius as a Proxy. Because we already have a PAP supported Radius, so i want to do eap auth part on freeradius and then Proxy the Access-request to our own Radius. We are trying 802.1x authantication.
According to my readings i did below steps :
1 . Edit clients.conf for my mobile devices to Access freeradius
client nevotek {
ipaddr = 213.74.143.140
secret = testing1234
}
2. add home_server in proxy.conf
home_server IAS {
ipaddr = 192.168.0.252
port = 1812
type = "auth"
secret = "secret"
response_window = 20
max_outstanding = 65536
}
home_server_pool jack_pool {
type = fail-over
home_server = IAS
}
realm nevotek {
auth_pool = jack_pool
nostirp
}
3. edit eap.cof
default_eap_type = ttls
and in ttls function :
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = yes
proxy_tunneled_request_as_eap = no
virtual_server = "proxy-inner-tunnel"
}
4. prepare Proxy.config soft link for sites-enabled, added nevotek in proxy-inner-tunnel:
server proxy-inner-tunnel {
authorize {
update control {
Proxy-To-Realm := "nevotek"
}
}
authenticate {
eap
}
post-proxy {
eap
}
}
5. disabled "suffix" part in sites-enabled/default
But no chance. Also android and IOS devices has different behaviors.
Here is the output of IOS device :
(2) Received Access-Request Id 216 from 213.74.143.148:19733 to 10.0.0.4:1812 length 311
(2) User-Name = "iosuser2(a)nevotek.com"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "74-8d-08-b1-f2-17"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001205fbba08c"
(2) Acct-Session-Id = "5fbba08c/74:8d:08:b1:f2:17/352"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xca8e79cacb8d6ce3fd1d37ee8f32d170
(2) Message-Authenticator = 0xc7b01c5b471b2eb70578f1dc7ed6e7ea
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./) {
(2) if (&User-Name =~ /(a)\./) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Finished EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Previous EAP request found for state 0xca8e79cacb8d6ce3, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xca8e79cac88a6ce3
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 216 from 10.0.0.4:1812 to 213.74.143.148:19733 length 0
(2) EAP-Message = 0x01040150158000000528d123b84f84592a0a7ccb12b23ec09a0c025464d3f258d5090bffa282b17870910449329f906380b0b4340ef2b6a1dc73e72d35763148b65bfc0401010038af8b17d95590598994e5ec35c96642e3e8fce291173f61b7e1ca06aa4b749dd3f2bbe12175a964524311069490e0f6
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xca8e79cac88a6ce3fd1d37ee8f32d170
(2) Finished request
And here is the output of Android device :
(2) Received Access-Request Id 59 from 213.74.143.148:38031 to 10.0.0.4:1812 length 312
(2) User-Name = "anonymous(a)nevotek.com"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(2) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xd875f9c9d976ec270910ae6415adb475
(2) Message-Authenticator = 0xe92ebb9e5e7641c5515a25ae2ee50929
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./) {
(2) if (&User-Name =~ /(a)\./) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xd875f9c9d976ec27
(2) eap: Finished EAP session with state 0xd875f9c9d976ec27
(2) eap: Previous EAP request found for state 0xd875f9c9d976ec27, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xd875f9c9da71ec27
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 59 from 10.0.0.4:1812 to 213.74.143.148:38031 length 0
(2) EAP-Message = 0x01040150158000000528a2e03207e6a1163699a1cff7af74692beaafff15b2a3033c4d0238dd7014db04f7f40d669da91832dd39bbdbfca1bdb456f26f4a981b5a820108040100b7a20cf24aad9d35b94575b849f9e8ef528d1b13e7caea59f3cc578845763a601b7fceb8ffda9d989423730b5ea4c0f3
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xd875f9c9da71ec270910ae6415adb475
(2) Finished request
Waking up in 4.3 seconds.
(3) Received Access-Request Id 60 from 213.74.143.148:38031 to 10.0.0.4:1812 length 319
(3) User-Name = "anonymous(a)nevotek.com"
(3) Chargeable-User-Identity = 0x00
(3) Operator-Name = "1nevotek.com"
(3) Location-Capable = Civic-Location
(3) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(3) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(3) NAS-Port = 4
(3) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(3) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(3) NAS-IP-Address = 10.1.2.225
(3) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(3) Airespace-Wlan-Id = 7
(3) Service-Type = Framed-User
(3) Framed-MTU = 1300
(3) NAS-Port-Type = Wireless-802.11
(3) EAP-Message = 0x0204000d150015030300020230
(3) State = 0xd875f9c9da71ec270910ae6415adb475
(3) Message-Authenticator = 0xbd27e9cbdb496b0f8072580915cabc5d
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./) {
(3) if (&User-Name =~ /(a)\./) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) [chap] = noop
(3) [mschap] = noop
(3) [digest] = noop
(3) eap: Peer sent EAP Response (code 2) ID 4 length 13
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0xd875f9c9da71ec27
(3) eap: Finished EAP session with state 0xd875f9c9da71ec27
(3) eap: Previous EAP request found for state 0xd875f9c9da71ec27, released from the list
(3) eap: Peer sent packet with method EAP TTLS (21)
(3) eap: Calling submodule eap_ttls to process data
(3) eap_ttls: Authenticate
(3) eap_ttls: Continuing EAP-TLS
(3) eap_ttls: [eaptls verify] = ok
(3) eap_ttls: Done initial handshake
(3) eap_ttls: <<< recv TLS 1.2 [length 0002]
(3) eap_ttls: ERROR: TLS Alert read:fatal:unknown CA
(3) eap_ttls: TLS_accept: Need to read more data: error
(3) eap_ttls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
(3) eap_ttls: In SSL Handshake Phase
(3) eap_ttls: In SSL Accept mode
(3) eap_ttls: SSL Application Data
(3) eap_ttls: ERROR: TLS failed during operation
(3) eap_ttls: ERROR: [eaptls process] = fail
(3) eap: ERROR: Failed continuing EAP TTLS (21) session. EAP sub-module failed
(3) eap: Sending EAP Failure (code 4) ID 4 length 4
(3) eap: Failed in EAP select
(3) [eap] = invalid
(3) } # authenticate = invalid
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> anonymous(a)nevotek.com
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Delaying response for 1.000000 seconds
Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 60 from 10.0.0.4:1812 to 213.74.143.148:38031 length 44
(3) EAP-Message = 0x04040004
(3) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.1 seconds.
(0) Cleaning up request packet ID 57 with timestamp +25
Waking up in 0.2 seconds.
(1) Cleaning up request packet ID 58 with timestamp +26
Waking up in 0.3 seconds.
(2) Cleaning up request packet ID 59 with timestamp +26
Waking up in 0.2 seconds.
(3) Cleaning up request packet ID 60 with timestamp +26
Regards.
[http://www.nevotek.com/nevotekmail/logo.png] Mesut Ozturk
R&D Senior Developer
P: +902122867576 E: mesut(a)nevotek.com
F: +902122867476 W: www.nevotek.com
[http://www.nevotek.com/nevotekmail/maps-icon.png] Santa Clara-CA, USA<https://www.google.com/maps/place/5201+Great+America+Pkwy+%23320,+Santa+Cla…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Istanbul, TURKEY<https://www.google.com/maps/search/teknokent,+Istanbul,+Turkey/@41.106333,2…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Dubai, UAE<https://www.google.com/maps/place/Internet+City,+Building+%2314+-+Dubai+-+U…>
[www.nevotek.com]<www.nevotek.com>
2
1
Hello,
I desperately need your help. I am noob with FreeRadius so please guide me what i am doing wrong.
My point is using freeradius as a Proxy. Because we already have a PAP supported Radius, so i want to do eap auth part on freeradius and then Proxy the Access-request to our own Radius. We are trying 802.1x authantication.
According to my readings i did below steps :
1 . Edit clients.conf for my mobile devices to Access freeradius
client nevotek {
ipaddr = 213.74.143.140
secret = testing1234
}
2. add home_server in proxy.conf
home_server IAS {
ipaddr = 192.168.0.252
port = 1812
type = "auth"
secret = "secret"
response_window = 20
max_outstanding = 65536
}
home_server_pool jack_pool {
type = fail-over
home_server = IAS
}
realm nevotek {
auth_pool = jack_pool
nostirp
}
3. edit eap.cof
default_eap_type = ttls
and in ttls function :
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = yes
proxy_tunneled_request_as_eap = no
virtual_server = "proxy-inner-tunnel"
}
4. prepare Proxy.config soft link for sites-enabled, added nevotek in proxy-inner-tunnel:
server proxy-inner-tunnel {
authorize {
update control {
Proxy-To-Realm := "nevotek"
}
}
authenticate {
eap
}
post-proxy {
eap
}
}
5. disabled "suffix" part in sites-enabled/default
But no chance. Also android and IOS devices has different behaviors.
Here is the output of IOS device :
(2) Received Access-Request Id 216 from 213.74.143.148:19733 to 10.0.0.4:1812 length 311
(2) User-Name = "iosuser2(a)nevotek.com<mailto:iosuser2@nevotek.com><mailto:iosuser2@nevotek.com%3cmailto:iosuser2@nevotek.com%3e>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "74-8d-08-b1-f2-17"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001205fbba08c"
(2) Acct-Session-Id = "5fbba08c/74:8d:08:b1:f2:17/352"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xca8e79cacb8d6ce3fd1d37ee8f32d170
(2) Message-Authenticator = 0xc7b01c5b471b2eb70578f1dc7ed6e7ea
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Finished EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Previous EAP request found for state 0xca8e79cacb8d6ce3, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xca8e79cac88a6ce3
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 216 from 10.0.0.4:1812 to 213.74.143.148:19733 length 0
(2) EAP-Message = 0x01040150158000000528d123b84f84592a0a7ccb12b23ec09a0c025464d3f258d5090bffa282b17870910449329f906380b0b4340ef2b6a1dc73e72d35763148b65bfc0401010038af8b17d95590598994e5ec35c96642e3e8fce291173f61b7e1ca06aa4b749dd3f2bbe12175a964524311069490e0f6
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xca8e79cac88a6ce3fd1d37ee8f32d170
(2) Finished request
And here is the output of Android device :
(2) Received Access-Request Id 59 from 213.74.143.148:38031 to 10.0.0.4:1812 length 312
(2) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com><mailto:anonymous@nevotek.com%3cmailto:anonymous@nevotek.com%3e>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(2) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xd875f9c9d976ec270910ae6415adb475
(2) Message-Authenticator = 0xe92ebb9e5e7641c5515a25ae2ee50929
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xd875f9c9d976ec27
(2) eap: Finished EAP session with state 0xd875f9c9d976ec27
(2) eap: Previous EAP request found for state 0xd875f9c9d976ec27, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xd875f9c9da71ec27
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 59 from 10.0.0.4:1812 to 213.74.143.148:38031 length 0
(2) EAP-Message = 0x01040150158000000528a2e03207e6a1163699a1cff7af74692beaafff15b2a3033c4d0238dd7014db04f7f40d669da91832dd39bbdbfca1bdb456f26f4a981b5a820108040100b7a20cf24aad9d35b94575b849f9e8ef528d1b13e7caea59f3cc578845763a601b7fceb8ffda9d989423730b5ea4c0f3
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xd875f9c9da71ec270910ae6415adb475
(2) Finished request
Waking up in 4.3 seconds.
(3) Received Access-Request Id 60 from 213.74.143.148:38031 to 10.0.0.4:1812 length 319
(3) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com><mailto:anonymous@nevotek.com%3cmailto:anonymous@nevotek.com%3e>"
(3) Chargeable-User-Identity = 0x00
(3) Operator-Name = "1nevotek.com"
(3) Location-Capable = Civic-Location
(3) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(3) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(3) NAS-Port = 4
(3) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(3) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(3) NAS-IP-Address = 10.1.2.225
(3) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(3) Airespace-Wlan-Id = 7
(3) Service-Type = Framed-User
(3) Framed-MTU = 1300
(3) NAS-Port-Type = Wireless-802.11
(3) EAP-Message = 0x0204000d150015030300020230
(3) State = 0xd875f9c9da71ec270910ae6415adb475
(3) Message-Authenticator = 0xbd27e9cbdb496b0f8072580915cabc5d
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)%3cmailto:/@(.+)\.(.+)$/)>>) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) {
(3) if (&User-Name =~ /(a)\./<mailto:/@\./<mailto:/@\./%3cmailto:/@\./>>) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) [chap] = noop
(3) [mschap] = noop
(3) [digest] = noop
(3) eap: Peer sent EAP Response (code 2) ID 4 length 13
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0xd875f9c9da71ec27
(3) eap: Finished EAP session with state 0xd875f9c9da71ec27
(3) eap: Previous EAP request found for state 0xd875f9c9da71ec27, released from the list
(3) eap: Peer sent packet with method EAP TTLS (21)
(3) eap: Calling submodule eap_ttls to process data
(3) eap_ttls: Authenticate
(3) eap_ttls: Continuing EAP-TLS
(3) eap_ttls: [eaptls verify] = ok
(3) eap_ttls: Done initial handshake
(3) eap_ttls: <<< recv TLS 1.2 [length 0002]
(3) eap_ttls: ERROR: TLS Alert read:fatal:unknown CA
(3) eap_ttls: TLS_accept: Need to read more data: error
(3) eap_ttls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
(3) eap_ttls: In SSL Handshake Phase
(3) eap_ttls: In SSL Accept mode
(3) eap_ttls: SSL Application Data
(3) eap_ttls: ERROR: TLS failed during operation
(3) eap_ttls: ERROR: [eaptls process] = fail
(3) eap: ERROR: Failed continuing EAP TTLS (21) session. EAP sub-module failed
(3) eap: Sending EAP Failure (code 4) ID 4 length 4
(3) eap: Failed in EAP select
(3) [eap] = invalid
(3) } # authenticate = invalid
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> anonymous(a)nevotek.com<mailto:anonymous@nevotek.com<mailto:anonymous@nevotek.com%3cmailto:anonymous@nevotek.com>>
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Delaying response for 1.000000 seconds Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 60 from 10.0.0.4:1812 to 213.74.143.148:38031 length 44
(3) EAP-Message = 0x04040004
(3) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.1 seconds.
(0) Cleaning up request packet ID 57 with timestamp +25 Waking up in 0.2 seconds.
(1) Cleaning up request packet ID 58 with timestamp +26 Waking up in 0.3 seconds.
(2) Cleaning up request packet ID 59 with timestamp +26 Waking up in 0.2 seconds.
(3) Cleaning up request packet ID 60 with timestamp +26
Regards.
[http://www.nevotek.com/nevotekmail/logo.png] Mesut Ozturk
R&D Senior Developer
P: +902122867576 E: mesut(a)nevotek.com
F: +902122867476 W: www.nevotek.com
[http://www.nevotek.com/nevotekmail/maps-icon.png] Santa Clara-CA, USA<https://www.google.com/maps/place/5201+Great+America+Pkwy+%23320,+Santa+Cla…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Istanbul, TURKEY<https://www.google.com/maps/search/teknokent,+Istanbul,+Turkey/@41.106333,2…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Dubai, UAE<https://www.google.com/maps/place/Internet+City,+Building+%2314+-+Dubai+-+U…>
[www.nevotek.com]<www.nevotek.com>
1
0
Hello,
I desperately need your help. I am noob with FreeRadius so please guide me what i am doing wrong.
My point is using freeradius as a Proxy. Because we already have a PAP supported Radius, so i want to do eap auth part on freeradius and then Proxy the Access-request to our own Radius. We are trying 802.1x authantication.
According to my readings i did below steps :
1 . Edit clients.conf for my mobile devices to Access freeradius
client nevotek {
ipaddr = 213.74.143.140
secret = testing1234
}
2. add home_server in proxy.conf
home_server IAS {
ipaddr = 192.168.0.252
port = 1812
type = "auth"
secret = "secret"
response_window = 20
max_outstanding = 65536
}
home_server_pool jack_pool {
type = fail-over
home_server = IAS
}
realm nevotek {
auth_pool = jack_pool
nostirp
}
3. edit eap.cof
default_eap_type = ttls
and in ttls function :
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = yes
proxy_tunneled_request_as_eap = no
virtual_server = "proxy-inner-tunnel"
}
4. prepare Proxy.config soft link for sites-enabled, added nevotek in proxy-inner-tunnel:
server proxy-inner-tunnel {
authorize {
update control {
Proxy-To-Realm := "nevotek"
}
}
authenticate {
eap
}
post-proxy {
eap
}
}
5. disabled "suffix" part in sites-enabled/default
But no chance. Also android and IOS devices has different behaviors.
Here is the output of IOS device :
(2) Received Access-Request Id 216 from 213.74.143.148:19733 to 10.0.0.4:1812 length 311
(2) User-Name = "iosuser2(a)nevotek.com<mailto:iosuser2@nevotek.com>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "74-8d-08-b1-f2-17"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001205fbba08c"
(2) Acct-Session-Id = "5fbba08c/74:8d:08:b1:f2:17/352"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xca8e79cacb8d6ce3fd1d37ee8f32d170
(2) Message-Authenticator = 0xc7b01c5b471b2eb70578f1dc7ed6e7ea
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Finished EAP session with state 0xca8e79cacb8d6ce3
(2) eap: Previous EAP request found for state 0xca8e79cacb8d6ce3, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xca8e79cac88a6ce3
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 216 from 10.0.0.4:1812 to 213.74.143.148:19733 length 0
(2) EAP-Message = 0x01040150158000000528d123b84f84592a0a7ccb12b23ec09a0c025464d3f258d5090bffa282b17870910449329f906380b0b4340ef2b6a1dc73e72d35763148b65bfc0401010038af8b17d95590598994e5ec35c96642e3e8fce291173f61b7e1ca06aa4b749dd3f2bbe12175a964524311069490e0f6
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xca8e79cac88a6ce3fd1d37ee8f32d170
(2) Finished request
And here is the output of Android device :
(2) Received Access-Request Id 59 from 213.74.143.148:38031 to 10.0.0.4:1812 length 312
(2) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>"
(2) Chargeable-User-Identity = 0x00
(2) Operator-Name = "1nevotek.com"
(2) Location-Capable = Civic-Location
(2) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(2) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(2) NAS-Port = 4
(2) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(2) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(2) NAS-IP-Address = 10.1.2.225
(2) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(2) Airespace-Wlan-Id = 7
(2) Service-Type = Framed-User
(2) Framed-MTU = 1300
(2) NAS-Port-Type = Wireless-802.11
(2) EAP-Message = 0x020300061500
(2) State = 0xd875f9c9d976ec270910ae6415adb475
(2) Message-Authenticator = 0xe92ebb9e5e7641c5515a25ae2ee50929
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(2) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
(2) [chap] = noop
(2) [mschap] = noop
(2) [digest] = noop
(2) eap: Peer sent EAP Response (code 2) ID 3 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/3.0/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0xd875f9c9d976ec27
(2) eap: Finished EAP session with state 0xd875f9c9d976ec27
(2) eap: Previous EAP request found for state 0xd875f9c9d976ec27, released from the list
(2) eap: Peer sent packet with method EAP TTLS (21)
(2) eap: Calling submodule eap_ttls to process data
(2) eap_ttls: Authenticate
(2) eap_ttls: Continuing EAP-TLS
(2) eap_ttls: Peer ACKed our handshake fragment
(2) eap_ttls: [eaptls verify] = request
(2) eap_ttls: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 4 length 336
(2) eap: EAP session adding &reply:State = 0xd875f9c9da71ec27
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 59 from 10.0.0.4:1812 to 213.74.143.148:38031 length 0
(2) EAP-Message = 0x01040150158000000528a2e03207e6a1163699a1cff7af74692beaafff15b2a3033c4d0238dd7014db04f7f40d669da91832dd39bbdbfca1bdb456f26f4a981b5a820108040100b7a20cf24aad9d35b94575b849f9e8ef528d1b13e7caea59f3cc578845763a601b7fceb8ffda9d989423730b5ea4c0f3
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0xd875f9c9da71ec270910ae6415adb475
(2) Finished request
Waking up in 4.3 seconds.
(3) Received Access-Request Id 60 from 213.74.143.148:38031 to 10.0.0.4:1812 length 319
(3) User-Name = "anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>"
(3) Chargeable-User-Identity = 0x00
(3) Operator-Name = "1nevotek.com"
(3) Location-Capable = Civic-Location
(3) Calling-Station-Id = "04-b1-a1-53-4d-1e"
(3) Called-Station-Id = "58-f3-9c-43-52-a0:Nevotek"
(3) NAS-Port = 4
(3) Cisco-AVPair = "audit-session-id=0a0102e1000001275fbbbb17"
(3) Acct-Session-Id = "5fbbbb17/04:b1:a1:53:4d:1e/359"
(3) NAS-IP-Address = 10.1.2.225
(3) NAS-Identifier = "aa5a6c45-b2c2-436b-90da-0ed2031"
(3) Airespace-Wlan-Id = 7
(3) Service-Type = Framed-User
(3) Framed-MTU = 1300
(3) NAS-Port-Type = Wireless-802.11
(3) EAP-Message = 0x0204000d150015030300020230
(3) State = 0xd875f9c9da71ec270910ae6415adb475
(3) Message-Authenticator = 0xbd27e9cbdb496b0f8072580915cabc5d
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/3.0/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 !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)<mailto:/@(.+)\.(.+)$/)>) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./<mailto:/@\./>) {
(3) if (&User-Name =~ /(a)\./<mailto:/@\./>) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) [chap] = noop
(3) [mschap] = noop
(3) [digest] = noop
(3) eap: Peer sent EAP Response (code 2) ID 4 length 13
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0xd875f9c9da71ec27
(3) eap: Finished EAP session with state 0xd875f9c9da71ec27
(3) eap: Previous EAP request found for state 0xd875f9c9da71ec27, released from the list
(3) eap: Peer sent packet with method EAP TTLS (21)
(3) eap: Calling submodule eap_ttls to process data
(3) eap_ttls: Authenticate
(3) eap_ttls: Continuing EAP-TLS
(3) eap_ttls: [eaptls verify] = ok
(3) eap_ttls: Done initial handshake
(3) eap_ttls: <<< recv TLS 1.2 [length 0002]
(3) eap_ttls: ERROR: TLS Alert read:fatal:unknown CA
(3) eap_ttls: TLS_accept: Need to read more data: error
(3) eap_ttls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca
(3) eap_ttls: In SSL Handshake Phase
(3) eap_ttls: In SSL Accept mode
(3) eap_ttls: SSL Application Data
(3) eap_ttls: ERROR: TLS failed during operation
(3) eap_ttls: ERROR: [eaptls process] = fail
(3) eap: ERROR: Failed continuing EAP TTLS (21) session. EAP sub-module failed
(3) eap: Sending EAP Failure (code 4) ID 4 length 4
(3) eap: Failed in EAP select
(3) [eap] = invalid
(3) } # authenticate = invalid
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file /etc/freeradius/3.0/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> anonymous(a)nevotek.com<mailto:anonymous@nevotek.com>
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Delaying response for 1.000000 seconds Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 60 from 10.0.0.4:1812 to 213.74.143.148:38031 length 44
(3) EAP-Message = 0x04040004
(3) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.1 seconds.
(0) Cleaning up request packet ID 57 with timestamp +25 Waking up in 0.2 seconds.
(1) Cleaning up request packet ID 58 with timestamp +26 Waking up in 0.3 seconds.
(2) Cleaning up request packet ID 59 with timestamp +26 Waking up in 0.2 seconds.
(3) Cleaning up request packet ID 60 with timestamp +26
Regards.
[http://www.nevotek.com/nevotekmail/logo.png] Mesut Ozturk
R&D Senior Developer
P: +902122867576 E: mesut(a)nevotek.com
F: +902122867476 W: www.nevotek.com
[http://www.nevotek.com/nevotekmail/maps-icon.png] Santa Clara-CA, USA<https://www.google.com/maps/place/5201+Great+America+Pkwy+%23320,+Santa+Cla…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Istanbul, TURKEY<https://www.google.com/maps/search/teknokent,+Istanbul,+Turkey/@41.106333,2…> [http://www.nevotek.com/nevotekmail/maps-icon.png] Dubai, UAE<https://www.google.com/maps/place/Internet+City,+Building+%2314+-+Dubai+-+U…>
[www.nevotek.com]<www.nevotek.com>
1
0
Hello,
FR compiled from source, configured according to Apple Support KB and
tested authenticating successfully via PAP.
However, MSCHAPv2 authentication failing.
(3) Received Access-Request Id 27 from XXX to YYY length 134
(3) Service-Type = Framed-User
(3) Framed-Protocol = PPP
(3) User-Name = "jasonh"
(3) MS-CHAP-Challenge = 0x16595e62295ac4e32812a88453133fe1
(3) MS-CHAP2-Response =
0x00326393cddb212a637ff9cac34ccfa379be00000000000000007f39e4bc2b1a7ac69
523633cf0c147f5e3783267bc11a92e
(3) NAS-IP-Address = XXX
(3) NAS-Port = 0
(3) # Executing section authorize from file
/usr/local/etc/raddb/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 !~ /(a)(.+)\.(.+)$/))
{
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/))
-> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./) {
(3) if (&User-Name =~ /(a)\./) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
(3) auth_log: EXPAND
/usr/local/var/log/radius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-
Src-IPv6-Address}}/auth-detail-%Y%m%d
(3) auth_log: -->
/usr/local/var/log/radius/radacct/192.168.90.254/auth-detail-20201120
(3) auth_log:
/usr/local/var/log/radius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-
Src-IPv6-Address}}/auth-detail-%Y%m%d expands to
/usr/local/var/log/radius/radacct/XXX/auth-detail-20201120
(3) auth_log: EXPAND %t
(3) auth_log: --> Fri Nov 20 16:56:00 2020
(3) [auth_log] = ok
(3) [chap] = noop
(3) mschap: Found MS-CHAP attributes. Setting 'Auth-Type = mschap'
(3) [mschap] = ok
(3) [digest] = noop
(3) suffix: Checking for suffix after "@"
(3) suffix: No '@' in User-Name = "jasonh", looking up realm NULL
(3) suffix: No such realm "NULL"
(3) [suffix] = noop
(3) eap: No EAP-Message, not doing EAP
(3) [eap] = noop
(3) files: users: Matched entry DEFAULT at line 167
(3) [files] = ok
(3) opendirectory: The SACL group "com.apple.access_radius" does not
exist on this system.
(3) opendirectory: The host XXX does not have an access group.
(3) opendirectory: no access control groups, all users allowed
(3) [opendirectory] = ok
(3) sql: EXPAND %{User-Name}
(3) sql: --> jasonh
(3) sql: SQL-User-Name set to 'jasonh'
rlm_sql (sql): Closing connection (9): Hit idle_timeout, was idle for
62 seconds
rlm_sql (sql): You probably need to lower "min"
rlm_sql_sqlite: Socket destructor called, closing socket
rlm_sql (sql): Closing connection (10): Hit idle_timeout, was idle for
62 seconds
rlm_sql (sql): You probably need to lower "min"
rlm_sql_sqlite: Socket destructor called, closing socket
rlm_sql (sql): Closing connection (8): Hit idle_timeout, was idle for
62 seconds
rlm_sql (sql): You probably need to lower "min"
rlm_sql_sqlite: Socket destructor called, closing socket
rlm_sql (sql): 0 of 0 connections in use. You may need to increase
"spare"
rlm_sql (sql): Opening additional connection (11), 1 of 32 pending
slots used
rlm_sql_sqlite: Opening SQLite database "/var/db/radius/freeradius.db"
rlm_sql (sql): Reserved connection (11)
(3) sql: EXPAND SELECT id, username, attribute, value, op FROM radcheck
WHERE username = '%{SQL-User-Name}' ORDER BY id
(3) sql: --> SELECT id, username, attribute, value, op FROM radcheck
WHERE username = 'jasonh' ORDER BY id
(3) sql: Executing select query: SELECT id, username, attribute, value,
op FROM radcheck WHERE username = 'jasonh' ORDER BY id
(3) sql: WARNING: User not found in radcheck table.
rlm_sql (sql): 1 of 1 connections in use. You may need to increase
"spare"
rlm_sql (sql): Opening additional connection (12), 1 of 31 pending
slots used
rlm_sql_sqlite: Opening SQLite database "/var/db/radius/freeradius.db"
rlm_sql (sql): Reserved connection (12)
rlm_sql (sql): Released connection (12)
Need 1 more connections to reach min connections (3)
rlm_sql (sql): Opening additional connection (13), 1 of 30 pending
slots used
rlm_sql_sqlite: Opening SQLite database "/var/db/radius/freeradius.db"
(3) sql: EXPAND SELECT groupname FROM radusergroup WHERE username =
'%{SQL-User-Name}' ORDER BY priority
(3) sql: --> SELECT groupname FROM radusergroup WHERE username =
'jasonh' ORDER BY priority
(3) sql: Executing select query: SELECT groupname FROM radusergroup
WHERE username = 'jasonh' ORDER BY priority
(3) sql: User not found in any groups
rlm_sql (sql): Released connection (11)
(3) [sql] = notfound
(3) [expiration] = noop
(3) [logintime] = noop
Not doing PAP as Auth-Type is already set.
(3) [pap] = noop
(3) } # authorize = ok
(3) Found Auth-Type = mschap
(3) # Executing group from file
/usr/local/etc/raddb/sites-enabled/default
(3) authenticate {
(3) mschap: WARNING: No Cleartext-Password configured. Cannot create
NT-Password
(3) mschap: No NT-Password configured. Trying OpenDirectory
Authentication
(3) mschap: OD username_string = jasonh, OD shortUserName= (length =
0)
(3) mschap: ERROR: rlm_mschap: authentication failed - status =
eUndefinedError
(3) [mschap] = reject
(3) } # authenticate = reject
(3) Failed to authenticate the user
(3) Using Post-Auth-Type Reject
(3) # Executing group from file
/usr/local/etc/raddb/sites-enabled/default
(3) Post-Auth-Type REJECT {
(3) sql: EXPAND .query
(3) sql: --> .query
(3) sql: Using query template 'query'
rlm_sql (sql): Reserved connection (11)
(3) sql: EXPAND %{User-Name}
(3) sql: --> jasonh
(3) sql: SQL-User-Name set to 'jasonh'
(3) sql: EXPAND INSERT INTO radpostauth (username, pass, reply,
authdate) VALUES ( '%{SQL-User-Name}',
'%{%{User-Password}:-%{Chap-Password}}', '%{reply:Packet-Type}',
'%S.%M')
(3) sql: --> INSERT INTO radpostauth (username, pass, reply,
authdate) VALUES ( 'jasonh', '', 'Access-Reject', '2020-11-20
16:56:00.652402')
(3) sql: Executing query: INSERT INTO radpostauth (username, pass,
reply, authdate) VALUES ( 'jasonh', '', 'Access-Reject', '2020-11-20
16:56:00.652402')
(3) sql: SQL query returned: success
(3) sql: 1 record(s) updated
rlm_sql (sql): Released connection (11)
(3) [sql] = ok
(3) attr_filter.access_reject: EXPAND %{User-Name}
(3) attr_filter.access_reject: --> jasonh
(3) attr_filter.access_reject: Matched entry DEFAULT at line 11
(3) [attr_filter.access_reject] = updated
(3) [eap] = noop
(3) policy remove_reply_message_if_eap {
(3) if (&reply:EAP-Message && &reply:Reply-Message) {
(3) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(3) else {
(3) [noop] = noop
(3) } # else = noop
(3) } # policy remove_reply_message_if_eap = noop
(3) } # Post-Auth-Type REJECT = updated
(3) Login incorrect (mschap: rlm_mschap: authentication failed - status
= eUndefinedError): [jasonh] (from client ZZZ port 0)
(3) Delaying response for 1.000000 seconds
Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(3) Sending delayed response
(3) Sent Access-Reject Id 27 from YYY:1812 to XXX:56975 length 20
Waking up in 3.9 seconds.
(3) Cleaning up request packet ID 27 with timestamp +304
Ready to process requests
The relevant part I think is this one:
(3) authenticate {
(3) mschap: WARNING: No Cleartext-Password configured. Cannot create
NT-Password
(3) mschap: No NT-Password configured. Trying OpenDirectory
Authentication
(3) mschap: OD username_string = jasonh, OD shortUserName= (length =
0)
(3) mschap: ERROR: rlm_mschap: authentication failed - status =
eUndefinedError
(3) [mschap] = reject
As radtest client only support mschap v1, this skips the OpenDirectory
(OD) authentication so doesn’t provide any further insights.
I see there have been previous issues logged by others with the same
error message, but no confirmation that these were ever fixed.
Help?
Thanks,
Jason H
2
2
Hi
Thank you in advance for your help.
I am trying to create 2 servers with freeradius. I have 5 NAS and I
configure the 2 radius in each one but different order, example:
NAS 1 ---> radius A; radius B
NAS 2 ---> radius B; radius A
...
I have the problem with accounting, START and STOP in any radius server.
What is the best configuration so that the files details of both servers
contain the same?
Is there a how to do the configuration?
Thanks for the answers
2
10
Hi all,
Is there a way I could use the "sites-enabled" virtual servers to allow a specific user (by user name or IP) to pass AAA?
Thanks in advance.
1
0
Hi!
I am sorry for the strange subject but I can't find a shorter description
that still makes some sense.
First: I got this working already in the way I need it but I want to
solicit a maybe more elegant or better solution I may have not seen.
Second: This is for 3.0.21.
Third: This needs a bit of explanation up front before I come to my
question, please bear with me.
What am I doing: I have the usual default/inner-tunnel setup needed for
Wifi+EAP in Eduroam and this all works fine, no problems here.
And I use the "update { &reply: += &session-state: }" method to copy
specific attributes from the inner-tunnel into the outer one, most
important those to steer the VLAN assignment. This also works nice.
Now here is the wrinkle: To aid the internal accounting I also need to
provide the internal APs and Controllers with the inner-User-Name but not
in requests leaving via the federation servers to Eduroam.
Until recently I had a setup like this:
# inner-tunnel vhost
post-auth {
[...]
update reply {
Message-Authenticator !* ANY
EAP-Message !* ANY
Proxy-State !* ANY
MS-MPPE-Encryption-Types !* ANY
MS-MPPE-Encryption-Policy !* ANY
MS-MPPE-Send-Key !* ANY
MS-MPPE-Recv-Key !* ANY
User-Name !* ANY
}
# If internal Wifi system, readd User-Name
if ("%{client:thmtype}" =~ /^aruba-wlan-/) {
update reply {
&User-Name := &User-Name
}
}
[...]
} # /inner-tunnel vhost
"thmtype" is an additional key I add via client.conf for internal systems
needing this. This also works fine.
But this creates reply packages with _two_ User-Name attributes in
Access-Accept, because the "copy from session state" adds the internal
Username to the reply.
But this worked for our Aruba IAPs with Virtual Controller, our Wifi guys
saw the real username in their logs and in the accounting database.
Now we upgraded to Aruba Mobility Controller and they choke on the
duplicate User-Name attribute in the Access-Accept, the device never gets
fully authenticated though the controller clearly receives the
Access-Accept.
To avoid that problem, I now also changed the default VHost to this:
# default vhost
post-auth {
[...]
# Overwrite User-Name in Reply with inner-tunnel
# and remove from session-state to avoid duplication
if ("%{client:thmtype}" =~ /^aruba-wlan-/) {
update {
&reply:User-Name := &session-state:User-Name
&session-state:User-Name !* ANY
}
}
# Add rest of inner-tunnel attributes to reply
update {
&reply: += &session-state:
}
[...]
} # /default vhost
This works fine, but after all those many words, the question:
Is there a more elegant or simpler way to achieve this I didn't see?
Grüße,
Sven.
3
4
Hi,
I have a radius server (freeradius 3.0.19) to authenticate a VPN server
(among other services). I have virtual server to listen from this
device. In this server I have the config:
accouting {
...
sql_log_um
...
}
where "sql_log_um" es a detail config to a file, like this:
detail sql_log_um {
filename = ${radacctdir}/eduroam/eduroam_sql
escape_filenames = no
permissions = 0600
header = "%t"
locking = false
suppress {
User-Password
}
}
Then I have enabled the buffered-sql listening to the previous file and
with:
accouting {
sql
}
to write accouting packets to a mysql database.
My problem is that whenever I reboot this VPN server, it sends an
Accouting-On request which is written to this file like:
Fri Nov 6 13:44:04 2020
Acct-Status-Type = Accounting-On
NAS-Identifier = "MikroTik-CCR-VPN-1-Test"
Acct-Delay-Time = 0
NAS-IP-Address = 192.168.1.100
X-Atica-Service = "vpn"
X-Atica-Service-Filter = "vpn"
Timestamp = 1604666644
and then the buffered-sql runs a query like:
UPDATE radacct
SET acctstoptime = FROM_UNIXTIME(1604663265),
acctsessiontime = '1604663265' - UNIX_TIMESTAMP(acctstarttime),
acctterminatecause = 'NAS-Reboot'
WHERE acctstoptime IS NULL AND
nasipaddress = '155.54.213.6' AND
acctstarttime <= FROM_UNIXTIME(1604663265)
the problem I have is that is queried is run but the record is not
deleted from the detail file neither is marked with the Donestamp mark,
so buffered-sql runs it again and again, without passing to next records.
My first hypothesis has been that this query lasts too match (this is a
very large database), so I have changed the query (just to try) to
something like:
UPDATE radacct
SET acctstoptime = FROM_UNIXTIME(1604663265),
acctsessiontime = '1604663265' - UNIX_TIMESTAMP(acctstarttime),
acctterminatecause = 'NAS-Reboot'
WHERE 1 = 0
just to try and check that the problem is not this, but I'm getting the
same result.
Any help? Thanks.
--
Angel L. Mateo Martínez
Sección de Telemática
Área de Tecnologías de la Información
y las Comunicaciones Aplicadas (ATICA)
http://www.um.es/atica
Tfo: 868889150
Fax: 868888337
3
16