/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: 2015-07-08 21:18:49 UTC
  • Revision ID: teddy@recompile.se-20150708211849-scisutuofnxumqc7
mandos-client: Add --dh-params FILE option.

* plugins.d/mandos-client.c: Added --dh-params FILE option.
  (init_gnutls_global): New "dhparamsfilename" argument.  All callers
                        changed.  Read and use Diffie-Hellman
                        parameters from it.  Bug fix:  check for error
                        when opening seckeyfile for the second time.
  (init_gnutls_session): Remove unnecessary call to
                         gnutls_dh_set_prime_bits();
  (main): New variable "dh_params_file".
  (main/argp_options): Added "--dh-params" option.
  (main/parse_opt): - '' -
* plugins.d/mandos-client.xml (SYNOPSIS): Add --dh-params option.
  (OPTIONS): Document --dh-params option and document that the
             --dh-bits options is potentially overridden by the
             --dh-params option.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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
4
<!ENTITY COMMANDNAME "mandos-client">
5
 
<!ENTITY TIMESTAMP "2012-06-13">
 
5
<!ENTITY TIMESTAMP "2015-07-08">
6
6
<!ENTITY % common SYSTEM "../common.ent">
7
7
%common;
8
8
]>
34
34
      <year>2008</year>
35
35
      <year>2009</year>
36
36
      <year>2012</year>
 
37
      <year>2013</year>
 
38
      <year>2014</year>
 
39
      <year>2015</year>
37
40
      <holder>Teddy Hogeborn</holder>
38
41
      <holder>Björn Påhlsson</holder>
39
42
    </copyright>
96
99
      </arg>
97
100
      <sbr/>
98
101
      <arg>
 
102
        <option>--dh-params <replaceable>FILE</replaceable></option>
 
103
      </arg>
 
104
      <sbr/>
 
105
      <arg>
99
106
        <option>--delay <replaceable>SECONDS</replaceable></option>
100
107
      </arg>
101
108
      <sbr/>
218
225
            assumed to separate the address from the port number.
219
226
          </para>
220
227
          <para>
221
 
            This option is normally only useful for testing and
222
 
            debugging.
 
228
            Normally, Zeroconf would be used to locate Mandos servers,
 
229
            in which case this option would only be used when testing
 
230
            and debugging.
223
231
          </para>
224
232
        </listitem>
225
233
      </varlistentry>
226
234
      
227
235
      <varlistentry>
228
236
        <term><option>--interface=<replaceable
229
 
        >NAME</replaceable></option></term>
 
237
        >NAME</replaceable><arg rep='repeat'>,<replaceable
 
238
        >NAME</replaceable></arg></option></term>
230
239
        <term><option>-i
231
 
        <replaceable>NAME</replaceable></option></term>
 
240
        <replaceable>NAME</replaceable><arg rep='repeat'>,<replaceable
 
241
        >NAME</replaceable></arg></option></term>
232
242
        <listitem>
233
243
          <para>
234
244
            Comma separated list of network interfaces that will be
237
247
            use all appropriate interfaces.
238
248
          </para>
239
249
          <para>
240
 
            If the <option>--connect</option> option is used, this
241
 
            specifies the interface to use to connect to the address
242
 
            given.
 
250
            If the <option>--connect</option> option is used, and
 
251
            exactly one interface name is specified (except
 
252
            <quote><literal>none</literal></quote>), this specifies
 
253
            the interface to use to connect to the address given.
243
254
          </para>
244
255
          <para>
245
256
            Note that since this program will normally run in the
254
265
          </para>
255
266
          <para>
256
267
            <replaceable>NAME</replaceable> can be the string
257
 
            <quote><literal>none</literal></quote>; this will not use
258
 
            any specific interface, and will not bring up an interface
259
 
            on startup.  This is not recommended, and only meant for
260
 
            advanced users.
 
268
            <quote><literal>none</literal></quote>; this will make
 
269
            <command>&COMMANDNAME;</command> only bring up interfaces
 
270
            specified <emphasis>before</emphasis> this string.  This
 
271
            is not recommended, and only meant for advanced users.
261
272
          </para>
262
273
        </listitem>
263
274
      </varlistentry>
305
316
        <listitem>
306
317
          <para>
307
318
            Sets the number of bits to use for the prime number in the
308
 
            TLS Diffie-Hellman key exchange.  Default is 1024.
 
319
            TLS Diffie-Hellman key exchange.  The default value is
 
320
            selected automatically based on the OpenPGP key.  Note
 
321
            that if the <option>--dh-params</option> option is used,
 
322
            the values from that file will be used instead.
 
323
          </para>
 
324
        </listitem>
 
325
      </varlistentry>
 
326
      
 
327
      <varlistentry>
 
328
        <term><option>--dh-params=<replaceable
 
329
        >FILE</replaceable></option></term>
 
330
        <listitem>
 
331
          <para>
 
332
            Specifies a PEM-encoded PKCS#3 file to read the parameters
 
333
            needed by the TLS Diffie-Hellman key exchange from.  If
 
334
            this option is not given, or if the file for some reason
 
335
            could not be used, the parameters will be generated on
 
336
            startup, which will take some time and processing power.
 
337
            Those using servers running under time, power or processor
 
338
            constraints may want to generate such a file in advance
 
339
            and use this option.
309
340
          </para>
310
341
        </listitem>
311
342
      </varlistentry>
438
469
  
439
470
  <refsect1 id="environment">
440
471
    <title>ENVIRONMENT</title>
 
472
    <variablelist>
 
473
      <varlistentry>
 
474
        <term><envar>MANDOSPLUGINHELPERDIR</envar></term>
 
475
        <listitem>
 
476
          <para>
 
477
            This environment variable will be assumed to contain the
 
478
            directory containing any helper executables.  The use and
 
479
            nature of these helper executables, if any, is
 
480
            purposefully not documented.
 
481
        </para>
 
482
        </listitem>
 
483
      </varlistentry>
 
484
    </variablelist>
441
485
    <para>
442
 
      This program does not use any environment variables, not even
443
 
      the ones provided by <citerefentry><refentrytitle
 
486
      This program does not use any other environment variables, not
 
487
      even the ones provided by <citerefentry><refentrytitle
444
488
      >cryptsetup</refentrytitle><manvolnum>8</manvolnum>
445
489
    </citerefentry>.
446
490
    </para>
508
552
              It is not necessary to print any non-executable files
509
553
              already in the network hook directory, these will be
510
554
              copied implicitly if they otherwise satisfy the name
511
 
              requirement.
 
555
              requirements.
512
556
            </para>
513
557
          </listitem>
514
558
        </varlistentry>
662
706
    </para>
663
707
    <informalexample>
664
708
      <para>
665
 
        Normal invocation needs no options, if the network interface
 
709
        Normal invocation needs no options, if the network interfaces
666
710
        can be automatically determined:
667
711
      </para>
668
712
      <para>
671
715
    </informalexample>
672
716
    <informalexample>
673
717
      <para>
674
 
        Search for Mandos servers (and connect to them) using another
675
 
        interface:
 
718
        Search for Mandos servers (and connect to them) using one
 
719
        specific interface:
676
720
      </para>
677
721
      <para>
678
722
        <!-- do not wrap this line -->
742
786
    <para>
743
787
      It will also help if the checker program on the server is
744
788
      configured to request something from the client which can not be
745
 
      spoofed by someone else on the network, unlike unencrypted
746
 
      <acronym>ICMP</acronym> echo (<quote>ping</quote>) replies.
 
789
      spoofed by someone else on the network, like SSH server key
 
790
      fingerprints, and unlike unencrypted <acronym>ICMP</acronym>
 
791
      echo (<quote>ping</quote>) replies.
747
792
    </para>
748
793
    <para>
749
794
      <emphasis>Note</emphasis>: This makes it completely insecure to
842
887
              <para>
843
888
                This client uses IPv6 link-local addresses, which are
844
889
                immediately usable since a link-local addresses is
845
 
                automatically assigned to a network interfaces when it
 
890
                automatically assigned to a network interface when it
846
891
                is brought up.
847
892
              </para>
848
893
            </listitem>