(RADIATOR) Tarpitting agressive users
Robert Blayzor
noc at inoc.net
Tue Sep 28 10:37:36 CDT 2004
I know we bought this up in the past, but I'm not really sure we ever
discussed an "end all" solution for this problem.
The problem we see from time to time is a "run away" PPPoE client just
loses it's mind and consantly auths, disconnects, auths, disconnects,
... every second or two.
I just found a user or two that have been doing this for weeks and it's
polluting our RADIUS accounting SQL logs with MILLIONS of rows just from
this one user.
I'm wondering if Radiator can be modified or configured to tarpit these
types of run away clients. I'm looking for something I can set a
threshhold within a certain period of time and then set a "lock out
period". ie:
If a user logs in more than 100 times within an hour, fail auth for two
hours. Ideally it would be nice to log (only once) that the user has
been tarpitted and then log send anything to the auth log until the
period expires.
I know this is probably not that easy to do and I'm not looking for
something that will create more SQL transactioins. I'm willing to
consume more RAM (which is available) over doing a SQL table to keep
track of this.
Are there any good examples to maybe write a PreHandler hook that can
use a persistant hash of arrays where I could store the user at realm in
the hash with the number of logins, etc. I'd need to have this hash
survive each time the sub is exited. Something tells me this would
require a Radiator modification. Am I wrong?
TIA
-Robert
--
Archive at http://www.open.com.au/archives/radiator/
Announcements on radiator-announce at open.com.au
To unsubscribe, email 'majordomo at open.com.au' with
'unsubscribe radiator' in the body of the message.
More information about the radiator
mailing list