1 # Master config file, must be in /etc/radsecproxy or specified with -c option
2 # All possible config options are listed below
4 # First you may define any global options, these are:
6 # You can optionally specify addresses and ports to listen on
7 # Multiple statements can be used for multiple ports/addresses
10 #ListenTCP [2001:700:1:7:215:f2ff:fe35:307d]:1812
11 #ListenTLS 10.10.10.10:2084
12 #ListenTLS [2001:700:1:7:215:f2ff:fe35:307d]:2084
13 #ListenDTLS [2001:700:1:7:215:f2ff:fe35:307d]:2084
15 # To specify a certain address/port for UDP/TLS requests you can use e.g.
16 #SourceUDP 127.0.0.1:33000
21 # Optional log level. 3 is default, 1 is less, 5 is more
23 # Optional LogDestination, else stderr used for logging
25 #LogDestination file:///tmp/rp.log
26 # Or logging with Syslog. LOG_DAEMON used if facility not specified
27 # The supported facilities are LOG_DAEMON, LOG_MAIL, LOG_USER and
28 # LOG_LOCAL0, ..., LOG_LOCAL7
29 #LogDestination x-syslog:///
30 #LogDestination x-syslog:///log_local2
32 # For generating log entries conforming to the F-Ticks system, specify
33 # FTicksReporting with one of the following values.
34 # None -- Do not log in F-Ticks format. This is the default.
35 # Basic -- Do log in F-Ticks format but do not log VISINST.
36 # Full -- Do log in F-Ticks format and do log VISINST.
37 # Please note that in order to get F-Ticks logging for a given client,
38 # its matching client configuration block has to contain the
39 # fticksVISCOUNTRY option.
41 # You can optionally specify FTicksMAC in order to determine if and
42 # how Calling-Station-Id (users Ethernet MAC address) is being logged.
43 # Static -- Use a static string as a placeholder for
45 # Original -- Log Calling-Station-Id as-is.
46 # VendorHashed -- Keep first three segments as-is, hash the rest.
47 # VendorKeyHashed -- Like VendorHashed but salt with F-Ticks-Key. This
49 # FullyHashed -- Hash the entire string.
50 # FullyKeyHashed -- Like FullyHashed but salt with F-Ticks-Key.
52 # In order to use FTicksMAC with one of VendorKeyHashed or
53 # FullyKeyHashed, specify a key with FTicksKey.
56 # Default F-Ticks configuration:
60 # There is an option for doing some simple loop prevention. Note that
61 # the LoopPrevention directive can be used in server blocks too,
62 # overriding what's set here in the basic settings.
64 # Add TTL attribute with value 20 if not present (prevents endless loops)
67 # If we have TLS clients or servers we must define at least one tls block.
68 # You can name them whatever you like and then reference them by name when
69 # specifying clients or servers later. There are however three special names
70 # "default", "defaultclient" and "defaultserver". If no name is defined for
71 # a client, the "defaultclient" block will be used if it exists, if not the
72 # "default" will be used. For a server, "defaultserver" followed by "default"
75 # The simplest configuration you can do is:
77 # You must specify at least one of CACertificateFile or CACertificatePath
78 # for TLS to work. We always verify peer certificate (client and server)
79 # CACertificateFile /etc/cacerts/CA.pem
80 CACertificatePath /etc/cacerts
82 # You must specify the below for TLS, we always present our certificate
83 CertificateFile /etc/hostcertkey/host.example.com.pem
84 CertificateKeyFile /etc/hostcertkey/host.example.com.key.pem
85 # Optionally specify password if key is encrypted (not very secure)
86 CertificateKeyPassword "follow the white rabbit"
87 # Optionally enable CRL checking
89 # Optionally specify how long CAs and CRLs are cached, default forever
91 # Optionally require that peer certs have one of the specified policyOIDs
92 # policyoid 1.2.3 # this option can be used multiple times
96 # If you want one cert for all clients and another for all servers, use
97 # defaultclient and defaultserver instead of default. If we wanted some
98 # particular server to use something else you could specify a block
99 # "tls myserver" and then reference that for that server. If you always
100 # name the tls block in the client/server config you don't need a default
102 # Now we configure clients, servers and realms. Note that these and
103 # also the lines above may be in any order, except that a realm
104 # can only be configured to use a server that is previously configured.
106 # A realm can be a literal domain name, * which matches all, or a
107 # regexp. A regexp is specified by the character prefix /
108 # For regexp we do case insensitive matching of the entire username string.
109 # The matching of realms is done in the order they are specified, using the
110 # first match found. Some examples are
111 # "@example\.com$", "\.com$", ".*" and "^[a-z].*@example\.com$".
112 # To treat local users separately you might try first specifying "@"
113 # and after that "*".
115 # Configure a rewrite block if you want to add/remove/modify attributes
119 # # Remove vendor attribute 100.
120 # removeVendorAttribute 99:100
121 # # Called-Station-Id = "123456"
122 # addAttribute 30:123456
123 # # Vendor-99-Attr-101 = 0x0f
124 # addVendorAttribute 99:101:%0f
125 # # Change users @local to @example.com.
126 # modifyAttribute 1:/^(.*)@local$/\1@example.com/
132 # we could specify tls here, e.g.
134 # in order to use tls parameters named myclient. We don't, so we will
135 # use "tls defaultclient" if defined, or look for "tls default" as a
141 # Might do rewriting of incoming messages using rewrite block example
143 # Can also do rewriting of outgoing messages
150 client radius.example.com {
152 # secret is optional for TLS
154 client radius.example.com {
156 # secret is optional for DTLS
162 # Might do rewriting of incoming messages using rewrite block example
164 # Can also do rewriting of outgoing messages
166 # Might override loop prevention here too:
171 # If also want to use this server for accounting, specify
172 # accountingServer 127.0.0.1
178 # secret is optional for TLS
179 # we could specify tls here, e.g.
181 # in order to use tls parameters named myserver. We don't, so we will
182 # use "tls defaultserver" if defined, or look for "tls default" as a
185 server radius.example.com {
189 # statusserver is optional, can be on or off. Off is default
191 #server radius.example.com {
195 ## statusserver is optional, can be on or off. Off is default
198 # Equivalent to example.com
199 realm /@example\.com$ {
202 # One can define a realm without servers, the proxy will then reject
203 # and requests matching this. Optionally one can specify ReplyMessage
204 # attribute to be included in the reject message. One can also use
205 # AccountingResponse option to specify that the proxy should send such.
209 replymessage "No Access"
210 # AccountingResponse On
212 # The realm below is equivalent to /.*
214 server radius.example.com
216 # If you don't have a default server you probably want to
217 # reject all unknowns. Optionally you can also include a message
219 # replymessage "User unknown"