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

  • Committer: Teddy Hogeborn
  • Date: 2018-02-19 21:32:07 UTC
  • Revision ID: teddy@recompile.se-20180219213207-0un0ylegx390pftq
Client bug fixes: Fix file descriptor leaks

* plugin-helpers/mandos-client.c (init_gnutls_global, get_flags):
  Always close files and sockets after they are used.

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-keygen">
5
 
<!ENTITY TIMESTAMP "2019-07-18">
 
5
<!ENTITY TIMESTAMP "2018-02-08">
6
6
<!ENTITY % common SYSTEM "common.ent">
7
7
%common;
8
8
]>
42
42
      <year>2016</year>
43
43
      <year>2017</year>
44
44
      <year>2018</year>
45
 
      <year>2019</year>
46
45
      <holder>Teddy Hogeborn</holder>
47
46
      <holder>Björn Påhlsson</holder>
48
47
    </copyright>
128
127
      </group>
129
128
      <sbr/>
130
129
      <group>
131
 
        <arg choice="plain"><option>--tls-keytype
132
 
        <replaceable>KEYTYPE</replaceable></option></arg>
133
 
        <arg choice="plain"><option>-T
134
 
        <replaceable>KEYTYPE</replaceable></option></arg>
135
 
      </group>
136
 
      <sbr/>
137
 
      <group>
138
130
        <arg choice="plain"><option>--force</option></arg>
139
131
        <arg choice="plain"><option>-f</option></arg>
140
132
      </group>
188
180
    <title>DESCRIPTION</title>
189
181
    <para>
190
182
      <command>&COMMANDNAME;</command> is a program to generate the
191
 
      TLS and OpenPGP keys used by
 
183
      OpenPGP key used by
192
184
      <citerefentry><refentrytitle>mandos-client</refentrytitle>
193
 
      <manvolnum>8mandos</manvolnum></citerefentry>.  The keys are
194
 
      normally written to /etc/keys/mandos for later installation into
195
 
      the initrd image, but this, and most other things, can be
196
 
      changed with command line options.
 
185
      <manvolnum>8mandos</manvolnum></citerefentry>.  The key is
 
186
      normally written to /etc/mandos for later installation into the
 
187
      initrd image, but this, and most other things, can be changed
 
188
      with command line options.
197
189
    </para>
198
190
    <para>
199
191
      This program can also be used with the
236
228
        <replaceable>DIRECTORY</replaceable></option></term>
237
229
        <listitem>
238
230
          <para>
239
 
            Target directory for key files.  Default is <filename
240
 
            class="directory">/etc/keys/mandos</filename>.
 
231
            Target directory for key files.  Default is
 
232
            <filename class="directory">/etc/mandos</filename>.
241
233
          </para>
242
234
        </listitem>
243
235
      </varlistentry>
249
241
        <replaceable>TYPE</replaceable></option></term>
250
242
        <listitem>
251
243
          <para>
252
 
            OpenPGP key type.  Default is <quote>RSA</quote>.
 
244
            Key type.  Default is <quote>RSA</quote>.
253
245
          </para>
254
246
        </listitem>
255
247
      </varlistentry>
261
253
        <replaceable>BITS</replaceable></option></term>
262
254
        <listitem>
263
255
          <para>
264
 
            OpenPGP key length in bits.  Default is 4096.
 
256
            Key length in bits.  Default is 4096.
265
257
          </para>
266
258
        </listitem>
267
259
      </varlistentry>
273
265
        <replaceable>KEYTYPE</replaceable></option></term>
274
266
        <listitem>
275
267
          <para>
276
 
            OpenPGP subkey type.  Default is <quote>RSA</quote>
 
268
            Subkey type.  Default is <quote>RSA</quote> (Elgamal
 
269
            encryption-only).
277
270
          </para>
278
271
        </listitem>
279
272
      </varlistentry>
285
278
        <replaceable>BITS</replaceable></option></term>
286
279
        <listitem>
287
280
          <para>
288
 
            OpenPGP subkey length in bits.  Default is 4096.
 
281
            Subkey length in bits.  Default is 4096.
289
282
          </para>
290
283
        </listitem>
291
284
      </varlistentry>
329
322
      </varlistentry>
330
323
      
331
324
      <varlistentry>
332
 
        <term><option>--tls-keytype
333
 
        <replaceable>KEYTYPE</replaceable></option></term>
334
 
        <term><option>-T
335
 
        <replaceable>KEYTYPE</replaceable></option></term>
336
 
        <listitem>
337
 
          <para>
338
 
            TLS key type.  Default is <quote>ed25519</quote>
339
 
          </para>
340
 
        </listitem>
341
 
      </varlistentry>
342
 
      
343
 
      <varlistentry>
344
325
        <term><option>--force</option></term>
345
326
        <term><option>-f</option></term>
346
327
        <listitem>
355
336
        <listitem>
356
337
          <para>
357
338
            Prompt for a password and encrypt it with the key already
358
 
            present in either <filename>/etc/keys/mandos</filename> or
359
 
            the directory specified with the <option>--dir</option>
 
339
            present in either <filename>/etc/mandos</filename> or the
 
340
            directory specified with the <option>--dir</option>
360
341
            option.  Outputs, on standard output, a section suitable
361
342
            for inclusion in <citerefentry><refentrytitle
362
343
            >mandos-clients.conf</refentrytitle><manvolnum
363
344
            >8</manvolnum></citerefentry>.  The host name or the name
364
345
            specified with the <option>--name</option> option is used
365
346
            for the section header.  All other options are ignored,
366
 
            and no key is created.  Note: white space is stripped from
367
 
            the beginning and from the end of the password; See <xref
368
 
            linkend="bugs"/>.
 
347
            and no key is created.
369
348
          </para>
370
349
        </listitem>
371
350
      </varlistentry>
377
356
        <listitem>
378
357
          <para>
379
358
            The same as <option>--password</option>, but read from
380
 
            <replaceable>FILE</replaceable>, not the terminal, and
381
 
            white space is not stripped from the password in any way.
 
359
            <replaceable>FILE</replaceable>, not the terminal.
382
360
          </para>
383
361
        </listitem>
384
362
      </varlistentry>
405
383
    <title>OVERVIEW</title>
406
384
    <xi:include href="overview.xml"/>
407
385
    <para>
408
 
      This program is a small utility to generate new TLS and OpenPGP
409
 
      keys for new Mandos clients, and to generate sections for
410
 
      inclusion in <filename>clients.conf</filename> on the server.
 
386
      This program is a small utility to generate new OpenPGP keys for
 
387
      new Mandos clients, and to generate sections for inclusion in
 
388
      <filename>clients.conf</filename> on the server.
411
389
    </para>
412
390
  </refsect1>
413
391
  
445
423
    </para>
446
424
    <variablelist>
447
425
      <varlistentry>
448
 
        <term><filename>/etc/keys/mandos/seckey.txt</filename></term>
 
426
        <term><filename>/etc/mandos/seckey.txt</filename></term>
449
427
        <listitem>
450
428
          <para>
451
429
            OpenPGP secret key file which will be created or
454
432
        </listitem>
455
433
      </varlistentry>
456
434
      <varlistentry>
457
 
        <term><filename>/etc/keys/mandos/pubkey.txt</filename></term>
 
435
        <term><filename>/etc/mandos/pubkey.txt</filename></term>
458
436
        <listitem>
459
437
          <para>
460
438
            OpenPGP public key file which will be created or
463
441
        </listitem>
464
442
      </varlistentry>
465
443
      <varlistentry>
466
 
        <term><filename>/etc/keys/mandos/tls-privkey.pem</filename></term>
467
 
        <listitem>
468
 
          <para>
469
 
            Private key file which will be created or overwritten.
470
 
          </para>
471
 
        </listitem>
472
 
      </varlistentry>
473
 
      <varlistentry>
474
 
        <term><filename>/etc/keys/mandos/tls-pubkey.pem</filename></term>
475
 
        <listitem>
476
 
          <para>
477
 
            Public key file which will be created or overwritten.
478
 
          </para>
479
 
        </listitem>
480
 
      </varlistentry>
481
 
      <varlistentry>
482
444
        <term><filename class="directory">/tmp</filename></term>
483
445
        <listitem>
484
446
          <para>
492
454
  
493
455
  <refsect1 id="bugs">
494
456
    <title>BUGS</title>
495
 
    <para>
496
 
      The <option>--password</option>/<option>-p</option> option
497
 
      strips white space from the start and from the end of the
498
 
      password before using it.  If this is a problem, use the
499
 
      <option>--passfile</option> option instead, which does not do
500
 
      this.
501
 
    </para>
502
457
    <xi:include href="bugs.xml"/>
503
458
  </refsect1>
504
459
  
526
481
    </informalexample>
527
482
    <informalexample>
528
483
      <para>
529
 
        Prompt for a password, encrypt it with the keys in <filename
530
 
        class="directory">/etc/keys/mandos</filename> and output a
531
 
        section suitable for <filename>clients.conf</filename>.
 
484
        Prompt for a password, encrypt it with the key in <filename
 
485
        class="directory">/etc/mandos</filename> and output a section
 
486
        suitable for <filename>clients.conf</filename>.
532
487
      </para>
533
488
      <para>
534
489
        <userinput>&COMMANDNAME; --password</userinput>
536
491
    </informalexample>
537
492
    <informalexample>
538
493
      <para>
539
 
        Prompt for a password, encrypt it with the keys in the
 
494
        Prompt for a password, encrypt it with the key in the
540
495
        <filename>client-key</filename> directory and output a section
541
496
        suitable for <filename>clients.conf</filename>.
542
497
      </para>