<HTML>
<HEAD>
<TITLE>Re: 802.1x ->Radius ->Ldap</TITLE>
</HEAD>
<BODY>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>So I gave in and connected radius to my active directory (which we wish we could get rid of).<BR>
<BR>
I’m getting the following error now<BR>
Any thoughts on correcting this winbind error?<BR>
<BR>
[mschapv2] +- entering group MS-CHAP {...}<BR>
[mschap]   NT Domain delimeter found, should we have enabled with_ntdomain_hack?<BR>
[mschap] Told to do MS-CHAPv2 for VIDEOEGG\kplimack with NT-Password<BR>
[mschap]     expand: %{Stripped-User-Name} -> <BR>
[mschap] WARNING: Deprecated conditional expansion ":-".  See "man unlang" for details<BR>
[mschap]     expand: %{User-Name:-None} -> VIDEOEGG\kplimack<BR>
[mschap]     expand: --username=%{%{Stripped-User-Name}:-%{User-Name:-None}} -> --username=VIDEOEGG\kplimack<BR>
[mschap]     expand: %{mschap:NT-Domain} -> VIDEOEGG<BR>
[mschap]     expand: --domain=%{%{mschap:NT-Domain}:-VIDEOEGG} -> --domain=VIDEOEGG<BR>
[mschap]  mschap2: a0<BR>
[mschap] NT Domain delimeter found, should we have enabled with_ntdomain_hack?<BR>
[mschap]     expand: --challenge=%{mschap:Challenge:-00} -> --challenge=f83a0b16419a7f71<BR>
[mschap]     expand: --nt-response=%{mschap:NT-Response:-00} -> --nt-response=fa180186e7d362c5ee57c6c776619d4d72173918ebc17b93<BR>
Exec-Program output: Reading winbind reply failed! (0xc0000001) <BR>
Exec-Program-Wait: plaintext: Reading winbind reply failed! (0xc0000001) <BR>
Exec-Program: returned: 1<BR>
[mschap] External script failed.<BR>
[mschap] FAILED: MS-CHAP2-Response is incorrect<BR>
<BR>
<BR>
<BR>
On 6/18/10 1:54 PM, "Arran Cudbard-Bell" <<a href="a.cudbardb@googlemail.com">a.cudbardb@googlemail.com</a>> wrote:<BR>
<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>That has to go in the wiki somewhere. That's possibly the best explanation of how FreeRADIUS processes requests I've ever heard... :)<BR>
<BR>
-Arran<BR>
On Jun 18, 2010, at 1:50 PM, John Dennis wrote:<BR>
<BR>
> On 06/18/2010 04:03 PM, Kyle Plimack wrote:<BR>
>> So how do I get pap to do it?<BR>
><BR>
> If you're asking how to you get pap to do mschap then that's a nonsensical question.<BR>
><BR>
> Here is how things work:<BR>
><BR>
> The client sends you a radius auth request, you don't get to decide what's in it, the client does.<BR>
><BR>
> The radius server looks the request and says<BR>
><BR>
> "hmmm... lets see what do we have here? What can I do with this?"<BR>
><BR>
> The answer to that is what auth types you have enabled, what the server can lookup, and what's in the request.<BR>
><BR>
> The server will do something like this:<BR>
><BR>
> "Yo unix module, can you handle this one?"<BR>
><BR>
> "Hey pap module, can you handle this one?"<BR>
><BR>
> "Yo mschap module, can you handle this one?"<BR>
><BR>
> At some point hopefully one of the modules will say:<BR>
><BR>
> "No problem I got it"<BR>
><BR>
> The decision as to whether a module can handle the request is made by the module by looking at the data available to it.<BR>
><BR>
> So lets say the client sends a request with a password and you've got pap enabled. The pap module looks at the request and says<BR>
><BR>
> "hmmm ... do I have a password for this user"<BR>
><BR>
> if so then compare my copy of the password to what's in the request.<BR>
><BR>
> How does radius find a user's password? By consulting it's backend data store which can be the users file, a SQL database, or ldap.<BR>
><BR>
> So before the pap module runs ldap will run. ldap says<BR>
><BR>
> "hmm... Can I find passwords for this user?" If so I'll add them to the request as a check item so my dear friend the pap module can use them, you know that pap guy, he's always looking for passwords.<BR>
><BR>
> But WAIT! What if the client sends a MSCHAP request? What does the radius server say then?<BR>
><BR>
> "Well that's a fine kettle of fish! That client has really really tied my hands on this one" The only thing the server can do is run the mschap logic.<BR>
><BR>
> The mshap module looks the request to see if there is a check item with either a clear text password or nt-hash (why? look at the protocol table). If those haven't been added by one of the datastores the mschap module says:<BR>
><BR>
> "Sorry boss, no can do"<BR>
><BR>
> But now the server has run out of options, it's only choice was mschap because that's what the client sent it and the mscap module can't handle it. So the server replies:<BR>
><BR>
> "Loser! You ain't getting in here with those credentials" (Well really Auth-Reject)<BR>
><BR>
><BR>
><BR>
> --<BR>
> John Dennis <<a href="jdennis@redhat.com">jdennis@redhat.com</a>><BR>
><BR>
> Looking to carve out IT costs?<BR>
> www.redhat.com/carveoutcosts/<BR>
> -<BR>
> List info/subscribe/unsubscribe? See <a href="http://www.freeradius.org/list/users.html">http://www.freeradius.org/list/users.html</a><BR>
<BR>
<BR>
-<BR>
List info/subscribe/unsubscribe? See <a href="http://www.freeradius.org/list/users.html">http://www.freeradius.org/list/users.html</a><BR>
<BR>
</SPAN></FONT></BLOCKQUOTE>
</BODY>
</HTML>