by only once I'm presuming you mean for the account not to be used more than once simultaneously... there is probably a better way, but maybe you could add an extra field "state" or something similar and use a postauthhook to set state to 1 once they login, then have a prehook to check state when users login, to ensure its set to zero... but then you might end with probs when you don't get 'stop' records to clear the state... anyway I'm sure Hugh has a much cleverer solution :-)
 
Paul
----- Original Message -----
From: Shaun
Sent: Wednesday, July 24, 2002 2:04 AM
Subject: (RADIATOR) Maximun sessions

Hello,
 
I'm using radiator for prepaid and post internet service. I have it set up so that for prepaid  it grabs users from an informix database and substracts time and so forth. The problem that i'm having is that i only  want users from this particular database to be able to log in only once. Post-paid users on the other hand authenticate from a flat users file an will have the privelege to be able to do multiple loggin sessions.I would like to know how to specify different "Maximum Sessions" for each. Here is an example of my config file
 
 
 
# more radius.cfg
Foreground
LogStdout
Trace 4
PidFile /tmp/radiusd.pid
 
LogDir          .
DbDir           .
 
LogFile         %L/logfile
DictionaryFile %D/dictionary
 
 
 

<Client 206.27.238.242>
        Secret  ***********
</Client>
 
<Client 206.153.59.179>
        Secret  *********
</Client>
 
#DupInterval 0
 
<Realm DEFAULT>
   MaxSessions     1
            AcctLogFileName %L/detail
 
        WtmpFileName %L/wtmp
 
        PasswordLogFileName %L/password.log
 
      RejectHasReason
        AuthByPolicy    ContinueUntilAccept
 
        <AuthBy SQL>
                Identifier SQL
                DBSource        dbi:Informix:tis
                DBUsername      informix
                DBAuth          l1gaw01
 
                AuthSelect select password, balancetime from subscribers where (
username='%n' and balancetime > 0)
 
                AuthColumnDef   0,Password,check
                AuthColumnDef   1,Session-Timeout,reply
                AddToReply      Service-Type = Framed-User,Framed-Protocol = PPP
 
        AcctSQLStatement update subscribers set balancetime=balancetime-0%{Acct-
Session-Time} where username='%n'
 

        </AuthBy>
        <AuthBy FILE>
                Identifier File
                Filename        ./users
                        </AuthBy>
 
</Realm>
 
 
 
 
 
And here is an example of our users file:
 
prepaid Password = "prepaid"
        Simultaneous-Use = 2,
        Service-Type = Framed-User,
        Framed-Protocol = PPP,
        Framed-IP-Netmask = 255.255.255.255,
        Framed-Routing = None,
        Framed-MTU = 1500,
        Framed-Compression = Van-Jacobson-TCP-IP,
        Session-Timeout = 300,
        Primary-DNS-Server = 206.27.238.61,
        Secondary-DNS-Server = 206.27.238.61,
        Client-Assign-DNS = Yes,
        cisco-avpair = "ip:dns-servers=206.27.238.61 206.27.238.61"
 
Could  you tell me what i'm doing wrong?
 
 
 
Regards
Shaun Eck
Belize Telecom Ltd
Belize City, Belize
 

Reply via email to