@@ -14,45 +14,99 @@ If you need to provide the `abfab-tr-idp` with SSL support, enable it.
1414
1515### listen { ... }
1616
17+ ```
18+ listen {
19+ ipaddr = *
20+ port = 2083
21+ type = auth
22+ proto = tcp
1723
24+ ```
1825
1926## tls { ... }
2027
28+ ```
29+ tls {
30+ ```
2131
2232NOTE: Moonshot tends to distribute certs separate from keys.
2333
34+ ```
35+ chain {
36+ certificate_file = ${certdir}/server.pem
37+ private_key_file = ${certdir}/server.key
38+ private_key_password = whatever
39+ }
2440
41+ ca_file = ${cadir}/ca.pem
42+ dh_file = ${certdir}/dh
43+ fragment_size = 8192
44+ ca_path = ${cadir}
45+ cipher_list = "DEFAULT"
2546
47+ cache {
48+ enable = no
49+ lifetime = 24 # hours
50+ max_entries = 255
51+ }
2652
53+ require_client_cert = yes
54+ verify {
2755
56+ }
2857
58+ psk_query = %psksql("select hex(key) from psk_keys where keyid = '%{TLS-PSK-Identity}'")
59+ }
2960
61+ ```
3062
3163.Please see the `sites-availables/abfab-idp` file.
3264
65+ ```
66+ virtual_server = abfab-idp
3367
68+ ```
3469
3570.Reference to the next `clients {...}` section.
3671
72+ ```
73+ clients = radsec-abfab
74+ }
3775
76+ ```
3877
3978### clients { ... }
4079
4180This client stanza will match other RP proxies from other realms
4281established via the trustrouter. In general additional client
4382stanzas are also required for local services.
4483
84+ ```
85+ clients radsec-abfab {
86+ ```
4587
4688.Allow all clients, but require TLS.
4789
90+ ```
91+ client default {
92+ ipaddr = 0.0.0.0/0
93+ proto = tls
94+ }
4895
96+ ```
4997
5098.An example local service.
5199
100+ ```
101+ client service_1 {
52102
103+ ```
53104
54105ipaddr::
55106
107+ ```
108+ # ipaddr = 192.0.2.20
109+ ```
56110
57111gss_acceptor_host_name::
58112
@@ -62,65 +116,37 @@ that a client claims the right acceptor hostname when using ABFAB.
62116If set, the RADIUS server will confirm that all requests have this value for the
63117acceptor host name.
64118
119+ ```
120+ # gss_acceptor_host_name = "server.example.com"
65121
122+ ```
66123
67124gss_acceptor_realm_name:: Foreign realms will typically reject a request
68125if this is not properly set.
69126
127+ ```
128+ # gss_acceptor_realm_name = "example.com"
70129
130+ ```
71131
72132trust_router_coi:: Override the `default_community` in the realm module.
73133
134+ ```
135+ # trust_router_coi = "community1.example.net"
74136
137+ ```
75138
76139IMPORTANT: In production deployments it is important to set up certificate
77140verification so that even if clients spoof IP addresses, one client cannot
78141impersonate another.
79142
80143
144+ ```
145+ }
146+ }
147+ ```
81148
82149== Default Configuration
83150
84151```
85- listen {
86- ipaddr = *
87- port = 2083
88- type = auth
89- proto = tcp
90- tls {
91- chain {
92- certificate_file = ${certdir}/server.pem
93- private_key_file = ${certdir}/server.key
94- private_key_password = whatever
95- }
96- ca_file = ${cadir}/ca.pem
97- dh_file = ${certdir}/dh
98- fragment_size = 8192
99- ca_path = ${cadir}
100- cipher_list = "DEFAULT"
101- cache {
102- enable = no
103- lifetime = 24 # hours
104- max_entries = 255
105- }
106- require_client_cert = yes
107- verify {
108- }
109- psk_query = %psksql("select hex(key) from psk_keys where keyid = '%{TLS-PSK-Identity}'")
110- }
111- virtual_server = abfab-idp
112- clients = radsec-abfab
113- }
114- clients radsec-abfab {
115- client default {
116- ipaddr = 0.0.0.0/0
117- proto = tls
118- }
119- client service_1 {
120- # ipaddr = 192.0.2.20
121- # gss_acceptor_host_name = "server.example.com"
122- # gss_acceptor_realm_name = "example.com"
123- # trust_router_coi = "community1.example.net"
124- }
125- }
126152```
0 commit comments