Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
radiusd.conf(5)		 FreeRADIUS configuration file	       radiusd.conf(5)

       radiusd.conf - configuration file for the FreeRADIUS server

       The  radiusd.conf file resides in the radius database directory,	by de-
       fault  /usr/local/share/examples/freeradius/raddb.   It	 defines   the
       global configuration for	the FreeRADIUS RADIUS server.

       There  are  a  large number of configuration parameters for the server.
       Most are	documented in the file itself as comments.   This  page	 docu-
       ments  only  the	format of the file.  Please read the radiusd.conf file
       itself for more information.

       The configuration file parser is	independent of the  server  configura-
       tion.   This means that you can put almost anything into	the configura-
       tion file.  So long as it is properly formatted,	the server will	start.

       When the	server parses the configuration	file, it looks only for	 those
       configurations  it understands.	Extra configuration items are ignored.
       This "feature" can be (ab)used in certain interesting ways.

       The file	format is  line-based,	like  many  other  Unix	 configuration
       files.	Each entry in the file must be placed on a line	by itself, al-
       though continuations are	supported.

       The file	consists of configuration items	(variable = value pairs), sec-
       tions, and comments.

	      Variables	can be set via:

		   name	= value

	      Single and double-quoted strings are permitted:

		   string1 = "hello world"
		   string2 = 'hello mom'

	      A	 section begins	with a section name, followed on the same line
	      by an open bracket '{'.  Section	may  contain  other  sections,
	      comments,	 or  variables.	  Sections may be nested to any	depth,
	      limited only by available	memory.	 A section ends	with  a	 close
	      bracket '}', on a	line by	itself.

		   section {

	      Sections	can  sometimes	have a second name following the first
	      one.  The	situations where this is legal depend on the  context.
	      See  the examples	and comments in	the radiusd.conf file for more

		   section foo {

	      Any line beginning with a	(#) is deemed to be a comment, and  is
	      ignored.	 Comments can appear after a variable or section defi-

		   # comment
		   foo = bar # set variable 'foo' to value 'bar'
		   section { # start of	section
		   }	     # end of section

	      Long lines can be	broken up via continuations, using '\' as  the
	      last character of	the line.  For example,	the following entry:

		   foo = "blah \
		   blah	\

	      will  set	 the  value of the variable "foo" to "blah blah	blah".
	      Any CR or	LF is not turned into a	space, but  all	 other	white-
	      space is preserved in the	final value.

       The  value  of a	variable can reference another variable.  These	refer-
       ences are evaluated when	the configuration file is loaded, which	 means
       that  there  is no run-time cost	associated with	them.  This feature is
       most useful for turning long, repeated pieces of	text into short	ones.

       Variables are referenced	by ${variable_name}, as	in the following exam-

	    foo	= bar	    # set variable 'foo' to value 'bar'
	    who	= ${foo}    # sets variable 'who' to value of variable 'foo'
	    my = "${foo} a" # sets variable 'my' to "bar a"

       If the variable exists in a section or subsection, it can be referenced
       as ${section.subsection.variable}.  Forward references are not allowed.
       Relative	 references  are  allowed, by pre-pending the name with	one or
       more period.

	    blogs = ${.foo}

       Will set	variable blogs to the value of variable	foo, from the  current

	    blogs = ${}

       Will  set variable blogs	to the value of	variable foo, from the section
       which contains the current section.

	    blogs = ${modules.detail.filename}

       Will set	variable blogs to the value of variable	filename, of  the  de-
       tail module, which is in	the modules section of the configuration file.

       Properties  of  anonymous  parent sections may also be referenced, cur-
       rently name and instance	are supported.

	    modules {		example	foo {		     file =  ${.:name}
		 }	}	Will set variable file to the name of the con-
       taining section (example).

	    modules {		example	foo {		      file  =  ${.:in-
       stance}		 }	}	Will set variable file to the instance
       name of the containing section (foo).

	    modules {		example	foo {		     file = ${..:name}
		 }	}	Will set variable file to the name of the par-
       ent of the containing section (modules).


       radiusd(8) unlang(5)

       Alan DeKok <>

				  28 Jun 2013		       radiusd.conf(5)


Want to link to this manual page? Use this URL:

home | help