Your maximum never usage time has bee reached.
-
I got this error message upon login on my captiveportal. You guys know which file this error message is located? I want to customize the message to something more specific. Thank to anyone who can answer this query.
-
Your maximum never usage time has been reached is the message. I am wondering if this somewhere in captiveportal or in free radius config.
-
@rennai said in Your maximum never usage time has bee reached.:
"Your maximum never usage"
Are you sure that is the exact text ?
-
@Gertjan the actual message on the captiveportal upon login when I have no more access hours is "Your maximum never usage time has been reached"
I was wondering where i could find this message somewhere in those pfsense files. Im not sure but i think it is on captiveportal related files or radius related files.
-
@rennai said in Your maximum never usage time has bee reached.:
"Your maximum never usage time has been reached"
I'm not a native English speaker, but that phrase is .... not English.
It doesn't make any sense.......
After some serious grepping, I needed some motivation.
I asked the local oracle : Your maximum never usage time has been reachedSo your question is known ....
From there, I've found it, knowing that it exists always helps ^^ :
The string is : "Your maximum %s usage time has been reached" : there is a parameter !!
You'll find the files (binary !) here : /usr/local/lib/freeradius-3.2.3/Binary file /usr/local/lib/freeradius-3.2.3/rlm_counter.a matches
Binary file /usr/local/lib/freeradius-3.2.3/rlm_counter.so matches
Binary file /usr/local/lib/freeradius-3.2.3/rlm_sqlcounter.so matches
Binary file /usr/local/lib/freeradius-3.2.3/rlm_sqlcounter.a matchesAs freeradius is open source, you can look up what the message actually means, and when its shown.
-
@Gertjan thankyou so much for your response. i truly appreciate your effort to answer my queries. i was actually using the grep command to find it but i think i am doing it incorrectly. perhaps if you dont mind, for learning sake, could you also share the command for this issue? so maybe if would also help others out there.
thanks a lot. i love this community :)
-
Sharing what command ?
Like you, I was grepping around, using "maximum usage" as the search string - these two words are the least common.
But that string doesn't exist.The 'throw it in Google' gave me the answer.
From there, it's a small step to https://doc.freeradius.org/rlm__sqlcounter_8c_source.html line 466.The 'inst' structure ( see definition here https://doc.freeradius.org/rlm__sqlcounter_8c_source.html#l00060 should contain a text string like "Daily, weekly, monthly, never or user defined" pointed to be the pointer 'reset'.
The %s was replaced by 'never'.
So "Your maximum %s usage time has bee reached." became "Your maximum never usage time has bee reached."Might be this one :
But there, there is no 'never' selection possible in that drop down list.
Be aware : the pfSense GUI part of the Freeradius settings scratches just the surface, and is far from complete.
I'm using Freeradius myself only to 'authorize' captive portal, I'm not counting bytes and seconds, making live as simple as possible.
Good luck debugging (and reading manuals) about this one ^^ -
Not only is "never" a typo for "forever" in the error message, it's implementation/support in Captive Portal with freeRadius is limited in scope. It does not correctly cumulate either time or data quota for "multiple" connections to a single user account. Daily, Weekly, and Monthly settings simply represent accounts that reset their time/quota value (through cron) to zero based on the related schedules.
As the error is not triggered unless a reauthentication with freeRadius is attempted, the routine that checks for max "forever time limit" is also related to the captive portal data quota issues.
The fix to this is mentioned in Redmines 13843, 13844 and 14118 but full support in Captive Portal for freeRadius does not appear to be anywhere in the near future. We have overridden captiveportal.inc code to have the "reauthenticate every minute" option use the interim value (typically 10 minutes) to check both time (based on session start) and quota across multiple connections to a single user account and force a disconnect by maxing out the freeradius quota which will force a Captive Portal disconnect. By using the freeRadius quota tracking method (file based, not SQL), we are not limited by the Captive Portal 4096 GB quota limit. Thus, the triggering of a disconnect at 4096 GB is simply commented out in captiveportal.inc. FYI, there is a sleep value in captiveportal.inc that limits the number of simultaneous connections that can be processed in (reauthenticate) one minute (practical only 40-60 connected users). By reauthenticating less often, hundreds of connected users can be accommodated and will be disconnected to the nearest "interim value default=10 minutes" which is acceptable for our application. Most of this is detailed in my comments on those Redmines above.
-
Thank you all for your answers to this issue. Truly more heads are better than one :)