⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 counter.conf

📁 使用最广泛的radius的linux的源码
💻 CONF
字号:
# -*- text -*-#### counter.conf -- PostgreSQL queries for rlm_sqlcounter####	$Id: counter.conf,v 1.4 2007/12/31 03:40:15 aland Exp $#  Rather than maintaining seperate (GDBM) databases of#  accounting info for each counter, this module uses the data#  stored in the raddacct table by the sql modules. This#  module NEVER does any database INSERTs or UPDATEs.  It is#  totally dependent on the SQL module to process Accounting#  packets.##  The 'sqlmod_inst' parameter holds the instance of the sql#  module to use when querying the SQL database. Normally it#  is just "sql".  If you define more and one SQL module#  instance (usually for failover situations), you can#  specify which module has access to the Accounting Data#  (radacct table).##  The 'reset' parameter defines when the counters are all#  reset to zero.  It can be hourly, daily, weekly, monthly or#  never.  It can also be user defined. It should be of the#  form:#  	num[hdwm] where:#  	h: hours, d: days, w: weeks, m: months#  	If the letter is ommited days will be assumed. In example:#  	reset = 10h (reset every 10 hours)#  	reset = 12  (reset every 12 days)##  The 'key' parameter specifies the unique identifier for the#  counter records (usually 'User-Name').##  The 'query' parameter specifies the SQL query used to get#  the current Counter value from the database. There are 3#  parameters that can be used in the query:#		%k	'key' parameter#		%b	unix time value of beginning of reset period#		%e	unix time value of end of reset period##  The 'check-name' parameter is the name of the 'check'#  attribute to use to access the counter in the 'users' file#  or SQL radcheck or radcheckgroup tables.##  DEFAULT  Max-Daily-Session > 3600, Auth-Type = Reject#      Reply-Message = "You've used up more than one hour today"#sqlcounter dailycounter {	counter-name = Daily-Session-Time	check-name = Max-Daily-Session	reply-name = Session-Timeout	sqlmod-inst = sql	key = User-Name	reset = daily	# This query properly handles calls that span from the	# previous reset period into the current period but	# involves more work for the SQL server than those	# below	query = "SELECT SUM(AcctSessionTime - \                GREATER((%b - AcctStartTime::ABSTIME::INT4), 0)) \                FROM radacct WHERE UserName='%{%k}' AND \                AcctStartTime::ABSTIME::INT4 + AcctSessionTime > '%b'"	# This query ignores calls that started in a previous	# reset period and continue into into this one. But it	# is a little easier on the SQL server#	query = "SELECT SUM(AcctSessionTime) FROM radacct WHERE \#                UserName='%{%k}' AND AND AcctStartTime::ABSTIME::INT4 > '%b'"	# This query is the same as above, but demonstrates an	# additional counter parameter '%e' which is the	# timestamp for the end of the period#	query = "SELECT SUM(AcctSessionTime) FROM radacct \#                WHERE UserName='%{%k}' AND AcctStartTime::ABSTIME::INT4 \#                BETWEEN '%b' AND '%e'"}sqlcounter monthlycounter {	counter-name = Monthly-Session-Time		check-name = Max-Monthly-Session		reply-name = Session-Timeout		sqlmod-inst = sql		key = User-Name		reset = monthly	# This query properly handles calls that span from the	# previous reset period into the current period but	# involves more work for the SQL server than those	# below	query = "SELECT SUM(AcctSessionTime - \                GREATER((%b - AcctStartTime::ABSTIME::INT4), 0)) \                FROM radacct WHERE UserName='%{%k}' AND \                AcctStartTime::ABSTIME::INT4 + AcctSessionTime > '%b'"	# This query ignores calls that started in a previous	# reset period and continue into into this one. But it	# is a little easier on the SQL server#	query = "SELECT SUM(AcctSessionTime) FROM radacct WHERE \#                UserName='%{%k}' AND AND AcctStartTime::ABSTIME::INT4 > '%b'"	# This query is the same as above, but demonstrates an	# additional counter parameter '%e' which is the	# timestamp for the end of the period#	query = "SELECT SUM(AcctSessionTime) FROM radacct \#                WHERE UserName='%{%k}' AND AcctStartTime::ABSTIME::INT4 \#                BETWEEN '%b' AND '%e'"}sqlcounter noresetcounter {        counter-name = Max-All-Session-Time                check-name = Max-All-Session                sqlmod-inst = sql                key = User-Name                reset = never        query = "SELECT SUM(AcctSessionTime) FROM radacct WHERE UserName='%{%k}'"}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -