/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-clients.conf.xml

  • Committer: Teddy Hogeborn
  • Date: 2008-12-10 01:26:02 UTC
  • mfrom: (237.1.2 mandos)
  • Revision ID: teddy@fukt.bsnet.se-20081210012602-vhz3h75xkj24t340
First version of a somewhat complete D-Bus server interface.  Also
change user/group name to "_mandos".

* debian/mandos.postinst: Rename old "mandos" user and group to
                          "_mandos"; create "_mandos" user and group
                          if none exist.
* debian/mandos-client.postinst: - '' -

* initramfs-tools-hook: Try "_mandos" before "mandos" as user and
                        group name.

* mandos (_datetime_to_dbus_struct): New; was previously local.
  (Client.started): Renamed to "last_started".  All users changed.
  (Client.started): New; boolean.
  (Client.dbus_object_path): New.
  (Client.check_command): Renamed to "checker_command".  All users
                          changed.
  (Client.__init__): Set and use "self.dbus_object_path".  Set
                     "self.started".
  (Client.start): Update "self.started".  Emit "self.PropertyChanged"
                  signals for both "started" and "last_started".
  (Client.stop): Update "self.started".  Emit "self.PropertyChanged"
                 signal for "started".
  (Client.checker_callback): Take additional "command" argument.  All
                             callers changed. Emit
                             "self.PropertyChanged" signal.
  (Client.bump_timeout): Emit "self.PropertyChanged" signal for
                         "last_checked_ok".
  (Client.start_checker): Emit "self.PropertyChanged" signal for
                          "checker_running".
  (Client.stop_checker): Emit "self.PropertyChanged" signal for
                         "checker_running".
  (Client.still_valid): Bug fix: use "getattr(self, started, False)"
                        instead of "self.started" in case this client
                        object is so new that the "started" attribute
                        has not been created yet.
  (Client.IntervalChanged, Client.CheckerIsRunning, Client.GetChecker,
  Client.GetCreated, Client.GetFingerprint, Client.GetHost,
  Client.GetInterval, Client.GetName, Client.GetStarted,
  Client.GetTimeout, Client.StateChanged, Client.TimeoutChanged):
  Removed; all callers changed.
  (Client.CheckerCompleted): Add "condition" and "command" arguments.
                             All callers changed.
  (Client.GetAllProperties, Client.PropertyChanged): New.
  (Client.StillValid): Renamed to "IsStillValid".
  (Client.StartChecker): Changed to its own function to avoid the
                         return value from "Client.start_checker()".
  (Client.Stop): Changed to its own function to avoid the return value
                 from "Client.stop()".
  (main): Try "_mandos" before "mandos" as user and group name.
          Removed inner function "remove_from_clients".  New inner
          class "MandosServer".

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
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-31">
 
6
<!ENTITY TIMESTAMP "2008-10-07">
 
7
<!ENTITY % common SYSTEM "common.ent">
 
8
%common;
8
9
]>
9
10
 
10
11
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
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>
37
38
    </copyright>
38
39
    <xi:include href="legalnotice.xml"/>
39
40
  </refentryinfo>
40
 
 
 
41
  
41
42
  <refmeta>
42
43
    <refentrytitle>&CONFNAME;</refentrytitle>
43
44
    <manvolnum>5</manvolnum>
49
50
      Configuration file for the Mandos server
50
51
    </refpurpose>
51
52
  </refnamediv>
52
 
 
 
53
  
53
54
  <refsynopsisdiv>
54
55
    <synopsis>&CONFPATH;</synopsis>
55
56
  </refsynopsisdiv>
56
 
 
 
57
  
57
58
  <refsect1 id="description">
58
59
    <title>DESCRIPTION</title>
59
60
    <para>
93
94
      start time expansion, see <xref linkend="expansion"/>.
94
95
    </para>
95
96
    <para>
96
 
      Uknown options are ignored.  The used options are as follows:
 
97
      Unknown options are ignored.  The used options are as follows:
97
98
    </para>
98
 
 
 
99
    
99
100
    <variablelist>
100
 
 
 
101
      
101
102
      <varlistentry>
102
103
        <term><option>timeout<literal> = </literal><replaceable
103
104
        >TIME</replaceable></option></term>
104
105
        <listitem>
105
106
          <para>
 
107
            This option is <emphasis>optional</emphasis>.
 
108
          </para>
 
109
          <para>
106
110
            The timeout is how long the server will wait for a
107
111
            successful checker run until a client is considered
108
112
            invalid - that is, ineligible to get the data this server
123
127
          </para>
124
128
        </listitem>
125
129
      </varlistentry>
126
 
 
 
130
      
127
131
      <varlistentry>
128
132
        <term><option>interval<literal> = </literal><replaceable
129
133
        >TIME</replaceable></option></term>
130
134
        <listitem>
131
135
          <para>
 
136
            This option is <emphasis>optional</emphasis>.
 
137
          </para>
 
138
          <para>
132
139
            How often to run the checker to confirm that a client is
133
140
            still up.  <emphasis>Note:</emphasis> a new checker will
134
141
            not be started if an old one is still running.  The server
143
150
          </para>
144
151
        </listitem>
145
152
      </varlistentry>
146
 
 
 
153
      
147
154
      <varlistentry>
148
155
        <term><option>checker<literal> = </literal><replaceable
149
156
        >COMMAND</replaceable></option></term>
150
157
        <listitem>
151
158
          <para>
 
159
            This option is <emphasis>optional</emphasis>.
 
160
          </para>
 
161
          <para>
152
162
            This option allows you to override the default shell
153
163
            command that the server will use to check if the client is
154
164
            still up.  Any output of the command will be ignored, only
174
184
        ><replaceable>HEXSTRING</replaceable></option></term>
175
185
        <listitem>
176
186
          <para>
 
187
            This option is <emphasis>required</emphasis>.
 
188
          </para>
 
189
          <para>
177
190
            This option sets the OpenPGP fingerprint that identifies
178
191
            the public key that clients authenticate themselves with
179
192
            through TLS.  The string needs to be in hexidecimal form,
187
200
        >BASE64_ENCODED_DATA</replaceable></option></term>
188
201
        <listitem>
189
202
          <para>
 
203
            If this option is not specified, the <option
 
204
            >secfile</option> option is <emphasis>required</emphasis>
 
205
            to be present.
 
206
          </para>
 
207
          <para>
190
208
            If present, this option must be set to a string of
191
209
            base64-encoded binary data.  It will be decoded and sent
192
210
            to the client matching the above
204
222
            lines is that a line beginning with white space adds to
205
223
            the value of the previous line, RFC 822-style.
206
224
          </para>
207
 
          <para>
208
 
            If this option is not specified, the <option
209
 
            >secfile</option> option is used instead, but one of them
210
 
            <emphasis>must</emphasis> be present.
211
 
          </para>
212
225
        </listitem>
213
226
      </varlistentry>
214
 
 
 
227
      
215
228
      <varlistentry>
216
229
        <term><option>secfile<literal> = </literal><replaceable
217
230
        >FILENAME</replaceable></option></term>
218
231
        <listitem>
219
232
          <para>
 
233
            This option is only used if <option>secret</option> is not
 
234
            specified, in which case this option is
 
235
            <emphasis>required</emphasis>.
 
236
          </para>
 
237
          <para>
220
238
            Similar to the <option>secret</option>, except the secret
221
239
            data is in an external file.  The contents of the file
222
240
            should <emphasis>not</emphasis> be base64-encoded, but
223
241
            will be sent to clients verbatim.
224
242
          </para>
225
243
          <para>
226
 
            This option is only used, and <emphasis>must</emphasis> be
227
 
            present, if <option>secret</option> is not specified.
 
244
            File names of the form <filename>~user/foo/bar</filename>
 
245
            and <filename>$<envar>ENVVAR</envar>/foo/bar</filename>
 
246
            are supported.
228
247
          </para>
229
248
        </listitem>
230
249
      </varlistentry>
231
 
 
 
250
      
232
251
      <varlistentry>
233
252
        <term><option><literal>host = </literal><replaceable
234
253
        >STRING</replaceable></option></term>
235
254
        <listitem>
236
255
          <para>
 
256
            This option is <emphasis>optional</emphasis>, but highly
 
257
            <emphasis>recommended</emphasis> unless the
 
258
            <option>checker</option> option is modified to a
 
259
            non-standard value without <quote>%(host)s</quote> in it.
 
260
          </para>
 
261
          <para>
237
262
            Host name for this client.  This is not used by the server
238
263
            directly, but can be, and is by default, used by the
239
264
            checker.  See the <option>checker</option> option.
294
319
        mode is needed to expose an error of this kind.
295
320
      </para>
296
321
    </refsect2>
297
 
 
 
322
    
298
323
  </refsect1>
299
324
  
300
325
  <refsect1 id="files">
354
379
fingerprint = 3e393aeaefb84c7e89e2f547b3a107558fca3a27
355
380
secfile = /etc/mandos/bar-secret
356
381
timeout = 15m
357
 
 
358
382
      </programlisting>
359
383
    </informalexample>
360
384
  </refsect1>