rlm_perl error
JUND, Aurélien
aurelien.jund at sfr.com
Mon Aug 30 17:22:29 CEST 2010
I'd like to put a value in Cleartext-Password (for chap authentifiaction) and add a reply attribute Callback-Number. I get these data from a ldap server, my script work well to get the data but I have trouble for using them outside the script.
For troubleshooting I use a simplified version with fix values, I call the perl module again for authenticate in order to see if the request is well updated:
example.pl:
sub authorize {
if ($RAD_REQUEST{'Service-Type'} = "Framed-User"){
$RAD_CHECK{'Cleartext-Password'} = "11111";
$RAD_REPLY{'Callback-Number'} = "Number";
return RLM_MODULE_OK }
else {return RLM_MODULE_REJECT}
}
sub authenticate {
if ($RAD_REQUEST{'Service-Type'} = "Framed-User"){
return RLM_MODULE_OK }
else {return RLM_MODULE_REJECT}
}
Here is the output in freeradius log:
Ready to process requests.
rad_recv: Access-Request packet from host 172.16.0.11 port 60818, id=88, length=127
User-Name = "testuser"
Service-Type = Framed-User
NAS-IP-Address = 203.63.154.1
NAS-Identifier = "203.63.154.1"
NAS-Port = 1234
Called-Station-Id = "123456789"
Calling-Station-Id = "987654321"
NAS-Port-Type = Async
CHAP-Password = 0x3511b30139b6c14a8147fdfa0e39141b75
CHAP-Challenge = 0x31323334353637383930313233343536
+- entering group authorize {...}
[suffix] No '@' in User-Name = "testuser", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
[chap] Setting 'Auth-Type := CHAP'
++[chap] returns ok
GOT CLONE 873921248 0x1d0e030
rlm_perl: Added pair NAS-Port-Type = Async
rlm_perl: Added pair CHAP-Password = 0x3511b30139b6c14a8147fdfa0e39141b75
rlm_perl: Added pair Service-Type = Framed-User
rlm_perl: Added pair Calling-Station-Id = 987654321
rlm_perl: Added pair Called-Station-Id = 123456789
rlm_perl: Added pair CHAP-Challenge = 0x31323334353637383930313233343536
rlm_perl: Added pair User-Name = testuser
rlm_perl: Added pair NAS-Identifier = 203.63.154.1
rlm_perl: Added pair NAS-IP-Address = 203.63.154.1
rlm_perl: Added pair NAS-Port = 1234
rlm_perl: Added pair Auth-Type = CHAP
++[perl] returns ok
[attr_filter.pre-auth] expand: %{Realm} ->
++[attr_filter.pre-auth] returns noop
[pap] WARNING! No "known good" password found for the user. Authentication may fail because of this.
++[pap] returns noop
Found Auth-Type = CHAP
+- entering group CHAP {...}
rlm_perl: Added pair NAS-Port-Type = Async
rlm_perl: Added pair CHAP-Password = 0x3511b30139b6c14a8147fdfa0e39141b75
rlm_perl: Added pair Service-Type = Framed-User
rlm_perl: Added pair Called-Station-Id = 123456789
rlm_perl: Added pair Calling-Station-Id = 987654321
rlm_perl: Added pair CHAP-Challenge = 0x31323334353637383930313233343536
rlm_perl: Added pair User-Name = testuser
rlm_perl: Added pair NAS-Identifier = 203.63.154.1
rlm_perl: Added pair NAS-Port = 1234
rlm_perl: Added pair NAS-IP-Address = 203.63.154.1
rlm_perl: Added pair Auth-Type = CHAP
++[perl] returns ok
[chap] login attempt by "testuser" with CHAP password
[chap] Cleartext-Password is required for authentication
++[chap] returns invalid
Failed to authenticate the user.
Login incorrect (rlm_chap: Clear text password not available): [testuser/<CHAP-Password>] (from client ext port 1234 cli 987654321)
Using Post-Auth-Type Reject
+- entering group REJECT {...}
[attr_filter.access_reject] expand: %{User-Name} -> testuser
attr_filter: Matched entry DEFAULT at line 11
++[attr_filter.access_reject] returns updated
Delaying reject of request 0 for 1 seconds
Going to the next request
Waking up in 0.9 seconds.
Sending delayed reject for request 0
Sending Access-Reject of id 88 to 172.16.0.11 port 60818
Waking up in 4.9 seconds.
Obviously I did something wrong, but cant figure out what. Any Idea ?
-----Message d'origine-----
De : freeradius-users-bounces+aurelien.jund=sfr.com at lists.freeradius.org [mailto:freeradius-users-bounces+aurelien.jund=sfr.com at lists.freeradius.org] De la part de Boian Jordanov
Envoyé : mercredi 25 août 2010 23:30
À : FreeRadius users mailing list
Cc : Boian Jordanov
Objet : Re: rlm_perl error
On Aug 25, 2010, at 4:47 PM, JUND, Aurélien wrote:
> I'm running freeradius-server-2.1.7. I found this information in the default perl module configuration file.
>
> ----------
> De : freeradius-users-bounces+aurelien.jund=sfr.com at lists.freeradius.org [mailto:freeradius-users-bounces+aurelien.jund=sfr.com at lists.freeradius.org] De la part de Alan DeKok
> Envoyé : mercredi 25 août 2010 14:35
> À : FreeRadius users mailing list
> Objet : Re: rlm_perl error
>
> Bjørn Mork wrote:
>> "JUND, Aurélien" <aurelien.jund at sfr.com> writes:
>>
>>> 3 hashes are given to the module and filled with value-pairs (Attribute names and values):
>>>
>>> # %RAD_CHECK Read-only Check items
>>> # %RAD_REQUEST Read-only Attributes from the request
>>> # %RAD_REPLY Read-write Attributes for the reply
modules/perl ... this have to be updated.
all hashes are read-write
>>>
>>> Why are %RAD_CHECK and %RAD_REQUEST Read-Only?
>>
>> I believe this is wrong. rlm_perl copies data back from all 5 hashes
>> (RAD_REQUEST, RAD_REPLY, RAD_CHECK, RAD_REQUEST_PROXY, RAD_REQUEST_PROXY_REPLY):
>
> It may be correct if he's running a very old version of the server.
>
>
>
> -
> List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
More information about the Freeradius-Users
mailing list