Terminate EAP-PEAP client connection at FreeRadiusProxyandproxy(forward) request as PAP
Ivan Kalik
tnt at kalik.net
Mon Feb 4 15:11:33 CET 2008
You are (still) not listening.
>
>========
>Proxy.conf
>====================================================================
>realm NULL {
> type = radius
> authhost = LOCAL
> accthost = LOCAL
>}
>
>realm LOCAL {
> type = radius
> authhost = LOCAL
> accthost = LOCAL
>}
>
>realm DOMAIN {
> type = radius
> authhost = LOCAL
> accthost = LOCAL
>}
>
>
>realm SECURACCESS {
> type = radius
> authhost = 192.168.1.75:1812
> accthost = 192.168.1.75:1813
> secret = toor
># nostrip
>}
>
>
I have told you to split user and server domains. Rename this
SECUREACCESS into something like SECURE and make another entry for
SECUREACCESS that will be the same as LOCAL.
>====
>users
>===========================================================================
>DEFAULT FreeRADIUS-Proxied-To !* 127.0.0.1, Proxy-To-Realm
>:= LOCAL
>SECURACCESS FreeRADIUS-Proxied-To == 127.0.0.1, Proxy-To-Realm
>:= "SECURACCESS"
>==ENDusers===================================================================
>
Is that first entry doing anything? Proxy to (now renamed) SECURE (server
realm, leave users realm alone).
>
>========
>output:
>===================================================
>rad_recv: Access-Request packet from host 192.168.1.150:32797, id=185,
>length=199
> User-Name = "joakimlindgren at SECURACCESS"
> NAS-IP-Address = 192.168.1.73
> NAS-Port = 1
> NAS-Identifier = "10"
> NAS-Port-Type = Wireless-802.11
> Calling-Station-Id = "0012793DFC0C"
> Called-Station-Id = "000B86600A58"
> Framed-MTU = 1100
> EAP-Message =
>0x0201001f016a6f616b696d6c696e646772656e405345435552414343455353
> Aruba-Essid-Name = "demo-wpa-aes-eap-radius"
> Aruba-Location-Id = "1.1.1"
> Message-Authenticator = 0x4a71e7a8e828c5fbfeba6f153ee22c40
..
>Mon Feb 4 13:04:03 2008 : Debug: rlm_realm: Proxying request from user
>joakimlindgren to realm SECURACCESS
>Mon Feb 4 13:04:03 2008 : Debug: rlm_realm: Adding Realm =
>"SECURACCESS"
>Mon Feb 4 13:04:03 2008 : Debug: rlm_realm: Preparing to proxy
>authentication request to realm "SECURACCESS"
..
EAP doesn't get terminated - it gets proxied. Or at least that's where
this is heading.
..
..
>Mon Feb 4 13:04:03 2008 : Debug: rlm_eap: Request is supposed to be
>proxied to Realm SECURACCESS. Not doing EAP.
..
Server thinks so too.
..
>Mon Feb 4 13:04:04 2008 : Debug: rlm_pap: No clear-text password in the
>request. Not performing PAP.
..
Because it is an EAP request.
..
>Mon Feb 4 13:04:04 2008 : Debug: WARNING: You set Proxy-To-Realm = LOCAL,
>but it is a LOCAL realm! Cancelling invalid proxy request.
..
Hm, so that first entry in users file does something. Try wihout it. This
is why the request doesn't get proxied.
..
>Sending Access-Reject of id 185 to 192.168.1.150 port 32797
> Reply-Message = ""
..
Without proxying the request at all.
>========
>My thoughts about the output:
>==========================================
>>Mon Feb 4 13:04:03 2008 : Debug: rlm_eap: Request is supposed to be
>proxied to Realm >SECURACCESS. Not doing EAP.
>
>Detects that we want to proxy domain SECURACCESS. Terminate EAP and only
>proxy PAP.
>
That's not how you terminate EAP. You need to go through the whole TLS
negotiation first. Once that is done, inner request will be extracted
and that can be proxied.
>
>>Mon Feb 4 13:04:03 2008 : Debug: modsingle[authorize]: calling files
>(rlm_files) for request 0
>>Mon Feb 4 13:04:03 2008 : Debug: users: Matched entry DEFAULT at line
>209
>>Mon Feb 4 13:04:03 2008 : Debug: modsingle[authorize]: returned from
>files (rlm_files) for request 0
>>Mon Feb 4 13:04:03 2008 : Debug: modcall[authorize]: module "files"
>returns ok for request 0
>
>Found the DEFAULT entry in users:
>DEFAULT FreeRADIUS-Proxied-To !* 127.0.0.1, Proxy-To-Realm
>:= LOCAL
>
OK, but that's irrelevant. You should make (users) realm SECURACCESS
local too.
>>Mon Feb 4 13:04:04 2008 : Debug: rlm_pap: No clear-text password in the
>request. Not performing PAP.
>
>Not finding a clear-text password?
>Why can´t it suddenly use the password stored in the eDirectory (Stored as
>clear-text?).
>
Read the debug ==> No clear-text password in the *request*. That's
because the request is still EAP.
>
>>Mon Feb 4 13:04:04 2008 : Debug: modsingle[authorize]: returned from pap
>(rlm_pap) for request 0
>>Mon Feb 4 13:04:04 2008 : Debug: modcall[authorize]: module "pap"
>returns noop for request 0
>>Mon Feb 4 13:04:04 2008 : Debug: modcall: leaving group authorize (returns
>updated) for request 0
>>Mon Feb 4 13:04:04 2008 : Debug: WARNING: You set Proxy-To-Realm =
>LOCAL, but it is a LOCAL >realm! Cancelling invalid proxy request.
>
>Only a warning right?
>
>>Mon Feb 4 13:04:04 2008 : Debug: auth: type Local
>>Mon Feb 4 13:04:04 2008 : Debug: auth: No User-Password or CHAP-Password
>attribute in the request
>
>Failed due to not finding a User-Password...Why?
Because there is no password in the request - it's an EAP request. You
need to finish with EAP first and then PAP attributes will be available.
Ivan Kalik
Kalik Informatika ISP
More information about the Freeradius-Users
mailing list