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

* INSTALL (Prerequisites/Mandos Server): Added "PyGObject".

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-24">
 
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/>
113
115
      </group>
114
116
    </cmdsynopsis>
115
117
  </refsynopsisdiv>
116
 
 
 
118
  
117
119
  <refsect1 id="description">
118
120
    <title>DESCRIPTION</title>
119
121
    <para>
120
122
      <command>&COMMANDNAME;</command> is a client program that
121
123
      communicates with <citerefentry><refentrytitle
122
124
      >mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>
123
 
      to get a password.  It uses IPv6 link-local addresses to get
124
 
      network connectivity, Zeroconf to find servers, and TLS with an
125
 
      OpenPGP key to ensure authenticity and confidentiality.  It
126
 
      keeps running, trying all servers on the network, until it
127
 
      receives a satisfactory reply or a TERM signal is recieved.
 
125
      to get a password.  In slightly more detail, this client program
 
126
      brings up a network interface, uses the interface’s IPv6
 
127
      link-local address to get network connectivity, uses Zeroconf to
 
128
      find servers on the local network, and communicates with servers
 
129
      using TLS with an OpenPGP key to ensure authenticity and
 
130
      confidentiality.  This client program keeps running, trying all
 
131
      servers on the network, until it receives a satisfactory reply
 
132
      or a TERM signal is received.  If no servers are found, or after
 
133
      all servers have been tried, it waits indefinitely for new
 
134
      servers to appear.
128
135
    </para>
129
136
    <para>
130
137
      This program is not meant to be run directly; it is really meant
199
206
            specifies the interface to use to connect to the address
200
207
            given.
201
208
          </para>
 
209
          <para>
 
210
            Note that since this program will normally run in the
 
211
            initial RAM disk environment, the interface must be an
 
212
            interface which exists at that stage.  Thus, the interface
 
213
            can not be a pseudo-interface such as <quote>br0</quote>
 
214
            or <quote>tun0</quote>; such interfaces will not exist
 
215
            until much later in the boot process, and can not be used
 
216
            by this program.
 
217
          </para>
202
218
        </listitem>
203
219
      </varlistentry>
204
220
      
215
231
          </para>
216
232
        </listitem>
217
233
      </varlistentry>
218
 
 
 
234
      
219
235
      <varlistentry>
220
236
        <term><option>--seckey=<replaceable
221
237
        >FILE</replaceable></option></term>
238
254
                      xpointer="priority"/>
239
255
        </listitem>
240
256
      </varlistentry>
241
 
 
 
257
      
242
258
      <varlistentry>
243
259
        <term><option>--dh-bits=<replaceable
244
260
        >BITS</replaceable></option></term>
284
300
          </para>
285
301
        </listitem>
286
302
      </varlistentry>
287
 
 
 
303
      
288
304
      <varlistentry>
289
305
        <term><option>--version</option></term>
290
306
        <term><option>-V</option></term>
296
312
      </varlistentry>
297
313
    </variablelist>
298
314
  </refsect1>
299
 
 
 
315
  
300
316
  <refsect1 id="overview">
301
317
    <title>OVERVIEW</title>
302
318
    <xi:include href="../overview.xml"/>
311
327
      <filename>/etc/crypttab</filename>, but it would then be
312
328
      impossible to enter a password for the encrypted root disk at
313
329
      the console, since this program does not read from the console
314
 
      at all.  This is why a separate plugin (<citerefentry>
315
 
      <refentrytitle>password-prompt</refentrytitle>
316
 
      <manvolnum>8mandos</manvolnum></citerefentry>) does that, which
317
 
      will be run in parallell to this one by the plugin runner.
 
330
      at all.  This is why a separate plugin runner (<citerefentry>
 
331
      <refentrytitle>plugin-runner</refentrytitle>
 
332
      <manvolnum>8mandos</manvolnum></citerefentry>) is used to run
 
333
      both this program and others in in parallel,
 
334
      <emphasis>one</emphasis> of which will prompt for passwords on
 
335
      the system console.
318
336
    </para>
319
337
  </refsect1>
320
338
  
327
345
      program will exit with a non-zero exit status only if a critical
328
346
      error occurs.  Otherwise, it will forever connect to new
329
347
      <application>Mandos</application> servers as they appear, trying
330
 
      to get a decryptable password.
 
348
      to get a decryptable password and print it.
331
349
    </para>
332
350
  </refsect1>
333
351
  
341
359
    </para>
342
360
  </refsect1>
343
361
  
344
 
  <refsect1 id="file">
 
362
  <refsect1 id="files">
345
363
    <title>FILES</title>
346
364
    <variablelist>
347
365
      <varlistentry>
366
384
<!--     <para> -->
367
385
<!--     </para> -->
368
386
<!--   </refsect1> -->
369
 
 
 
387
  
370
388
  <refsect1 id="example">
371
389
    <title>EXAMPLE</title>
372
390
    <para>
386
404
    </informalexample>
387
405
    <informalexample>
388
406
      <para>
389
 
        Search for Mandos servers on another interface:
 
407
        Search for Mandos servers (and connect to them) using another
 
408
        interface:
390
409
      </para>
391
410
      <para>
392
411
        <!-- do not wrap this line -->
420
439
      </para>
421
440
    </informalexample>
422
441
  </refsect1>
423
 
 
 
442
  
424
443
  <refsect1 id="security">
425
444
    <title>SECURITY</title>
426
445
    <para>
446
465
      The only remaining weak point is that someone with physical
447
466
      access to the client hard drive might turn off the client
448
467
      computer, read the OpenPGP keys directly from the hard drive,
449
 
      and communicate with the server.  The defense against this is
450
 
      that the server is supposed to notice the client disappearing
451
 
      and will stop giving out the encrypted data.  Therefore, it is
452
 
      important to set the timeout and checker interval values tightly
453
 
      on the server.  See <citerefentry><refentrytitle
 
468
      and communicate with the server.  To safeguard against this, the
 
469
      server is supposed to notice the client disappearing and stop
 
470
      giving out the encrypted data.  Therefore, it is important to
 
471
      set the timeout and checker interval values tightly on the
 
472
      server.  See <citerefentry><refentrytitle
454
473
      >mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
455
474
    </para>
456
475
    <para>
467
486
      confidential.
468
487
    </para>
469
488
  </refsect1>
470
 
 
 
489
  
471
490
  <refsect1 id="see_also">
472
491
    <title>SEE ALSO</title>
473
492
    <para>
598
617
      </varlistentry>
599
618
    </variablelist>
600
619
  </refsect1>
601
 
 
602
620
</refentry>
 
621
 
603
622
<!-- Local Variables: -->
604
623
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
605
624
<!-- time-stamp-end: "[\"']>" -->