/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to mandos.conf.xml

  • Committer: Teddy Hogeborn
  • Date: 2015-03-10 18:03:38 UTC
  • Revision ID: teddy@recompile.se-20150310180338-pcxw6r2qmw9k6br9
Add ":!RSA" to GnuTLS priority string, to disallow non-DHE kx.

If Mandos was somehow made to use a non-ephemeral Diffie-Hellman key
exchange algorithm in the TLS handshake, any saved network traffic
could then be decrypted later if the Mandos client key was obtained.
By default, Mandos uses ephemeral DH key exchanges which does not have
this problem, but a non-ephemeral key exchange algorithm was still
enabled by default.  The simplest solution is to simply turn that off,
which ensures that Mandos will always use ephemeral DH key exchanges.

There is a "PFS" priority string specifier, but we can't use it because:

1. Security-wise, it is a mix between "NORMAL" and "SECURE128" - it
   enables a lot more algorithms than "SECURE256".

2. It is only available since GnuTLS 3.2.4.

Thanks to Andreas Fischer <af@bantuX.org> for reporting this issue.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version='1.0' encoding='UTF-8'?>
 
1
<?xml version="1.0" encoding="UTF-8"?>
2
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3
3
        "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4
 
<!ENTITY VERSION "1.0">
5
4
<!ENTITY CONFNAME "mandos.conf">
6
5
<!ENTITY CONFPATH "<filename>/etc/mandos/mandos.conf</filename>">
 
6
<!ENTITY TIMESTAMP "2013-10-23">
 
7
<!ENTITY % common SYSTEM "common.ent">
 
8
%common;
7
9
]>
8
10
 
9
11
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
10
12
  <refentryinfo>
11
 
    <title>&CONFNAME;</title>
 
13
    <title>Mandos Manual</title>
12
14
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
13
 
    <productname>&CONFNAME;</productname>
14
 
    <productnumber>&VERSION;</productnumber>
 
15
    <productname>Mandos</productname>
 
16
    <productnumber>&version;</productnumber>
 
17
    <date>&TIMESTAMP;</date>
15
18
    <authorgroup>
16
19
      <author>
17
20
        <firstname>Björn</firstname>
18
21
        <surname>Påhlsson</surname>
19
22
        <address>
20
 
          <email>belorn@fukt.bsnet.se</email>
 
23
          <email>belorn@recompile.se</email>
21
24
        </address>
22
25
      </author>
23
26
      <author>
24
27
        <firstname>Teddy</firstname>
25
28
        <surname>Hogeborn</surname>
26
29
        <address>
27
 
          <email>teddy@fukt.bsnet.se</email>
 
30
          <email>teddy@recompile.se</email>
28
31
        </address>
29
32
      </author>
30
33
    </authorgroup>
31
34
    <copyright>
32
35
      <year>2008</year>
 
36
      <year>2009</year>
 
37
      <year>2011</year>
 
38
      <year>2012</year>
 
39
      <year>2013</year>
33
40
      <holder>Teddy Hogeborn</holder>
34
41
      <holder>Björn Påhlsson</holder>
35
42
    </copyright>
36
 
    <legalnotice>
37
 
      <para>
38
 
        This manual page is free software: you can redistribute it
39
 
        and/or modify it under the terms of the GNU General Public
40
 
        License as published by the Free Software Foundation,
41
 
        either version 3 of the License, or (at your option) any
42
 
        later version.
43
 
      </para>
44
 
 
45
 
      <para>
46
 
        This manual page is distributed in the hope that it will
47
 
        be useful, but WITHOUT ANY WARRANTY; without even the
48
 
        implied warranty of MERCHANTABILITY or FITNESS FOR A
49
 
        PARTICULAR PURPOSE.  See the GNU General Public License
50
 
        for more details.
51
 
      </para>
52
 
 
53
 
      <para>
54
 
        You should have received a copy of the GNU General Public
55
 
        License along with this program; If not, see
56
 
        <ulink url="http://www.gnu.org/licenses/"/>.
57
 
      </para>
58
 
    </legalnotice>
 
43
    <xi:include href="legalnotice.xml"/>
59
44
  </refentryinfo>
60
 
 
 
45
  
61
46
  <refmeta>
62
47
    <refentrytitle>&CONFNAME;</refentrytitle>
63
48
    <manvolnum>5</manvolnum>
69
54
      Configuration file for the Mandos server
70
55
    </refpurpose>
71
56
  </refnamediv>
72
 
 
 
57
  
73
58
  <refsynopsisdiv>
74
 
    <synopsis>
75
 
      &CONFPATH;
76
 
    </synopsis>
 
59
    <synopsis>&CONFPATH;</synopsis>
77
60
  </refsynopsisdiv>
78
 
 
 
61
  
79
62
  <refsect1 id="description">
80
63
    <title>DESCRIPTION</title>
81
64
    <para>
93
76
      <quote>#</quote> or <quote>;</quote> are ignored and may be used
94
77
      to provide comments.
95
78
    </para>
96
 
 
 
79
    
97
80
  </refsect1>
98
81
  <refsect1>
99
82
    <title>OPTIONS</title>
100
83
    
101
84
    <variablelist>
102
85
      <varlistentry>
103
 
        <term><varname>interface</varname></term>
 
86
        <term><option>interface<literal> = </literal><replaceable
 
87
        >NAME</replaceable></option></term>
104
88
        <listitem>
105
 
          <synopsis><literal>interface = </literal><replaceable
106
 
          >IF</replaceable>
107
 
          </synopsis>
108
89
          <xi:include href="mandos-options.xml" xpointer="interface"/>
109
90
        </listitem>
110
91
      </varlistentry>
111
 
 
 
92
      
112
93
      <varlistentry>
113
 
        <term><varname>address</varname></term>
 
94
        <term><option>address<literal> = </literal><replaceable
 
95
          >ADDRESS</replaceable></option></term>
114
96
        <listitem>
115
 
          <synopsis><literal>address = </literal><replaceable
116
 
          >ADDRESS</replaceable>
117
 
          </synopsis>
118
97
          <xi:include href="mandos-options.xml" xpointer="address"/>
119
98
        </listitem>
120
99
      </varlistentry>
121
 
 
 
100
      
122
101
      <varlistentry>
123
 
        <term><varname>port</varname></term>
 
102
        <term><option>port<literal> = </literal><replaceable
 
103
        >NUMBER</replaceable></option></term>
124
104
        <listitem>
125
 
          <synopsis><literal>port = </literal><replaceable
126
 
          >PORT</replaceable>
127
 
          </synopsis>
128
105
          <xi:include href="mandos-options.xml" xpointer="port"/>
129
106
        </listitem>
130
107
      </varlistentry>
131
 
 
 
108
      
132
109
      <varlistentry>
133
 
        <term><varname>debug</varname></term>
134
 
        <listitem>
135
 
          <synopsis><literal>debug = </literal>{ <literal
 
110
        <term><option>debug<literal> = </literal>{ <literal
136
111
          >1</literal> | <literal>yes</literal> | <literal
137
112
          >true</literal> | <literal>on</literal> | <literal
138
113
          >0</literal> | <literal>no</literal> | <literal
139
 
          >false</literal> | <literal>off</literal> }
140
 
          </synopsis>
 
114
          >false</literal> | <literal>off</literal> }</option></term>
 
115
        <listitem>
141
116
          <xi:include href="mandos-options.xml" xpointer="debug"/>
142
117
        </listitem>
143
118
      </varlistentry>
144
 
 
 
119
      
145
120
      <varlistentry>
146
 
        <term><varname>priority</varname></term>
 
121
        <term><option>priority<literal> = </literal><replaceable
 
122
        >STRING</replaceable></option></term>
147
123
        <listitem>
148
 
          <synopsis><literal>priority = </literal><replaceable
149
 
          >PRIORITY</replaceable>
150
 
          </synopsis>
151
 
          <xi:include href="mandos-options.xml" xpointer="priority"/>
 
124
          <xi:include href="mandos-options.xml"
 
125
                      xpointer="priority_compat"/>
152
126
        </listitem>
153
127
      </varlistentry>
154
 
 
 
128
      
155
129
      <varlistentry>
156
 
        <term><varname>servicename</varname></term>
 
130
        <term><option>servicename<literal> = </literal
 
131
        ><replaceable>NAME</replaceable></option></term>
157
132
        <listitem>
158
 
          <synopsis><literal>servicename = </literal><replaceable
159
 
          >NAME</replaceable>
160
 
          </synopsis>
161
133
          <xi:include href="mandos-options.xml"
162
134
                      xpointer="servicename"/>
163
135
        </listitem>
164
136
      </varlistentry>
165
137
      
 
138
      <varlistentry>
 
139
        <term><option>use_dbus<literal> = </literal>{ <literal
 
140
          >1</literal> | <literal>yes</literal> | <literal
 
141
          >true</literal> | <literal>on</literal> | <literal
 
142
          >0</literal> | <literal>no</literal> | <literal
 
143
          >false</literal> | <literal>off</literal> }</option></term>
 
144
        <listitem>
 
145
          <xi:include href="mandos-options.xml" xpointer="dbus"/>
 
146
        </listitem>
 
147
      </varlistentry>
 
148
      
 
149
      <varlistentry>
 
150
        <term><option>use_ipv6<literal> = </literal>{ <literal
 
151
          >1</literal> | <literal>yes</literal> | <literal
 
152
          >true</literal> | <literal>on</literal> | <literal
 
153
          >0</literal> | <literal>no</literal> | <literal
 
154
          >false</literal> | <literal>off</literal> }</option></term>
 
155
        <listitem>
 
156
          <xi:include href="mandos-options.xml" xpointer="ipv6"/>
 
157
        </listitem>
 
158
      </varlistentry>
 
159
      
 
160
      <varlistentry>
 
161
        <term><option>restore<literal> = </literal>{ <literal
 
162
          >1</literal> | <literal>yes</literal> | <literal
 
163
          >true</literal> | <literal>on</literal> | <literal
 
164
          >0</literal> | <literal>no</literal> | <literal
 
165
          >false</literal> | <literal>off</literal> }</option></term>
 
166
        <listitem>
 
167
          <xi:include href="mandos-options.xml" xpointer="restore"/>
 
168
        </listitem>
 
169
      </varlistentry>
 
170
      
 
171
      <varlistentry>
 
172
        <term><option>statedir<literal> = </literal><replaceable
 
173
        >DIRECTORY</replaceable></option></term>
 
174
        <listitem>
 
175
          <xi:include href="mandos-options.xml" xpointer="statedir"/>
 
176
        </listitem>
 
177
      </varlistentry>
 
178
      
 
179
      <varlistentry>
 
180
        <term><option>socket<literal> = </literal><replaceable
 
181
        >NUMBER</replaceable></option></term>
 
182
        <listitem>
 
183
          <xi:include href="mandos-options.xml" xpointer="socket"/>
 
184
        </listitem>
 
185
      </varlistentry>
 
186
      
166
187
    </variablelist>
167
188
  </refsect1>
168
189
  
178
199
    <para>
179
200
      The <literal>[DEFAULT]</literal> is necessary because the Python
180
201
      built-in module <systemitem class="library">ConfigParser</systemitem>
181
 
      requres it.
 
202
      requires it.
182
203
    </para>
183
204
  </refsect1>
184
205
  
200
221
[DEFAULT]
201
222
# A configuration example
202
223
interface = eth0
203
 
address = 2001:db8:f983:bd0b:30de:ae4a:71f2:f672
 
224
address = fe80::aede:48ff:fe71:f6f2
204
225
port = 1025
205
226
debug = true
206
227
priority = SECURE256:!CTYPE-X.509:+CTYPE-OPENPGP
207
228
servicename = Daena
 
229
use_dbus = False
 
230
use_ipv6 = True
 
231
restore = True
 
232
statedir = /var/lib/mandos
208
233
      </programlisting>
209
234
    </informalexample>
210
235
  </refsect1>
212
237
  <refsect1 id="see_also">
213
238
    <title>SEE ALSO</title>
214
239
    <para>
215
 
      <citerefentry>
216
 
        <refentrytitle>mandos</refentrytitle>
217
 
        <manvolnum>8</manvolnum></citerefentry>, <citerefentry>
218
 
        <refentrytitle>mandos-clients.conf</refentrytitle>
219
 
        <manvolnum>5</manvolnum></citerefentry>
 
240
      <citerefentry><refentrytitle>intro</refentrytitle>
 
241
      <manvolnum>8mandos</manvolnum></citerefentry>,
 
242
      <citerefentry><refentrytitle>gnutls_priority_init</refentrytitle
 
243
      ><manvolnum>3</manvolnum></citerefentry>,
 
244
      <citerefentry><refentrytitle>mandos</refentrytitle>
 
245
      <manvolnum>8</manvolnum></citerefentry>,
 
246
      <citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
 
247
      <manvolnum>5</manvolnum></citerefentry>
220
248
    </para>
 
249
    
 
250
    <variablelist>
 
251
      <varlistentry>
 
252
        <term>
 
253
          RFC 4291: <citetitle>IP Version 6 Addressing
 
254
          Architecture</citetitle>
 
255
        </term>
 
256
        <listitem>
 
257
          <variablelist>
 
258
            <varlistentry>
 
259
              <term>Section 2.2: <citetitle>Text Representation of
 
260
              Addresses</citetitle></term>
 
261
              <listitem><para/></listitem>
 
262
            </varlistentry>
 
263
            <varlistentry>
 
264
              <term>Section 2.5.5.2: <citetitle>IPv4-Mapped IPv6
 
265
              Address</citetitle></term>
 
266
              <listitem><para/></listitem>
 
267
            </varlistentry>
 
268
            <varlistentry>
 
269
            <term>Section 2.5.6, <citetitle>Link-Local IPv6 Unicast
 
270
            Addresses</citetitle></term>
 
271
            <listitem>
 
272
              <para>
 
273
                The clients use IPv6 link-local addresses, which are
 
274
                immediately usable since a link-local addresses is
 
275
                automatically assigned to a network interface when it
 
276
                is brought up.
 
277
              </para>
 
278
            </listitem>
 
279
            </varlistentry>
 
280
          </variablelist>
 
281
        </listitem>
 
282
      </varlistentry>
 
283
      <varlistentry>
 
284
        <term>
 
285
          <ulink url="http://www.zeroconf.org/">Zeroconf</ulink>
 
286
        </term>
 
287
        <listitem>
 
288
          <para>
 
289
            Zeroconf is the network protocol standard used by clients
 
290
            for finding the Mandos server on the local network.
 
291
          </para>
 
292
        </listitem>
 
293
      </varlistentry>
 
294
    </variablelist>
221
295
  </refsect1>
222
296
</refentry>
 
297
<!-- Local Variables: -->
 
298
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
 
299
<!-- time-stamp-end: "[\"']>" -->
 
300
<!-- time-stamp-format: "%:y-%02m-%02d" -->
 
301
<!-- End: -->