Cache user access on eap-ttls with ldap as authenticate system
André
netriver at gmail.com
Thu Jan 14 19:13:29 CET 2021
Hello Alan,
I was thinking about a hack...
>From the established/Accepted connection from the person I would store the
password encrypted sha512 or a better mechanism to encrypt.
with a TTL in a database MariaDB or the like.
If the system hits the cache,
update control {
Cache-Status-Only = 'yes'
}
cache
if (User-Password && !notfound) {
ldap
if (!ok) {
update control {
Auth-Type := perl # Perl / Python script controls
if the server is available or not,
# If not uses the cache to do auth with the user password against the local
hashed pass + username
# Can do additional controls like OTP
}
}
}
if (User-Password && notfound) {
update control {
Auth-Type := ldap
}
}
cache
In authorize {
I have
Auth-Type perl {
if (!notfound) {
perl
}
Any comments?
}
On Thu, Jan 14, 2021 at 5:36 PM Alan DeKok <aland at deployingradius.com>
wrote:
> On Jan 14, 2021, at 12:00 PM, André <netriver at gmail.com> wrote:
> >
> > This only caches ldap attributes, it's not able to store results
> > Access-Accept for example from a existing ldap confirmed authentication?
>
> No.
>
> > Would it be possible to store the result "Access-Accept" for a user +
> > password combination for future approval?
>
> No.
>
> That's not how EAP works. You *cannot* just cache EAP packets and
> expect it to work.
>
> Your options are:
>
> a) cache the Cleartext-Password (or whatever) returned from LDAP
>
> b) set up session resumption caching. See the "cache" subsection of
> mods-available/eap
>
> c) both of the above
>
> Alan DeKok.
>
>
> -
> List info/subscribe/unsubscribe? See
> http://www.freeradius.org/list/users.html
More information about the Freeradius-Users
mailing list