Problem with external authentication script
Stefan Kuegler
freeradius at kuegler.org
Mon Jun 8 21:18:16 CEST 2009
Hi Alan.
>> I want to use MOTP for authentication. MOTP uses a shell-script
>> (/usr/local/bin/otpverify.sh) to verify the given password. The script
>> needs five arguments (User, One-Time-Password, Secret, PIN and Offset).
>
> Where do those arguments come from?
OK - that's what I forgot to say. The first two arguments (user and
password) come directly from the user. The next three arguments (secret,
pin and offset) are per-user-values. So I wanted to configure these
values in the 'users'-file (/etc/freeradius/users)
For example:
[...]
user1
Secret = 143a5c6fa125ac1f,
PIN = 1234,
Offset = 0
>
>> My system is a fresh installation of freeradius on a Debian/Lenny system.
>>
>> I did the following changes on the following config-files:
>>
>> 1. A new dictionary-file (included in /etc/freeradius/dictionary):
>> /etc/freeradius/dictionary.motp
>> -------------------------------
>> ATTRIBUTE Secret 960 string
>> ATTRIBUTE PIN 961 string
>> ATTRIBUTE Offset 962 string
>
> That defines the attributes. Now, where do the values get populated?
In the users file (see above).
>
>> 2. A new module in
>> /etc/freeradius/radiusd.conf (modules-section):
>> ----------------------------
>> [...]
>> exec motp {
>> wait = yes
>> program = "/usr/local/bin/otpverify.sh %{User-Name}
>> %{User-Password} %{Secret} %{PIN} %{Offset}"
>> input_pairs = request
>> output_pairs = config
>> }
>> [...]
>
> The %{...} syntax replaces the given string with the *value* of the
> named attributed. Where are you setting these values?
Also in the users file.
>
>> The main-problem is: freeradius didn't call the script with all the
>> needed arguments - so the authentication failes:
>>
>> [...]
>> expand: /usr/local/bin/otpverify.sh '%{User-Name}'
>> '%{User-Password}' '%{Secret}' '%{PIN}' '%{Offset}' ->
>> /usr/local/bin/otpverify.sh 'stefan' '123' '' '' ''
>
> Because you haven't define any values for those attributes.
Can you tell me, where I have to define them ??
Thank you very much,
Stefan
More information about the Freeradius-Users
mailing list