The configuration for 3.0 is largely compatible with the 2.x.x configuration. However, it is NOT possible to simply use the 2.x.x configuration as-is. Instead, you should re-create it.

The raddb directory has been re-arranged. Some directory paths are now much deeper than they used to be. However, the files now have a consistent naming scheme.


Some modules have been:


The unlang policy language has been updated.

New / Changed Functionality

A number of other functionality has changed.


A number of configuration items have moved into the "security" subsection of radiusd.conf. If you use these, you should move them. Otherwise, they can be ignored.

The list of moved options is:


These entries should be moved from radiusd.conf to the security subsection of that file.


Many names used by configuration items were inconsistent in earlier versions of the server. These names have been unified in version 3.0.

If a file is being referenced or created, the name filename is used instead of detailfile or usersfile, etc.

If a file is being created, the initial permissions are set by the permissions configuration directive.

If a directory hierarchy needs to be created, the permissions are set by dir_permissions.

If an external host is referenced in the context of a module the server configuration directive is used.

The configuration directives are now written as multiple distinct words separated by underscores _. Previously, hyphens or underscores were used at random.

The configuration directives file, script_file, module, detail, detailfile, attrsfile, perm, dirperm, detailperm, and hostname are deprecated. As well as any false portmanteaus, and configuration items that used hyphens as word delimiters. e.g. foo-bar has been changed to foo_bar. Please update your module configuration to use the new syntax.

In most cases the server will tell you the replacement config item to use. As always, run the server in debugging mode to see these messages.


The dialip_admin directory has been removed. No one stepped forward to maintain it, and the code had not been changed in many years.

The code is now hosted in dialup_admin on Github.