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

merge

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">
4
5
<!ENTITY COMMANDNAME "mandos">
5
 
<!ENTITY TIMESTAMP "2008-10-03">
6
 
<!ENTITY % common SYSTEM "common.ent">
7
 
%common;
 
6
<!ENTITY TIMESTAMP "2008-08-30">
8
7
]>
9
8
 
10
9
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
11
 
   <refentryinfo>
 
10
  <refentryinfo>
12
11
    <title>Mandos Manual</title>
13
12
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
14
13
    <productname>Mandos</productname>
15
 
    <productnumber>&version;</productnumber>
 
14
    <productnumber>&VERSION;</productnumber>
16
15
    <date>&TIMESTAMP;</date>
17
16
    <authorgroup>
18
17
      <author>
35
34
      <holder>Teddy Hogeborn</holder>
36
35
      <holder>Björn Påhlsson</holder>
37
36
    </copyright>
38
 
    <xi:include href="legalnotice.xml"/>
 
37
    <legalnotice>
 
38
      <para>
 
39
        This manual page is free software: you can redistribute it
 
40
        and/or modify it under the terms of the GNU General Public
 
41
        License as published by the Free Software Foundation,
 
42
        either version 3 of the License, or (at your option) any
 
43
        later version.
 
44
      </para>
 
45
 
 
46
      <para>
 
47
        This manual page is distributed in the hope that it will
 
48
        be useful, but WITHOUT ANY WARRANTY; without even the
 
49
        implied warranty of MERCHANTABILITY or FITNESS FOR A
 
50
        PARTICULAR PURPOSE.  See the GNU General Public License
 
51
        for more details.
 
52
      </para>
 
53
 
 
54
      <para>
 
55
        You should have received a copy of the GNU General Public
 
56
        License along with this program; If not, see
 
57
        <ulink url="http://www.gnu.org/licenses/"/>.
 
58
      </para>
 
59
    </legalnotice>
39
60
  </refentryinfo>
40
 
  
 
61
 
41
62
  <refmeta>
42
63
    <refentrytitle>&COMMANDNAME;</refentrytitle>
43
64
    <manvolnum>8</manvolnum>
49
70
      Gives encrypted passwords to authenticated Mandos clients
50
71
    </refpurpose>
51
72
  </refnamediv>
52
 
  
 
73
 
53
74
  <refsynopsisdiv>
54
75
    <cmdsynopsis>
55
76
      <command>&COMMANDNAME;</command>
88
109
    <cmdsynopsis>
89
110
      <command>&COMMANDNAME;</command>
90
111
      <group choice="req">
 
112
        <arg choice="plain"><option>-h</option></arg>
91
113
        <arg choice="plain"><option>--help</option></arg>
92
 
        <arg choice="plain"><option>-h</option></arg>
93
114
      </group>
94
115
    </cmdsynopsis>
95
116
    <cmdsynopsis>
101
122
      <arg choice="plain"><option>--check</option></arg>
102
123
    </cmdsynopsis>
103
124
  </refsynopsisdiv>
104
 
  
 
125
 
105
126
  <refsect1 id="description">
106
127
    <title>DESCRIPTION</title>
107
128
    <para>
116
137
      Any authenticated client is then given the stored pre-encrypted
117
138
      password for that specific client.
118
139
    </para>
 
140
 
119
141
  </refsect1>
120
142
  
121
143
  <refsect1 id="purpose">
122
144
    <title>PURPOSE</title>
 
145
 
123
146
    <para>
124
147
      The purpose of this is to enable <emphasis>remote and unattended
125
148
      rebooting</emphasis> of client host computer with an
126
149
      <emphasis>encrypted root file system</emphasis>.  See <xref
127
150
      linkend="overview"/> for details.
128
151
    </para>
 
152
 
129
153
  </refsect1>
130
154
  
131
155
  <refsect1 id="options">
132
156
    <title>OPTIONS</title>
 
157
 
133
158
    <variablelist>
134
159
      <varlistentry>
 
160
        <term><option>-h</option></term>
135
161
        <term><option>--help</option></term>
136
 
        <term><option>-h</option></term>
137
162
        <listitem>
138
163
          <para>
139
164
            Show a help message and exit
140
165
          </para>
141
166
        </listitem>
142
167
      </varlistentry>
143
 
      
 
168
 
144
169
      <varlistentry>
 
170
        <term><option>-i</option>
 
171
        <replaceable>NAME</replaceable></term>
145
172
        <term><option>--interface</option>
146
173
        <replaceable>NAME</replaceable></term>
147
 
        <term><option>-i</option>
148
 
        <replaceable>NAME</replaceable></term>
149
174
        <listitem>
150
175
          <xi:include href="mandos-options.xml" xpointer="interface"/>
151
176
        </listitem>
152
177
      </varlistentry>
153
 
      
 
178
 
154
179
      <varlistentry>
155
 
        <term><option>--address
156
 
        <replaceable>ADDRESS</replaceable></option></term>
157
 
        <term><option>-a
158
 
        <replaceable>ADDRESS</replaceable></option></term>
 
180
        <term><literal>-a</literal>, <literal>--address <replaceable>
 
181
        ADDRESS</replaceable></literal></term>
159
182
        <listitem>
160
183
          <xi:include href="mandos-options.xml" xpointer="address"/>
161
184
        </listitem>
162
185
      </varlistentry>
163
 
      
 
186
 
164
187
      <varlistentry>
165
 
        <term><option>--port
166
 
        <replaceable>PORT</replaceable></option></term>
167
 
        <term><option>-p
168
 
        <replaceable>PORT</replaceable></option></term>
 
188
        <term><literal>-p</literal>, <literal>--port <replaceable>
 
189
        PORT</replaceable></literal></term>
169
190
        <listitem>
170
191
          <xi:include href="mandos-options.xml" xpointer="port"/>
171
192
        </listitem>
172
193
      </varlistentry>
173
 
      
 
194
 
174
195
      <varlistentry>
175
 
        <term><option>--check</option></term>
 
196
        <term><literal>--check</literal></term>
176
197
        <listitem>
177
198
          <para>
178
199
            Run the server’s self-tests.  This includes any unit
180
201
          </para>
181
202
        </listitem>
182
203
      </varlistentry>
183
 
      
 
204
 
184
205
      <varlistentry>
185
 
        <term><option>--debug</option></term>
 
206
        <term><literal>--debug</literal></term>
186
207
        <listitem>
187
208
          <xi:include href="mandos-options.xml" xpointer="debug"/>
188
209
        </listitem>
189
210
      </varlistentry>
190
 
      
 
211
 
191
212
      <varlistentry>
192
 
        <term><option>--priority <replaceable>
193
 
        PRIORITY</replaceable></option></term>
 
213
        <term><literal>--priority <replaceable>
 
214
        PRIORITY</replaceable></literal></term>
194
215
        <listitem>
195
216
          <xi:include href="mandos-options.xml" xpointer="priority"/>
196
217
        </listitem>
197
218
      </varlistentry>
198
 
      
 
219
 
199
220
      <varlistentry>
200
 
        <term><option>--servicename
201
 
        <replaceable>NAME</replaceable></option></term>
 
221
        <term><literal>--servicename <replaceable>NAME</replaceable>
 
222
        </literal></term>
202
223
        <listitem>
203
224
          <xi:include href="mandos-options.xml"
204
225
                      xpointer="servicename"/>
205
226
        </listitem>
206
227
      </varlistentry>
207
 
      
 
228
 
208
229
      <varlistentry>
209
 
        <term><option>--configdir
210
 
        <replaceable>DIRECTORY</replaceable></option></term>
 
230
        <term><literal>--configdir <replaceable>DIR</replaceable>
 
231
        </literal></term>
211
232
        <listitem>
212
233
          <para>
213
234
            Directory to search for configuration files.  Default is
219
240
          </para>
220
241
        </listitem>
221
242
      </varlistentry>
222
 
      
 
243
 
223
244
      <varlistentry>
224
 
        <term><option>--version</option></term>
 
245
        <term><literal>--version</literal></term>
225
246
        <listitem>
226
247
          <para>
227
248
            Prints the program version and exit.
230
251
      </varlistentry>
231
252
    </variablelist>
232
253
  </refsect1>
233
 
  
 
254
 
234
255
  <refsect1 id="overview">
235
256
    <title>OVERVIEW</title>
236
257
    <xi:include href="overview.xml"/>
237
258
    <para>
238
259
      This program is the server part.  It is a normal server program
239
260
      and will run in a normal system environment, not in an initial
240
 
      <acronym>RAM</acronym> disk environment.
 
261
      RAM disk environment.
241
262
    </para>
242
263
  </refsect1>
243
 
  
 
264
 
244
265
  <refsect1 id="protocol">
245
266
    <title>NETWORK PROTOCOL</title>
246
267
    <para>
298
319
      </row>
299
320
    </tbody></tgroup></table>
300
321
  </refsect1>
301
 
  
 
322
 
302
323
  <refsect1 id="checking">
303
324
    <title>CHECKING</title>
304
325
    <para>
312
333
      <manvolnum>5</manvolnum></citerefentry>.
313
334
    </para>
314
335
  </refsect1>
315
 
  
 
336
 
316
337
  <refsect1 id="logging">
317
338
    <title>LOGGING</title>
318
339
    <para>
322
343
      and also show them on the console.
323
344
    </para>
324
345
  </refsect1>
325
 
  
 
346
 
326
347
  <refsect1 id="exit_status">
327
348
    <title>EXIT STATUS</title>
328
349
    <para>
330
351
      critical error is encountered.
331
352
    </para>
332
353
  </refsect1>
333
 
  
 
354
 
334
355
  <refsect1 id="environment">
335
356
    <title>ENVIRONMENT</title>
336
357
    <variablelist>
350
371
      </varlistentry>
351
372
    </variablelist>
352
373
  </refsect1>
353
 
  
354
 
  <refsect1 id="files">
 
374
 
 
375
  <refsect1 id="file">
355
376
    <title>FILES</title>
356
377
    <para>
357
378
      Use the <option>--configdir</option> option to change where
380
401
        </listitem>
381
402
      </varlistentry>
382
403
      <varlistentry>
383
 
        <term><filename>/var/run/mandos.pid</filename></term>
 
404
        <term><filename>/var/run/mandos/mandos.pid</filename></term>
384
405
        <listitem>
385
406
          <para>
386
407
            The file containing the process id of
421
442
      Currently, if a client is declared <quote>invalid</quote> due to
422
443
      having timed out, the server does not record this fact onto
423
444
      permanent storage.  This has some security implications, see
424
 
      <xref linkend="clients"/>.
 
445
      <xref linkend="CLIENTS"/>.
425
446
    </para>
426
447
    <para>
427
448
      There is currently no way of querying the server of the current
435
456
      Debug mode is conflated with running in the foreground.
436
457
    </para>
437
458
    <para>
438
 
      The console log messages does not show a time stamp.
439
 
    </para>
440
 
    <para>
441
 
      This server does not check the expire time of clients’ OpenPGP
442
 
      keys.
 
459
      The console log messages does not show a timestamp.
443
460
    </para>
444
461
  </refsect1>
445
462
  
480
497
      </para>
481
498
    </informalexample>
482
499
  </refsect1>
483
 
  
 
500
 
484
501
  <refsect1 id="security">
485
502
    <title>SECURITY</title>
486
 
    <refsect2 id="server">
 
503
    <refsect2 id="SERVER">
487
504
      <title>SERVER</title>
488
505
      <para>
489
506
        Running this <command>&COMMANDNAME;</command> server program
490
507
        should not in itself present any security risk to the host
491
 
        computer running it.  The program switches to a non-root user
492
 
        soon after startup.
 
508
        computer running it.  The program does not need any special
 
509
        privileges to run, and is designed to run as a non-root user.
493
510
      </para>
494
511
    </refsect2>
495
 
    <refsect2 id="clients">
 
512
    <refsect2 id="CLIENTS">
496
513
      <title>CLIENTS</title>
497
514
      <para>
498
515
        The server only gives out its stored data to clients which
505
522
        <citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
506
523
        <manvolnum>5</manvolnum></citerefentry>)
507
524
        <emphasis>must</emphasis> be made non-readable by anyone
508
 
        except the user starting the server (usually root).
 
525
        except the user running the server.
509
526
      </para>
510
527
      <para>
511
528
        As detailed in <xref linkend="checking"/>, the status of all
522
539
        restarting servers if it is suspected that a client has, in
523
540
        fact, been compromised by parties who may now be running a
524
541
        fake Mandos client with the keys from the non-encrypted
525
 
        initial <acronym>RAM</acronym> image of the client host.  What
526
 
        should be done in that case (if restarting the server program
527
 
        really is necessary) is to stop the server program, edit the
 
542
        initial RAM image of the client host.  What should be done in
 
543
        that case (if restarting the server program really is
 
544
        necessary) is to stop the server program, edit the
528
545
        configuration file to omit any suspect clients, and restart
529
546
        the server program.
530
547
      </para>
531
548
      <para>
532
549
        For more details on client-side security, see
533
 
        <citerefentry><refentrytitle>mandos-client</refentrytitle>
 
550
        <citerefentry><refentrytitle>password-request</refentrytitle>
534
551
        <manvolnum>8mandos</manvolnum></citerefentry>.
535
552
      </para>
536
553
    </refsect2>
537
554
  </refsect1>
538
 
  
 
555
 
539
556
  <refsect1 id="see_also">
540
557
    <title>SEE ALSO</title>
541
558
    <para>
544
561
        <manvolnum>5</manvolnum></citerefentry>, <citerefentry>
545
562
        <refentrytitle>mandos.conf</refentrytitle>
546
563
        <manvolnum>5</manvolnum></citerefentry>, <citerefentry>
547
 
        <refentrytitle>mandos-client</refentrytitle>
 
564
        <refentrytitle>password-request</refentrytitle>
548
565
        <manvolnum>8mandos</manvolnum></citerefentry>, <citerefentry>
549
566
        <refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum>
550
567
      </citerefentry>