Subversion Repositories configs

Rev

Rev 4 | Blame | Compare with Previous | Last modification | View Log | RSS feed

# -*- text -*-
##
## templates.conf -- configurations to be used in multiple places
##
##      $Id: c26e7d3945427350ebe8995f6c197efaecec5eb4 $

######################################################################
#
#  Version 2.0 has a useful new feature called "templates".
#
#  Use templates by adding a line in radiusd.conf:
#
#       $INCLUDE templates.conf
#
#  The goal of the templates is to have common configuration located
#  in this file, and to list only the *differences* in the individual
#  sections.  This feature is most useful for sections like "clients"
#  or "home_servers", where many may be defined, and each one has
#  similar repeated configuration.
#
#  Something similar to templates can be done by putting common
#  configuration into separate files, and using "$INCLUDE file...",
#  but this is more flexible, and simpler to understand.  It's also
#  cheaper for the server, because "$INCLUDE" makes a copy of the
#  configuration for inclusion, and templates are simply referenced.
#
#  The templates are defined in the "templates" section, so that they
#  do not affect the rest of the server configuration.
#
#  A section can reference a template by using "$template name"
#
templates {
          #
          #  The contents of the templates section are other
          #  configuration sections that would normally go into
          #  the configuration files.
          #

          #
          #  This is a default template for the "home_server" section.
          #  Note that there is no name for the section.
          #
          #  Any configuration item that is valid for a "home_server"
          #  section is also valid here.  When a "home_server" section
          #  is defined in proxy.conf, this section is referenced as
          #  the template.
          #
          #  Configuration items that are explicitly listed in a
          #  "home_server" section of proxy.conf are used in
          #  preference to the configuration items listed here.
          #
          #  However, if a configuration item is NOT listed in a
          #  "home_server" section of proxy.conf, then the value here
          #  is used.
          #
          #  This functionality lets you put common configuration into
          #  a template, and to put only the unique configuration
          #  items in "proxy.conf".  Each section in proxy.conf can
          #  then contain a line "$template home_server", which will
          #  cause it to reference this template.
          #
          home_server {
                        response_window = 20
                        zombie_period = 40
                        revive_interval = 120
                        #
                        #  Etc.
          }

          #
          #  You can also have named templates.  For example, if you
          #  are proxying to 3 different home servers all at the same
          #  site, with identical configurations (other than IP
          #  addresses), you can use this named template.
          #

          #  Then, each "home_server" section in "proxy.conf" would
          #  only list the IP address of that home server, and a
          #  line saying
          #
          #             $template example_com
          #
          #  That would tell FreeRADIUS to look in the section below
          #  for the rest of the configuration items.
          #
          #  For various reasons, you shouldn't have a "." in the template
          #  name.  Doing so means that the server will be unable to find
          #  the template.
          #
          example_com {
                      type = auth
                      port = 1812
                      secret = testing123
                      response_window = 20
                      #
                      # Etc...
          }

          #
          #  You can have templates for other sections, too, but they
          #  seem to be most useful for home_servers.
          #
          #  For now, you can use templates only for sections in
          #  radiusd.conf, not sub-sections.  So you still have to use
          #  the "$INCLUDE file.." method for things like defining
          #  multiple "sql" modules, each with similar configuration.
          #       
}