/mandos/release

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

« back to all changes in this revision

Viewing changes to mandos-clients.conf.xml

Minor code cleanup; one minor bug fix.

* initramfs-tools-hook: Bug fix: Use the primary group of the first
                        suitable user found, do not look for a
                        group separately.
* mandos: Unconditionally import "struct" and "fcntl".  Use unicode
          strings everywhere possible.
  (Client._datetime_to_milliseconds): New static method.
  (Client.timeout_milliseconds, Client.interval_milliseconds): Use
                                                               above
                                                               method.
  (ClientDBus.CheckedOK,
  ClientDBus.Enable, ClientDBus.StopChecker): Define normally.
  (if_nametoindex): Document non-acceptance of unicode strings.  All
                    callers adjusted.  Do not import "struct" or
                    "fcntl".  Log warning message if if_nametoindex
                    cannot be found using ctypes modules.
  (main): Bug fix: Do not look for user named "nogroup".

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-clients.conf">
6
5
<!ENTITY CONFPATH "<filename>/etc/mandos/clients.conf</filename>">
7
 
<!ENTITY TIMESTAMP "2008-08-29">
 
6
<!ENTITY TIMESTAMP "2009-02-15">
 
7
<!ENTITY % common SYSTEM "common.ent">
 
8
%common;
8
9
]>
9
10
 
10
 
<refentry>
 
11
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
11
12
  <refentryinfo>
12
13
    <title>Mandos Manual</title>
13
14
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
14
15
    <productname>Mandos</productname>
15
 
    <productnumber>&VERSION;</productnumber>
 
16
    <productnumber>&version;</productnumber>
16
17
    <date>&TIMESTAMP;</date>
17
18
    <authorgroup>
18
19
      <author>
32
33
    </authorgroup>
33
34
    <copyright>
34
35
      <year>2008</year>
 
36
      <year>2009</year>
35
37
      <holder>Teddy Hogeborn</holder>
36
38
      <holder>Björn Påhlsson</holder>
37
39
    </copyright>
38
 
    <legalnotice>
39
 
      <para>
40
 
        This manual page is free software: you can redistribute it
41
 
        and/or modify it under the terms of the GNU General Public
42
 
        License as published by the Free Software Foundation,
43
 
        either version 3 of the License, or (at your option) any
44
 
        later version.
45
 
      </para>
46
 
 
47
 
      <para>
48
 
        This manual page is distributed in the hope that it will
49
 
        be useful, but WITHOUT ANY WARRANTY; without even the
50
 
        implied warranty of MERCHANTABILITY or FITNESS FOR A
51
 
        PARTICULAR PURPOSE.  See the GNU General Public License
52
 
        for more details.
53
 
      </para>
54
 
 
55
 
      <para>
56
 
        You should have received a copy of the GNU General Public
57
 
        License along with this program; If not, see
58
 
        <ulink url="http://www.gnu.org/licenses/"/>.
59
 
      </para>
60
 
    </legalnotice>
 
40
    <xi:include href="legalnotice.xml"/>
61
41
  </refentryinfo>
62
 
 
 
42
  
63
43
  <refmeta>
64
44
    <refentrytitle>&CONFNAME;</refentrytitle>
65
45
    <manvolnum>5</manvolnum>
71
51
      Configuration file for the Mandos server
72
52
    </refpurpose>
73
53
  </refnamediv>
74
 
 
 
54
  
75
55
  <refsynopsisdiv>
76
 
    <synopsis>
77
 
      &CONFPATH;
78
 
    </synopsis>
 
56
    <synopsis>&CONFPATH;</synopsis>
79
57
  </refsynopsisdiv>
80
 
 
 
58
  
81
59
  <refsect1 id="description">
82
60
    <title>DESCRIPTION</title>
83
61
    <para>
117
95
      start time expansion, see <xref linkend="expansion"/>.
118
96
    </para>
119
97
    <para>
120
 
      Uknown options are ignored.  The used options are as follows:
 
98
      Unknown options are ignored.  The used options are as follows:
121
99
    </para>
122
 
 
 
100
    
123
101
    <variablelist>
124
 
 
 
102
      
125
103
      <varlistentry>
126
 
        <term><literal><varname>timeout</varname></literal></term>
 
104
        <term><option>timeout<literal> = </literal><replaceable
 
105
        >TIME</replaceable></option></term>
127
106
        <listitem>
128
 
          <synopsis><literal>timeout = </literal><replaceable
129
 
          >TIME</replaceable>
130
 
          </synopsis>
 
107
          <para>
 
108
            This option is <emphasis>optional</emphasis>.
 
109
          </para>
131
110
          <para>
132
111
            The timeout is how long the server will wait for a
133
112
            successful checker run until a client is considered
149
128
          </para>
150
129
        </listitem>
151
130
      </varlistentry>
152
 
 
 
131
      
153
132
      <varlistentry>
154
 
        <term><literal><varname>interval</varname></literal></term>
 
133
        <term><option>interval<literal> = </literal><replaceable
 
134
        >TIME</replaceable></option></term>
155
135
        <listitem>
156
 
          <synopsis><literal>interval = </literal><replaceable
157
 
          >TIME</replaceable>
158
 
          </synopsis>
 
136
          <para>
 
137
            This option is <emphasis>optional</emphasis>.
 
138
          </para>
159
139
          <para>
160
140
            How often to run the checker to confirm that a client is
161
141
            still up.  <emphasis>Note:</emphasis> a new checker will
170
150
            as for <varname>timeout</varname> above.
171
151
          </para>
172
152
        </listitem>
173
 
      </varlistentry>      
174
 
 
 
153
      </varlistentry>
 
154
      
175
155
      <varlistentry>
176
 
        <term><literal>checker</literal></term>
 
156
        <term><option>checker<literal> = </literal><replaceable
 
157
        >COMMAND</replaceable></option></term>
177
158
        <listitem>
178
 
          <synopsis><literal>checker = </literal><replaceable
179
 
          >COMMAND</replaceable>
180
 
          </synopsis>
 
159
          <para>
 
160
            This option is <emphasis>optional</emphasis>.
 
161
          </para>
181
162
          <para>
182
163
            This option allows you to override the default shell
183
164
            command that the server will use to check if the client is
189
170
            <varname>PATH</varname> will be searched.  The default
190
171
            value for the checker command is <quote><literal
191
172
            ><command>fping</command> <option>-q</option> <option
192
 
            >--</option> %(host)s</literal></quote>.
 
173
            >--</option> %%(host)s</literal></quote>.
193
174
          </para>
194
175
          <para>
195
176
            In addition to normal start time expansion, this option
200
181
      </varlistentry>
201
182
      
202
183
      <varlistentry>
203
 
        <term><literal>fingerprint</literal></term>
 
184
        <term><option>fingerprint<literal> = </literal
 
185
        ><replaceable>HEXSTRING</replaceable></option></term>
204
186
        <listitem>
205
 
          <synopsis><literal>fingerprint = </literal><replaceable
206
 
          >HEXSTRING</replaceable>
207
 
          </synopsis>
 
187
          <para>
 
188
            This option is <emphasis>required</emphasis>.
 
189
          </para>
208
190
          <para>
209
191
            This option sets the OpenPGP fingerprint that identifies
210
192
            the public key that clients authenticate themselves with
215
197
      </varlistentry>
216
198
      
217
199
      <varlistentry>
218
 
        <term><literal>secret</literal></term>
 
200
        <term><option>secret<literal> = </literal><replaceable
 
201
        >BASE64_ENCODED_DATA</replaceable></option></term>
219
202
        <listitem>
220
 
          <synopsis><literal>secret = </literal><replaceable
221
 
          >BASE64_ENCODED_DATA</replaceable>
222
 
          </synopsis>
 
203
          <para>
 
204
            If this option is not specified, the <option
 
205
            >secfile</option> option is <emphasis>required</emphasis>
 
206
            to be present.
 
207
          </para>
223
208
          <para>
224
209
            If present, this option must be set to a string of
225
210
            base64-encoded binary data.  It will be decoded and sent
238
223
            lines is that a line beginning with white space adds to
239
224
            the value of the previous line, RFC 822-style.
240
225
          </para>
241
 
          <para>
242
 
            If this option is not specified, the <option
243
 
            >secfile</option> option is used instead, but one of them
244
 
            <emphasis>must</emphasis> be present.
245
 
          </para>
246
 
        </listitem>
247
 
      </varlistentry>
248
 
 
249
 
      <varlistentry>
250
 
        <term><literal>secfile</literal></term>
251
 
        <listitem>
252
 
          <synopsis><literal>secfile = </literal><replaceable
253
 
          >FILENAME</replaceable>
254
 
          </synopsis>
255
 
          <para>
256
 
            The same as <option>secret</option>, but the secret data
257
 
            is in an external file.  The contents of the file should
258
 
            <emphasis>not</emphasis> be base64-encoded, but will be
259
 
            sent to clients verbatim.
260
 
          </para>
261
 
          <para>
262
 
            This option is only used, and <emphasis>must</emphasis> be
263
 
            present, if <option>secret</option> is not specified.
264
 
          </para>
265
 
        </listitem>
266
 
      </varlistentry>
267
 
 
268
 
      <varlistentry>
269
 
        <term><literal>host</literal></term>
270
 
        <listitem>
271
 
          <synopsis><literal>host = </literal><replaceable
272
 
          >STRING</replaceable>
273
 
          </synopsis>
 
226
        </listitem>
 
227
      </varlistentry>
 
228
      
 
229
      <varlistentry>
 
230
        <term><option>secfile<literal> = </literal><replaceable
 
231
        >FILENAME</replaceable></option></term>
 
232
        <listitem>
 
233
          <para>
 
234
            This option is only used if <option>secret</option> is not
 
235
            specified, in which case this option is
 
236
            <emphasis>required</emphasis>.
 
237
          </para>
 
238
          <para>
 
239
            Similar to the <option>secret</option>, except the secret
 
240
            data is in an external file.  The contents of the file
 
241
            should <emphasis>not</emphasis> be base64-encoded, but
 
242
            will be sent to clients verbatim.
 
243
          </para>
 
244
          <para>
 
245
            File names of the form <filename>~user/foo/bar</filename>
 
246
            and <filename>$<envar>ENVVAR</envar>/foo/bar</filename>
 
247
            are supported.
 
248
          </para>
 
249
        </listitem>
 
250
      </varlistentry>
 
251
      
 
252
      <varlistentry>
 
253
        <term><option><literal>host = </literal><replaceable
 
254
        >STRING</replaceable></option></term>
 
255
        <listitem>
 
256
          <para>
 
257
            This option is <emphasis>optional</emphasis>, but highly
 
258
            <emphasis>recommended</emphasis> unless the
 
259
            <option>checker</option> option is modified to a
 
260
            non-standard value without <quote>%%(host)s</quote> in it.
 
261
          </para>
274
262
          <para>
275
263
            Host name for this client.  This is not used by the server
276
264
            directly, but can be, and is by default, used by the
280
268
      </varlistentry>
281
269
      
282
270
    </variablelist>
283
 
  </refsect1>  
 
271
  </refsect1>
284
272
  
285
273
  <refsect1 id="expansion">
286
274
    <title>EXPANSION</title>
329
317
        percent characters in a row (<quote>%%%%</quote>) must be
330
318
        entered.  Also, a bad format here will lead to an immediate
331
319
        but <emphasis>silent</emphasis> run-time fatal exit; debug
332
 
        mode is needed to track down an error of this kind.
 
320
        mode is needed to expose an error of this kind.
333
321
      </para>
334
322
    </refsect2>
335
 
 
336
 
  </refsect1>  
 
323
    
 
324
  </refsect1>
337
325
  
338
326
  <refsect1 id="files">
339
327
    <title>FILES</title>
363
351
[DEFAULT]
364
352
timeout = 1h
365
353
interval = 5m
366
 
checker = fping -q -- %(host)s
 
354
checker = fping -q -- %%(host)s
367
355
 
368
356
# Client "foo"
369
357
[foo]
392
380
fingerprint = 3e393aeaefb84c7e89e2f547b3a107558fca3a27
393
381
secfile = /etc/mandos/bar-secret
394
382
timeout = 15m
395
 
 
396
383
      </programlisting>
397
384
    </informalexample>
398
 
  </refsect1>  
 
385
  </refsect1>
399
386
  
400
387
  <refsect1 id="see_also">
401
388
    <title>SEE ALSO</title>