Hi folks,  I have some Aironet 1100s and a WLSE on eval loan and am
trying to make sense of how Cisco's WDS (and the WLSE!) use RADIUS
to authenticate themselves.  We got user authentication going, but
the infrastructure devices are a bit confusing.

Thought I'd ask here as there have been some discussions in the past
about this subject, and notably this patch...

http://lists.cistron.nl/pipermail/freeradius-users/2004-September/035796.html

I don't seem to be having much luck with or without this patch, with
FreeRADIUS 1.0.1 or the CVS snapshot - so am (hopefully!) doing
something stupid :-)

I defined a RADIUS user for my WDS slave APs, per:

  myslaveap          Auth-Type := Accept, User-Password == "mypassword"

And set my WDS "slave" APs up per... (IOS config:)

  wlccp ap username myslaveap password 0 mypassword

Their WLCCP/WDS requests are successfully being converted into RADIUS
requests by the WDS master AP, and the RADIUS server has all sorts of
nice things to say like so:

  rad_recv: Access-Request packet from host XXXXXX:1645, id=219, length=140
          User-Name = "myslaveap"
          Framed-MTU = 1400
          Called-Station-Id = "000deddf77b8"
          Calling-Station-Id = "000dedb88cd2"
          Service-Type = Login-User
          Message-Authenticator = 0x9896853fe08e222a1567d74ab645f328
          EAP-Message = 0x0202000b01666c72332d32
          NAS-Port-Type = Wireless-802.11
          NAS-Port = 474
          NAS-IP-Address = XXXXXX
          NAS-Identifier = "myslaveap"
    Processing the authorize section of radiusd.conf
  modcall: entering group authorize for request 0
    modcall[authorize]: module "preprocess" returns ok for request 0
    rlm_eap: EAP packet type response id 2 length 11
    rlm_eap: No EAP Start, assuming it's an on-going EAP conversation
    modcall[authorize]: module "eap" returns updated for request 0
      users: Matched entry myslaveap at line 1
    modcall[authorize]: module "files" returns ok for request 0
  modcall: group authorize returns updated for request 0
    rad_check_password:  Found Auth-Type Accept
    rad_check_password: Auth-Type = Accept, accepting the user
  Sending Access-Accept of id 219 to XXXXXX:1645

However my APs don't get further than this:

  mymasterap#sh wlccp wds ap
      MAC-ADDR       IP-ADDR          STATE         LIFETIME
   000d.edb8.8cd2    XXXXXX          AUTH IN PROGRESS        - 

Looking at the Cisco debugging output (IOS 12.3(2)JA2) I'm wondering
if the request/response IDs are out of whack as per the WLSE - i.e.
the response that's coming back doesn't have the ID that the WDS
master AP is expecting.

Feb 11 14:26:56: WDS: WLCCP_TYPE_AAA (EAP Request) rcvd, Org = 000d.edb8.8cd2, 
Rsp = 000d.eddf.77b8, Req 000d.edb8.8cd2, id 3 auth 0 key 0
Feb 11 14:26:56: dot11_auth_parse_client_pak: Received EAPOL packet from 
000d.edb8.8cd2
Feb 11 14:26:56: dot11_auth_parse_client_pak: id is not matching 
req-id:1resp-id:2, waiting for response
Feb 11 14:26:56: WDS: WLCCP_TYPE_AAA (EAP Request) rcvd, Org = 000d.edb8.8cd2, 
Rsp = 000d.eddf.77b8, Req 000d.edb8.8cd2, id 4 auth 0 key 0
Feb 11 14:26:56: dot11_auth_parse_client_pak: Received EAPOL packet from 
000d.edb8.8cd2
Feb 11 14:26:56: dot11_auth_dot1x_run_rfsm: Executing 
Action(CLIENT_WAIT,CLIENT_REPLY) for 000d.edb8.8cd2
Feb 11 14:26:56: dot11_auth_dot1x_send_response_to_server: Sending client 
000d.edb8.8cd2 data to server
Feb 11 14:26:56: dot11_auth_dot1x_send_response_to_server: Started timer 
server_timeout 60 seconds
Feb 11 14:26:56: dot11_auth_dot1x_parse_aaa_resp: Received server response: PASS
Feb 11 14:26:56: dot11_auth_dot1x_run_rfsm: Executing 
Action(SERVER_WAIT,SERVER_FAIL) for 000d.edb8.8cd2
Feb 11 14:26:56: dot11_auth_dot1x_send_client_fail: Authentication failed for 
000d.edb8.8cd2
Feb 11 14:26:56: dot11_auth_send_msg:  sending data to requestor status 0
Feb 11 14:26:56: dot11_auth_send_msg: client FAILED to authenticate 
000d.edb8.8cd2, node_type 1 for application 0x1
Feb 11 14:26:56: dot11_auth_delete_client_entry: 000d.edb8.8cd2 is deleted for 
application 0x1
Feb 11 14:26:56: WDS: DOT11_AAA_FAILURE ... 
Feb 11 14:26:56: WDS: WLCCP_TYPE_AAA (FINISH) sent with Source IP = XXXXXX, Org 
= 000d.eddf.77b8, Rsp = 000d.edb8.8cd2, Req 000d.edb8.8cd2, auth 4, key 0

This master WDS AP has a config which looks like this:

  wlccp authentication-server infrastructure FOO
  wlccp wds priority 254 interface BVI1

  aaa group server radius FOO
   server-private YYYYYY auth-port 1812 acct-port 1813 key 0 foo

  aaa authentication login FOO group FOO
  aaa authorization network FOO group FOO 

and the FreeRADIUS clients.conf says:

  client XXXXXX {
          secret = foo
          shortname = mymasterap
          nastype = cisco
  }

eap.conf says:

        eap {
                default_eap_type = leap
                timer_expire     = 60
                ignore_unknown_eap_types = no
                cisco_accounting_username_bug = no

                md5 {
                }

                leap {
                }

                gtc {
                        auth_type = PAP
                }

                mschapv2 {
                }
        }

radiusd.conf says:
  
  modules {
  $INCLUDE ${confdir}/eap.conf
  
          files {
                  usersfile = ${confdir}/users
                  acctusersfile = ${confdir}/acct_users
                  compat = no
          }
  
  [...]
  
          preprocess {
                  huntgroups = ${confdir}/huntgroups
                  hints = ${confdir}/hints 
                  with_ascend_hack = no 
                  ascend_channels_per_line = 23
                  with_ntdomain_hack = no
                  with_specialix_jetstream_hack = no
                  with_cisco_vsa_hack = yes
          }       
  }       
  
  instantiate {   
          exec
          expr
  }               
                  
  authorize {     
          preprocess
          eap
          files
  }       
  
  authenticate { 
          eap
  }
  
I've tried tweaking the values of "cisco_accounting_username_bug" and
"with_cisco_vsa_hack", but to no avail.

Just wondering how other people have fared in getting WDS working
against FreeRADIUS!  Thanks in advance for any thoughts on this...

Cheers,

Martin



- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to