Re: Using EAP-TTLS with LDAP

2004-08-26 Thread David Sotnick
On Thu, 26 Aug 2004, Alan DeKok wrote:

>   To be a little pickier: LDAP doesn't understand EAP, but FreeRADIUS
> does.  So if you use LDAP as a user/password store, and tie that
> password to EAP via FreeRADIUS, it will work.  If you try to pass the
> EAP session to an LDAP database, it won't work.

Right. Thanks for the clarification.

>   If you configure the LDAP module in "radiusd.conf", and un-comment
> it's entry in the "authorize" section, then any user who has a
> clear-text password in LDAP will be able to do PAP, CHAP, MS-CHAP,
> etc.

I currently have LDAP working for other NAS clients (VPN and network
equipmnet access). Our passwords are stored crypted in LDAP.

>   Once you configure tls && ttls, then those users will be able to do
> EAP-TTLS, too.  The goal of the server is to make all of these
> authentication/database methods as independent as possible, which
> makes it easier to configure and deploy.

That sounds great -- and I think I'm really close, but I'm not quite
there.

Here's my config files and the output of 'radiusd -X':

users:

DEFAULT�NAS-IP-Address == 138.72.250.12, NAS-Port-Type == Wireless-802.11
Fall-Through = No

DEFAULT�Auth-Type := Reject
Reply-Message = "You do not have permission to  this system."

radiusd.conf:

This is pretty much the same as the stock radiusd.conf with the
ldap stuff uncommented in the authorize and authenticate sections.
This also confuses me -- the comments in radiusd.conf say:

# Note that this means "check plain-text password against
# the ldap database", which means that EAP won't work,
# as it does not supply a plain-text password.

But I need Auth-Type LDAP for my non-EAP clients using just LDAP.

Anyway, here's the debug output:

rad_recv: Access-Request packet from host 138.72.250.12:1108, id=123, length=139
User-Name = "sotnickd"
NAS-IP-Address = 138.72.250.12
NAS-Port = 1
NAS-Port-Type = Wireless-802.11
NAS-Identifier = "port-02"
Called-Station-Id = "00-20-A6-53-19-AF:WPANetTest"
Calling-Station-Id = "00-30-65-0B-9B-B0"
EAP-Message = 0x0283000d01736f746e69636b64
Message-Authenticator = 0xc1528083d9701f023156aca80134d852
  Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 0
Invalid operator for item Suffix: reverting to '=='
Invalid operator for item Suffix: reverting to '=='
Invalid operator for item Suffix: reverting to '=='
  modcall[authorize]: module "preprocess" returns ok for request 0
radius_xlat:  
'/usr/local/etc/raddb-test/radacct-test/138.72.250.12/auth-detail-20040826'
rlm_detail: 
/usr/local/etc/raddb-test/radacct-test/%{Client-IP-Address}/auth-detail-%Y%m%d expands 
to /usr/local/etc/raddb-test/radacct-test/138.72.250.12/auth-detail-20040826
  modcall[authorize]: module "auth_log" returns ok for request 0
  modcall[authorize]: module "chap" returns noop for request 0
  modcall[authorize]: module "mschap" returns noop for request 0
rlm_realm: No '@' in User-Name = "sotnickd", looking up realm NULL
rlm_realm: No such realm "NULL"
  modcall[authorize]: module "suffix" returns noop for request 0
  rlm_eap: EAP packet type response id 131 length 13
  rlm_eap: No EAP Start, assuming it's an on-going EAP conversation
  modcall[authorize]: module "eap" returns updated for request 0
users: Matched DEFAULT at 1
  modcall[authorize]: module "files" returns ok for request 0
rlm_ldap: - authorize
rlm_ldap: performing user authorization for sotnickd
radius_xlat:  '(uid=sotnickd)'
radius_xlat:  'o=example.com'
rlm_ldap: ldap_get_conn: Checking Id: 0
rlm_ldap: ldap_get_conn: Got Id: 0
rlm_ldap: attempting LDAP reconnection
rlm_ldap: (re)connect to ldap.example.com:389, authentication 0
rlm_ldap: bind as / to ldap.example.com:389
rlm_ldap: waiting for bind result ...
rlm_ldap: Bind was successful
rlm_ldap: performing search in o=example.com, with filter (uid=sotnickd)
rlm_ldap: looking for check items in directory...
rlm_ldap: looking for reply items in directory...
rlm_ldap: user sotnickd authorized to use remote access
rlm_ldap: ldap_release_conn: Release Id: 0
  modcall[authorize]: module "ldap" returns ok for request 0
modcall: group authorize returns updated for request 0
  rad_check_password:  Found Auth-Type EAP
auth: type "EAP"
  Processing the authenticate section of radiusd.conf
modcall: entering group authenticate for request 0
  rlm_eap: EAP Identity
  rlm_eap: processing type tls
  rlm_eap_tls: Initiate
  rlm_eap_tls: Start returned 1
  modcall[authenticate]: module "eap" returns handled for request 0
modcall: group authenticate returns handled for request 0
Sending Access-Challenge of id 123 to 138.72.250.12:1108
EAP-Message = 0x018400061520
Message-Authenticator = 0x
State = 0x5a26d1528b7b24612a53713ef28b24b1
Finished request 0
Going to the next request
--- Walking the entire request list ---
Waking up in 6 seconds...
rad_recv: Access-

Re: Using EAP-TTLS with LDAP

2004-08-26 Thread Alan DeKok
David Sotnick <[EMAIL PROTECTED]> wrote:
> I'm trying to get EAP-TTLS working on an Avaya WPA WLAN network, using
> LDAP as the user/password database. I'm running FreeRadius version 1.0.0.

  That shouldn't be a problem.

> In an older version of the doc/rlm_eap documentation, it seems to imply
> that you can use both EAP and LDAP, but newer documentation states that
> because the LDAP module requires the "User-Password" attribute, that when
> LDAP is on that EAP won't work.

  To be a little pickier: LDAP doesn't understand EAP, but FreeRADIUS
does.  So if you use LDAP as a user/password store, and tie that
password to EAP via FreeRADIUS, it will work.  If you try to pass the
EAP session to an LDAP database, it won't work.

> Is it possible to accomplish what I'm trying to do? I want to use TTLS as
> the tunnel transport for the EAP stuff, but have FreeRadius send the
> client username/password to the back-end LDAP server for authorization and
> authentication.

  Delete the last two words: "... and authentication".  Let FreeRADIUS
do the authentication work, and let LDAP do the database work.

  If you configure the LDAP module in "radiusd.conf", and un-comment
it's entry in the "authorize" section, then any user who has a
clear-text password in LDAP will be able to do PAP, CHAP, MS-CHAP,
etc.

  Once you configure tls && ttls, then those users will be able to do
EAP-TTLS, too.  The goal of the server is to make all of these
authentication/database methods as independent as possible, which
makes it easier to configure and deploy.

  Alan DEKok.

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


Using EAP-TTLS with LDAP

2004-08-25 Thread David Sotnick
I'm trying to get EAP-TTLS working on an Avaya WPA WLAN network, using
LDAP as the user/password database. I'm running FreeRadius version 1.0.0.

In an older version of the doc/rlm_eap documentation, it seems to imply
that you can use both EAP and LDAP, but newer documentation states that
because the LDAP module requires the "User-Password" attribute, that when
LDAP is on that EAP won't work.

Is it possible to accomplish what I'm trying to do? I want to use TTLS as
the tunnel transport for the EAP stuff, but have FreeRadius send the
client username/password to the back-end LDAP server for authorization and
authentication.

Any help is greatly appreciated!

Regards,

--
David Sotnick
Pixar Animation Studios
Emeryville, CA

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