remove deprecated configuration item
[freeradius.git] / raddb / radiusd.conf.in
index addf1e7..a83c1f6 100644 (file)
@@ -118,12 +118,36 @@ libdir = @libdir@
 #
 pidfile = ${run_dir}/${name}.pid
 
+#
+#  correct_escapes: use correct backslash escaping
+#
+#  Prior to version 3.0.5, the handling of backslashes was a little
+#  awkward, i.e. "wrong".  In some cases, to get one backslash into
+#  a regex, you had to put 4 in the config files.
+#
+#  Version 3.0.5 fixes that.  However, for backwards compatibility,
+#  the new method of escaping is DISABLED BY DEFAULT.  This means
+#  that upgrading to 3.0.5 won't break your configuration.
+#
+#  If you don't have double backslashes (i.e. \\) in your configuration,
+#  this won't matter to you.  If you do have them, fix that to use only
+#  one backslash, and then set "correct_escapes = true".
+#
+#  You can check for this by doing:
+#
+#      $ grep '\\\\' $(find raddb -type f -print)
+#
+correct_escapes = true
+
 #  panic_action: Command to execute if the server dies unexpectedly.
 #
 #  FOR PRODUCTION SYSTEMS, ACTIONS SHOULD ALWAYS EXIT.
 #  AN INTERACTIVE ACTION MEANS THE SERVER IS NOT RESPONDING TO REQUESTS.
 #  AN INTERACTICE ACTION MEANS THE SERVER WILL NOT RESTART.
 #
+#  THE SERVER MUST NOT BE ALLOWED EXECUTE UNTRUSTED PANIC ACTION CODE
+#  PATTACH CAN BE USED AS AN ATTACK VECTOR.
+#
 #  The panic action is a command which will be executed if the server
 #  receives a fatal, non user generated signal, i.e. SIGSEGV, SIGBUS,
 #  SIGABRT or SIGFPE.
@@ -205,7 +229,7 @@ cleanup_delay = 5
 #
 #  Useful range of values: 256 to infinity
 #
-max_requests = 1024
+max_requests = 16384
 
 #  hostname_lookups: Log the names of clients or just their IP addresses
 #  e.g., www.freeradius.org (on) or 206.47.27.232 (off).
@@ -261,44 +285,6 @@ log {
        file = ${logdir}/radius.log
 
        #
-       #  If this configuration parameter is set, then log messages for
-       #  a *request* go to this file, rather than to radius.log.
-       #
-       #  i.e. This is a log file per request, once the server has accepted
-       #  the request as being from a valid client.  Messages that are
-       #  not associated with a request still go to radius.log.
-       #
-       #  Not all log messages in the server core have been updated to use
-       #  this new internal API.  As a result, some messages will still
-       #  go to radius.log.  Please submit patches to fix this behavior.
-       #
-       #  The file name is expanded dynamically.  You should ONLY user
-       #  server-side attributes for the filename (e.g. things you control).
-       #  Using this feature MAY also slow down the server substantially,
-       #  especially if you do thinks like SQL calls as part of the
-       #  expansion of the filename.
-       #
-       #  The name of the log file should use attributes that don't change
-       #  over the lifetime of a request, such as User-Name,
-       #  Virtual-Server or Packet-Src-IP-Address.  Otherwise, the log
-       #  messages will be distributed over multiple files.
-       #
-       #  Logging can be enabled for an individual request by a special
-       #  dynamic expansion macro:  %{debug: 1}, where the debug level
-       #  for this request is set to '1' (or 2, 3, etc.).  e.g.
-       #
-       #       ...
-       #       update control {
-       #              Tmp-String-0 = "%{debug:1}"
-       #       }
-       #       ...
-       #
-       #  The attribute that the value is assigned to is unimportant,
-       #  and should be a "throw-away" attribute with no side effects.
-       #
-       #requests = ${logdir}/radiusd-%{%{Virtual-Server}:-DEFAULT}-%Y%m%d.log
-
-       #
        #  Which syslog facility to use, if ${destination} == "syslog"
        #
        #  The exact values permitted here are OS-dependent.  You probably
@@ -449,6 +435,9 @@ security {
        #  rejects will be sent at 'cleanup_delay' time, when the request
        #  is deleted from the internal cache of requests.
        #
+       #  As of Version 3.0.5, "reject_delay" has sub-second resolution.
+       #  e.g. "reject_delay =  1.4" seconds is possible.
+       #
        #  Useful ranges: 1 to 5
        reject_delay = 1
 
@@ -471,6 +460,8 @@ security {
        #  See also raddb/sites-available/status
        #
        status_server = yes
+
+@openssl_version_check_config@
 }
 
 # PROXY CONFIGURATION
@@ -619,6 +610,14 @@ thread pool {
        auto_limit_acct = no
 }
 
+######################################################################
+#
+#  SNMP notifications.  Uncomment the following line to enable
+#  snmptraps.  Note that you MUST also configure the full path
+#  to the "snmptrap" command in the "trigger.conf" file.
+#
+#$INCLUDE trigger.conf
+
 # MODULE CONFIGURATION
 #
 #  The names and configuration of each module is located in this section.
@@ -695,6 +694,36 @@ instantiate {
        # lines, and list "redundant_sql" in the authorize and
        # accounting sections.
        #
+       #  The "virtual" module defined here can also be used with
+       #  dynamic expansions, under a few conditions:
+       #
+       #  * The section is "redundant", or "load-balance", or
+       #    "redundant-load-balance"
+       #  * The section contains modules ONLY, and no sub-sections
+       #  * all modules in the section are using the same rlm_
+       #    driver, e.g. They are all sql, or all ldap, etc.
+       #
+       #  When those conditions are satisfied, the server will
+       #  automatically register a dynamic expansion, using the
+       #  name of the "virtual" module.  In the example below,
+       #  it will be "redundant_sql".  You can then use this expansion
+       #  just like any other:
+       #
+       #       update reply {
+       #               Filter-Id := "%{redundant_sql: ... }"
+       #       }
+       #
+       #  In this example, the expansion is done via module "sql1",
+       #  and if that expansion fails, using module "sql2".
+       #
+       #  For best results, configure the "pool" subsection of the
+       #  module so that "retry_delay" is non-zero.  That will allow
+       #  the redundant block to quickly ignore all "down" SQL
+       #  databases.  If instead we have "retry_delay = 0", then
+       #  every time the redundant block is used, the server will try
+       #  to open a connection to every "down" database, causing
+       #  problems.
+       #
        #redundant redundant_sql {
        #       sql1
        #       sql2
@@ -721,14 +750,6 @@ policy {
 
 ######################################################################
 #
-#  SNMP notifications.  Uncomment the following line to enable
-#  snmptraps.  Note that you MUST also configure the full path
-#  to the "snmptrap" command in the "trigger.conf" file.
-#
-#$INCLUDE trigger.conf
-
-######################################################################
-#
 #      Load virtual servers.
 #
 #      This next $INCLUDE line loads files in the directory that