/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 plugins.d/mandos-client.xml

  • Committer: Teddy Hogeborn
  • Date: 2009-01-17 09:46:54 UTC
  • Revision ID: teddy@fukt.bsnet.se-20090117094654-ydvanis7caqoxxn7
* mandos-keygen (password): Remove bashism "${PIPESTATUS}".

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
 
<!ENTITY COMMANDNAME "password-request">
6
 
<!ENTITY TIMESTAMP "2008-09-03">
 
4
<!ENTITY COMMANDNAME "mandos-client">
 
5
<!ENTITY TIMESTAMP "2009-01-04">
 
6
<!ENTITY % common SYSTEM "../common.ent">
 
7
%common;
7
8
]>
8
9
 
9
10
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
10
11
  <refentryinfo>
11
12
    <title>Mandos Manual</title>
12
 
    <!-- Nwalsh’s docbook scripts use this to generate the footer: -->
 
13
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
13
14
    <productname>Mandos</productname>
14
 
    <productnumber>&VERSION;</productnumber>
 
15
    <productnumber>&version;</productnumber>
15
16
    <date>&TIMESTAMP;</date>
16
17
    <authorgroup>
17
18
      <author>
31
32
    </authorgroup>
32
33
    <copyright>
33
34
      <year>2008</year>
 
35
      <year>2009</year>
34
36
      <holder>Teddy Hogeborn</holder>
35
37
      <holder>Björn Påhlsson</holder>
36
38
    </copyright>
37
39
    <xi:include href="../legalnotice.xml"/>
38
40
  </refentryinfo>
39
 
 
 
41
  
40
42
  <refmeta>
41
43
    <refentrytitle>&COMMANDNAME;</refentrytitle>
42
44
    <manvolnum>8mandos</manvolnum>
45
47
  <refnamediv>
46
48
    <refname><command>&COMMANDNAME;</command></refname>
47
49
    <refpurpose>
48
 
      Client for mandos
 
50
      Client for <application>Mandos</application>
49
51
    </refpurpose>
50
52
  </refnamediv>
51
 
 
 
53
  
52
54
  <refsynopsisdiv>
53
55
    <cmdsynopsis>
54
56
      <command>&COMMANDNAME;</command>
55
57
      <group>
56
58
        <arg choice="plain"><option>--connect
57
 
        <replaceable>IPADDR</replaceable><literal>:</literal
 
59
        <replaceable>ADDRESS</replaceable><literal>:</literal
58
60
        ><replaceable>PORT</replaceable></option></arg>
59
61
        <arg choice="plain"><option>-c
60
 
        <replaceable>IPADDR</replaceable><literal>:</literal
 
62
        <replaceable>ADDRESS</replaceable><literal>:</literal
61
63
        ><replaceable>PORT</replaceable></option></arg>
62
64
      </group>
63
65
      <sbr/>
64
66
      <group>
65
 
        <arg choice="plain"><option>--keydir
66
 
        <replaceable>DIRECTORY</replaceable></option></arg>
67
 
        <arg choice="plain"><option>-d
68
 
        <replaceable>DIRECTORY</replaceable></option></arg>
69
 
      </group>
70
 
      <sbr/>
71
 
      <group>
72
67
        <arg choice="plain"><option>--interface
73
68
        <replaceable>NAME</replaceable></option></arg>
74
69
        <arg choice="plain"><option>-i
120
115
      </group>
121
116
    </cmdsynopsis>
122
117
  </refsynopsisdiv>
123
 
 
 
118
  
124
119
  <refsect1 id="description">
125
120
    <title>DESCRIPTION</title>
126
121
    <para>
131
126
      network connectivity, Zeroconf to find servers, and TLS with an
132
127
      OpenPGP key to ensure authenticity and confidentiality.  It
133
128
      keeps running, trying all servers on the network, until it
134
 
      receives a satisfactory reply or a TERM signal is recieved.
 
129
      receives a satisfactory reply or a TERM signal is received.
135
130
    </para>
136
131
    <para>
137
132
      This program is not meant to be run directly; it is really meant
191
186
      </varlistentry>
192
187
      
193
188
      <varlistentry>
194
 
        <term><option>--keydir=<replaceable
195
 
        >DIRECTORY</replaceable></option></term>
196
 
        <term><option>-d
197
 
        <replaceable>DIRECTORY</replaceable></option></term>
198
 
        <listitem>
199
 
          <para>
200
 
            Directory to read the OpenPGP key files
201
 
            <filename>pubkey.txt</filename> and
202
 
            <filename>seckey.txt</filename> from.  The default is
203
 
            <filename>/conf/conf.d/mandos</filename> (in the initial
204
 
            <acronym>RAM</acronym> disk environment).
205
 
          </para>
206
 
        </listitem>
207
 
      </varlistentry>
208
 
 
209
 
      <varlistentry>
210
189
        <term><option>--interface=
211
190
        <replaceable>NAME</replaceable></option></term>
212
191
        <term><option>-i
232
211
        <replaceable>FILE</replaceable></option></term>
233
212
        <listitem>
234
213
          <para>
235
 
            OpenPGP public key file base name.  This will be combined
236
 
            with the directory from the <option>--keydir</option>
237
 
            option to form an absolute file name.  The default name is
238
 
            <quote><literal>pubkey.txt</literal></quote>.
 
214
            OpenPGP public key file name.  The default name is
 
215
            <quote><filename>/conf/conf.d/mandos/pubkey.txt</filename
 
216
            ></quote>.
239
217
          </para>
240
218
        </listitem>
241
219
      </varlistentry>
242
 
 
 
220
      
243
221
      <varlistentry>
244
222
        <term><option>--seckey=<replaceable
245
223
        >FILE</replaceable></option></term>
247
225
        <replaceable>FILE</replaceable></option></term>
248
226
        <listitem>
249
227
          <para>
250
 
            OpenPGP secret key file base name.  This will be combined
251
 
            with the directory from the <option>--keydir</option>
252
 
            option to form an absolute file name.  The default name is
253
 
            <quote><literal>seckey.txt</literal></quote>.
 
228
            OpenPGP secret key file name.  The default name is
 
229
            <quote><filename>/conf/conf.d/mandos/seckey.txt</filename
 
230
            ></quote>.
254
231
          </para>
255
232
        </listitem>
256
233
      </varlistentry>
263
240
                      xpointer="priority"/>
264
241
        </listitem>
265
242
      </varlistentry>
266
 
 
 
243
      
267
244
      <varlistentry>
268
245
        <term><option>--dh-bits=<replaceable
269
246
        >BITS</replaceable></option></term>
309
286
          </para>
310
287
        </listitem>
311
288
      </varlistentry>
312
 
 
 
289
      
313
290
      <varlistentry>
314
291
        <term><option>--version</option></term>
315
292
        <term><option>-V</option></term>
321
298
      </varlistentry>
322
299
    </variablelist>
323
300
  </refsect1>
324
 
 
 
301
  
325
302
  <refsect1 id="overview">
326
303
    <title>OVERVIEW</title>
327
304
    <xi:include href="../overview.xml"/>
336
313
      <filename>/etc/crypttab</filename>, but it would then be
337
314
      impossible to enter a password for the encrypted root disk at
338
315
      the console, since this program does not read from the console
339
 
      at all.  This is why a separate plugin (<citerefentry>
340
 
      <refentrytitle>password-prompt</refentrytitle>
341
 
      <manvolnum>8mandos</manvolnum></citerefentry>) does that, which
342
 
      will be run in parallell to this one by the plugin runner.
 
316
      at all.  This is why a separate plugin runner (<citerefentry>
 
317
      <refentrytitle>plugin-runner</refentrytitle>
 
318
      <manvolnum>8mandos</manvolnum></citerefentry>) is used to run
 
319
      both this program and others in in parallel,
 
320
      <emphasis>one</emphasis> of which will prompt for passwords on
 
321
      the system console.
343
322
    </para>
344
323
  </refsect1>
345
324
  
352
331
      program will exit with a non-zero exit status only if a critical
353
332
      error occurs.  Otherwise, it will forever connect to new
354
333
      <application>Mandos</application> servers as they appear, trying
355
 
      to get a decryptable password.
 
334
      to get a decryptable password and print it.
356
335
    </para>
357
336
  </refsect1>
358
337
  
366
345
    </para>
367
346
  </refsect1>
368
347
  
369
 
  <refsect1 id="file">
 
348
  <refsect1 id="files">
370
349
    <title>FILES</title>
371
350
    <variablelist>
372
351
      <varlistentry>
391
370
<!--     <para> -->
392
371
<!--     </para> -->
393
372
<!--   </refsect1> -->
394
 
 
 
373
  
395
374
  <refsect1 id="example">
396
375
    <title>EXAMPLE</title>
397
376
    <para>
411
390
    </informalexample>
412
391
    <informalexample>
413
392
      <para>
414
 
        Search for Mandos servers on another interface:
 
393
        Search for Mandos servers (and connect to them) using another
 
394
        interface:
415
395
      </para>
416
396
      <para>
417
397
        <!-- do not wrap this line -->
420
400
    </informalexample>
421
401
    <informalexample>
422
402
      <para>
423
 
        Run in debug mode, and use a custom key directory:
 
403
        Run in debug mode, and use a custom key:
424
404
      </para>
425
405
      <para>
426
 
        <!-- do not wrap this line -->
427
 
        <userinput>&COMMANDNAME; --debug --keydir keydir</userinput>
 
406
 
 
407
<!-- do not wrap this line -->
 
408
<userinput>&COMMANDNAME; --debug --pubkey keydir/pubkey.txt --seckey keydir/seckey.txt</userinput>
 
409
 
428
410
      </para>
429
411
    </informalexample>
430
412
    <informalexample>
431
413
      <para>
432
 
        Run in debug mode, with a custom key directory, and do not use
433
 
        Zeroconf to locate a server; connect directly to the IPv6
434
 
        address <quote><systemitem class="ipaddress"
 
414
        Run in debug mode, with a custom key, and do not use Zeroconf
 
415
        to locate a server; connect directly to the IPv6 address
 
416
        <quote><systemitem class="ipaddress"
435
417
        >2001:db8:f983:bd0b:30de:ae4a:71f2:f672</systemitem></quote>,
436
418
        port 4711, using interface eth2:
437
419
      </para>
438
420
      <para>
439
421
 
440
422
<!-- do not wrap this line -->
441
 
<userinput>&COMMANDNAME; --debug --keydir keydir --connect 2001:db8:f983:bd0b:30de:ae4a:71f2:f672:4711 --interface eth2</userinput>
 
423
<userinput>&COMMANDNAME; --debug --pubkey keydir/pubkey.txt --seckey keydir/seckey.txt --connect 2001:db8:f983:bd0b:30de:ae4a:71f2:f672:4711 --interface eth2</userinput>
442
424
 
443
425
      </para>
444
426
    </informalexample>
445
427
  </refsect1>
446
 
 
 
428
  
447
429
  <refsect1 id="security">
448
430
    <title>SECURITY</title>
449
431
    <para>
469
451
      The only remaining weak point is that someone with physical
470
452
      access to the client hard drive might turn off the client
471
453
      computer, read the OpenPGP keys directly from the hard drive,
472
 
      and communicate with the server.  The defense against this is
473
 
      that the server is supposed to notice the client disappearing
474
 
      and will stop giving out the encrypted data.  Therefore, it is
475
 
      important to set the timeout and checker interval values tightly
476
 
      on the server.  See <citerefentry><refentrytitle
 
454
      and communicate with the server.  To safeguard against this, the
 
455
      server is supposed to notice the client disappearing and stop
 
456
      giving out the encrypted data.  Therefore, it is important to
 
457
      set the timeout and checker interval values tightly on the
 
458
      server.  See <citerefentry><refentrytitle
477
459
      >mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
478
460
    </para>
479
461
    <para>
490
472
      confidential.
491
473
    </para>
492
474
  </refsect1>
493
 
 
 
475
  
494
476
  <refsect1 id="see_also">
495
477
    <title>SEE ALSO</title>
496
478
    <para>
621
603
      </varlistentry>
622
604
    </variablelist>
623
605
  </refsect1>
624
 
 
625
606
</refentry>
 
607
 
626
608
<!-- Local Variables: -->
627
609
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
628
610
<!-- time-stamp-end: "[\"']>" -->