blob: 82e1619f150647d59d570fcdf2bdef0d7dc7cc6e [file] [log] [blame]
Brian Waters13d96012017-12-08 16:53:31 -06001# This file contains information for configuring the app_radgw extension.
2# To find how to have freeDiameter load this extension, please refer to the freeDiameter documentation.
3#
4# The app_radgw extension allows a freeDiameter agent to serve as a
5# RADIUS/Diameter gateway. Typically, a RADIUS client (e.g. a NAS) will connect to
6# this agent, and the message will be converted to Diameter and sent to a Diameter server.
7#
8# Note that this extension does not provide a fully functionnal RADIUS/Diameter gateway.
9# You need to load plugins to handle specific RADIUS messages and convert them to
10# Diameter apps such as NASREQ, EAP, ... See the next section for information.
11
12
13###########
14# PLUGINS #
15###########
16
17# Additional plugins must be loaded to support specific RADIUS messages and attributes.
18
19# Plugins are registered either for every message, or by port (auth or acct), or by port and code.
20# The general format is:
21# RGWX = plugin [: conf_file] [: port] [: code(s)] ;
22# Where:
23# plugin is the quoted file name (relative or absolute) of the plugin to load (.rgwx files).
24# conf_file (optional) is the quoted name of the configuration file.
25# port (optional), either auth or acct.
26# If not specified, extension is called for messages incoming on both ports
27# code(s): space-separated list of command codes for which this extension must be called.
28# If not specified, the extension is called for all incoming messages.
29# The values are interpreted as hexadecimal.
30#
31# The plugins are called in the order they appear in this file.
32# Here are some explained examples:
33# RGWX = "3579.rgwx"; Load this extension and call it for all messages. No configuration file.
34# RGWX = "3579.rgwx" : "3579.conf"; Same as previous but with a configuration file specified.
35# RGWX = "3579.rgwx" : auth; No configuration file, but called only for RADIUS messages received on authentication port.
36# RGWX = "3579.rgwx" : 4 8 b; Called for messages with command code 4, 8, or 11 only.
37# RGWX = "3579.rgwx" : "3579.conf" : auth : 4 8 b; All parameters combined.
38
39# Once the list of extensions for an incoming message has been called (or if the list is empty),
40# an error is logged if some RADIUS attributes of the message have not been handled.
41
42RGWX = "extensions/echodrop.rgwx" : "echodrop.rgwx.conf"; # See echodrop.rgwx.conf.sample file
43RGWX = "extensions/auth.rgwx" : auth;
44RGWX = "extensions/acct.rgwx" : acct;
45# RGWX = "extensions/debug.rgwx"; # Uncomment to see the result of the translation plugins.
46
47# For some extensions (auth, acct), a false configuration file name
48# can be passed to specify flags, such as "nonai" to ignore NAI-based routing.
49
50##################
51# RADIUS Clients #
52##################
53
54# Each RADIUS client must be declared in the form:
55# nas = IP / shared-secret ;
56# IP can be ipv4 or ipv6
57# port can be additionaly restricted with brackets: IP[port] (ex: 192.168.0.1[1812])
58# shared-secret can be a quoted string, or a list of hexadecimal values.
59# examples:
60# nas = 192.168.100.1 / "secret key" ; # the shared secret buffer is 0x736563726574206b6579 (length 10 bytes)
61# nas = fe00::1 / 73 65 63 72 65 74 20 6b 65 79; # same shared secret as previously
62# When a packet is received from an IP not declared here, it is discarded.
63
64# If the RADIUS client is a Proxy that forwards messages from different peers, it must be
65# declared instead as follow:
66# pxy = IP / shared-secret ;
67# Note that it is not recommended to use this gateway implementation with a proxy currently,
68# since the management of duplicate messages might be insufficient.
69
70# The old notation cli = ... is equivalent to nas = ... and kept for backward compatibility.
71
72
73####################
74# Authentication #
75# Authorization #
76####################
77
78# Enable the RADIUS/Diameter authentication/authorization gateway?
79# auth_server_enable = 1;
80
81# The port on which the accounting server listens
82# auth_server_port = 1812;
83
84# The IPv4 on which to bind the server, or "disable" if IPv4 must not be used.
85# auth_server_ip4 = 0.0.0.0;
86
87# The IPv6 address to which the server is bound, or "disable"
88# auth_server_ip6 = :: ;
89
90
91################
92# Accounting #
93################
94
95# Enable the RADIUS/Diameter accounting gateway?
96# acct_server_enable = 1;
97
98# The port on which the accounting server listens
99# acct_server_port = 1813;
100
101# The IPv4 on which to bind the server, or "disable" if no IPv4 is wanted.
102# acct_server_ip4 = 0.0.0.0;
103
104# The IPv6 address to which the server is bound, or "disable"
105# acct_server_ip6 = :: ;