+# The simplest configuration you can do is:
+tls default {
+ # You must specify at least one of CACertificateFile or CACertificatePath
+ # for TLS to work. We always verify peer certificate (client and server)
+ # CACertificateFile /etc/cacerts/CA.pem
+ CACertificatePath /etc/cacerts
+
+ # You must specify the below for TLS, we always present our certificate
+ CertificateFile /etc/hostcertkey/host.example.com.pem
+ CertificateKeyFile /etc/hostcertkey/host.example.com.key.pem
+ # Optionally specify password if key is encrypted (not very secure)
+ CertificateKeyPassword "follow the white rabbit"
+ # Optionally enable CRL checking
+ # CRLCheck on
+ # Optionally specify how long CAs and CRLs are cached, default forever
+ # CacheExpiry 3600
+ # Optionally require that peer certs have one of the specified policyOIDs
+ # policyoid 1.2.3 # this option can be used multiple times
+ # policyoid 1.3.4
+}
+
+# If you want one cert for all clients and another for all servers, use
+# defaultclient and defaultserver instead of default. If we wanted some
+# particular server to use something else you could specify a block
+# "tls myserver" and then reference that for that server. If you always
+# name the tls block in the client/server config you don't need a default
+
+# Now we configure clients, servers and realms. Note that these and
+# also the lines above may be in any order, except that a realm
+# can only be configured to use a server that is previously configured.
+
+# A realm can be a literal domain name, * which matches all, or a
+# regexp. A regexp is specified by the character prefix /
+# For regexp we do case insensitive matching of the entire username string.
+# The matching of realms is done in the order they are specified, using the
+# first match found. Some examples are
+# "@example\.com$", "\.com$", ".*" and "^[a-z].*@example\.com$".
+# To treat local users separately you might try first specifying "@"
+# and after that "*".
+
+# Configure a rewrite block if you want to add/remove/modify attributes
+# rewrite example {
+# # Remove NAS-Port.
+# removeAttribute 5
+# # Remove vendor attribute 100.
+# removeVendorAttribute 99:100
+# # Called-Station-Id = "123456"
+# addAttribute 30:123456
+# # Vendor-99-Attr-101 = 0x0f
+# addVendorAttribute 99:101:%0f
+# # Change users @local to @example.com.
+# modifyAttribute 1:/^(.*)@local$/\1@example.com/
+# }
+
+client 2001:db8::1 {
+ type tls
+ secret verysecret
+# we could specify tls here, e.g.
+# tls myclient
+# in order to use tls parameters named myclient. We don't, so we will
+# use "tls defaultclient" if defined, or look for "tls default" as a
+# last resort
+}
+client 127.0.0.1 {
+ type udp
+ secret secret
+# Might do rewriting of incoming messages using rewrite block example
+# rewriteIn example
+# Can also do rewriting of outgoing messages
+# rewriteOut example
+}
+client 127.0.0.1 {
+ type tcp
+ secret secret
+}
+client radius.example.com {
+ type tls
+# secret is optional for TLS
+}
+client radius.example.com {
+ type dtls
+# secret is optional for DTLS
+}
+
+server 127.0.0.1 {
+ type UDP
+ secret secret
+# Might do rewriting of incoming messages using rewrite block example
+# rewriteIn example
+# Can also do rewriting of outgoing messages
+# rewriteOut example
+# Might override loop prevention here too:
+# LoopPrevention off
+}
+realm eduroam.cc {
+ server 127.0.0.1
+# If also want to use this server for accounting, specify
+# accountingServer 127.0.0.1
+}