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

* mandos (IPv6_TCPServer.server_bind): Bug fix: handle non-existing
                                       interface name.  Use new .errno
                                       attribute of socket.error.

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 "2012-01-01">
6
6
<!ENTITY % common SYSTEM "common.ent">
7
7
%common;
8
8
]>
33
33
    <copyright>
34
34
      <year>2008</year>
35
35
      <year>2009</year>
36
 
      <year>2010</year>
37
36
      <year>2011</year>
38
37
      <year>2012</year>
39
 
      <year>2013</year>
40
 
      <year>2014</year>
41
 
      <year>2015</year>
42
 
      <year>2016</year>
43
 
      <year>2017</year>
44
 
      <year>2018</year>
45
 
      <year>2019</year>
46
38
      <holder>Teddy Hogeborn</holder>
47
39
      <holder>Björn Påhlsson</holder>
48
40
    </copyright>
127
119
        <replaceable>TIME</replaceable></option></arg>
128
120
      </group>
129
121
      <sbr/>
130
 
      <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
 
        <arg choice="plain"><option>--force</option></arg>
139
 
        <arg choice="plain"><option>-f</option></arg>
140
 
      </group>
 
122
      <arg><option>--force</option></arg>
141
123
    </cmdsynopsis>
142
124
    <cmdsynopsis>
143
125
      <command>&COMMANDNAME;</command>
163
145
        <arg choice="plain"><option>-n
164
146
        <replaceable>NAME</replaceable></option></arg>
165
147
      </group>
166
 
      <group>
167
 
        <arg choice="plain"><option>--no-ssh</option></arg>
168
 
        <arg choice="plain"><option>-S</option></arg>
169
 
      </group>
170
148
    </cmdsynopsis>
171
149
    <cmdsynopsis>
172
150
      <command>&COMMANDNAME;</command>
188
166
    <title>DESCRIPTION</title>
189
167
    <para>
190
168
      <command>&COMMANDNAME;</command> is a program to generate the
191
 
      TLS and OpenPGP keys used by
 
169
      OpenPGP key used by
192
170
      <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.
 
171
      <manvolnum>8mandos</manvolnum></citerefentry>.  The key is
 
172
      normally written to /etc/mandos for later installation into the
 
173
      initrd image, but this, and most other things, can be changed
 
174
      with command line options.
197
175
    </para>
198
176
    <para>
199
177
      This program can also be used with the
236
214
        <replaceable>DIRECTORY</replaceable></option></term>
237
215
        <listitem>
238
216
          <para>
239
 
            Target directory for key files.  Default is <filename
240
 
            class="directory">/etc/keys/mandos</filename>.
 
217
            Target directory for key files.  Default is
 
218
            <filename class="directory">/etc/mandos</filename>.
241
219
          </para>
242
220
        </listitem>
243
221
      </varlistentry>
249
227
        <replaceable>TYPE</replaceable></option></term>
250
228
        <listitem>
251
229
          <para>
252
 
            OpenPGP key type.  Default is <quote>RSA</quote>.
 
230
            Key type.  Default is <quote>DSA</quote>.
253
231
          </para>
254
232
        </listitem>
255
233
      </varlistentry>
261
239
        <replaceable>BITS</replaceable></option></term>
262
240
        <listitem>
263
241
          <para>
264
 
            OpenPGP key length in bits.  Default is 4096.
 
242
            Key length in bits.  Default is 2048.
265
243
          </para>
266
244
        </listitem>
267
245
      </varlistentry>
273
251
        <replaceable>KEYTYPE</replaceable></option></term>
274
252
        <listitem>
275
253
          <para>
276
 
            OpenPGP subkey type.  Default is <quote>RSA</quote>
 
254
            Subkey type.  Default is <quote>ELG-E</quote> (Elgamal
 
255
            encryption-only).
277
256
          </para>
278
257
        </listitem>
279
258
      </varlistentry>
285
264
        <replaceable>BITS</replaceable></option></term>
286
265
        <listitem>
287
266
          <para>
288
 
            OpenPGP subkey length in bits.  Default is 4096.
 
267
            Subkey length in bits.  Default is 2048.
289
268
          </para>
290
269
        </listitem>
291
270
      </varlistentry>
309
288
        <replaceable>TEXT</replaceable></option></term>
310
289
        <listitem>
311
290
          <para>
312
 
            Comment field for key.  Default is empty.
 
291
            Comment field for key.  The default value is
 
292
            <quote><literal>Mandos client key</literal></quote>.
313
293
          </para>
314
294
        </listitem>
315
295
      </varlistentry>
329
309
      </varlistentry>
330
310
      
331
311
      <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
312
        <term><option>--force</option></term>
345
313
        <term><option>-f</option></term>
346
314
        <listitem>
355
323
        <listitem>
356
324
          <para>
357
325
            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>
 
326
            present in either <filename>/etc/mandos</filename> or the
 
327
            directory specified with the <option>--dir</option>
360
328
            option.  Outputs, on standard output, a section suitable
361
329
            for inclusion in <citerefentry><refentrytitle
362
330
            >mandos-clients.conf</refentrytitle><manvolnum
363
331
            >8</manvolnum></citerefentry>.  The host name or the name
364
332
            specified with the <option>--name</option> option is used
365
333
            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"/>.
 
334
            and no key is created.
369
335
          </para>
370
336
        </listitem>
371
337
      </varlistentry>
377
343
        <listitem>
378
344
          <para>
379
345
            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.
382
 
          </para>
383
 
        </listitem>
384
 
      </varlistentry>
385
 
      <varlistentry>
386
 
        <term><option>--no-ssh</option></term>
387
 
        <term><option>-S</option></term>
388
 
        <listitem>
389
 
          <para>
390
 
            When <option>--password</option> or
391
 
            <option>--passfile</option> is given, this option will
392
 
            prevent <command>&COMMANDNAME;</command> from calling
393
 
            <command>ssh-keyscan</command> to get an SSH fingerprint
394
 
            for this host and, if successful, output suitable config
395
 
            options to use this fingerprint as a
396
 
            <option>checker</option> option in the output.  This is
397
 
            otherwise the default behavior.
 
346
            <replaceable>FILE</replaceable>, not the terminal.
398
347
          </para>
399
348
        </listitem>
400
349
      </varlistentry>
405
354
    <title>OVERVIEW</title>
406
355
    <xi:include href="overview.xml"/>
407
356
    <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.
 
357
      This program is a small utility to generate new OpenPGP keys for
 
358
      new Mandos clients, and to generate sections for inclusion in
 
359
      <filename>clients.conf</filename> on the server.
411
360
    </para>
412
361
  </refsect1>
413
362
  
445
394
    </para>
446
395
    <variablelist>
447
396
      <varlistentry>
448
 
        <term><filename>/etc/keys/mandos/seckey.txt</filename></term>
 
397
        <term><filename>/etc/mandos/seckey.txt</filename></term>
449
398
        <listitem>
450
399
          <para>
451
400
            OpenPGP secret key file which will be created or
454
403
        </listitem>
455
404
      </varlistentry>
456
405
      <varlistentry>
457
 
        <term><filename>/etc/keys/mandos/pubkey.txt</filename></term>
 
406
        <term><filename>/etc/mandos/pubkey.txt</filename></term>
458
407
        <listitem>
459
408
          <para>
460
409
            OpenPGP public key file which will be created or
463
412
        </listitem>
464
413
      </varlistentry>
465
414
      <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
415
        <term><filename class="directory">/tmp</filename></term>
483
416
        <listitem>
484
417
          <para>
490
423
    </variablelist>
491
424
  </refsect1>
492
425
  
493
 
  <refsect1 id="bugs">
494
 
    <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
 
    <xi:include href="bugs.xml"/>
503
 
  </refsect1>
 
426
<!--   <refsect1 id="bugs"> -->
 
427
<!--     <title>BUGS</title> -->
 
428
<!--     <para> -->
 
429
<!--     </para> -->
 
430
<!--   </refsect1> -->
504
431
  
505
432
  <refsect1 id="example">
506
433
    <title>EXAMPLE</title>
526
453
    </informalexample>
527
454
    <informalexample>
528
455
      <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>.
 
456
        Prompt for a password, encrypt it with the key in <filename
 
457
        class="directory">/etc/mandos</filename> and output a section
 
458
        suitable for <filename>clients.conf</filename>.
532
459
      </para>
533
460
      <para>
534
461
        <userinput>&COMMANDNAME; --password</userinput>
536
463
    </informalexample>
537
464
    <informalexample>
538
465
      <para>
539
 
        Prompt for a password, encrypt it with the keys in the
 
466
        Prompt for a password, encrypt it with the key in the
540
467
        <filename>client-key</filename> directory and output a section
541
468
        suitable for <filename>clients.conf</filename>.
542
469
      </para>
576
503
      <citerefentry><refentrytitle>mandos</refentrytitle>
577
504
      <manvolnum>8</manvolnum></citerefentry>,
578
505
      <citerefentry><refentrytitle>mandos-client</refentrytitle>
579
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
580
 
      <citerefentry><refentrytitle>ssh-keyscan</refentrytitle>
581
 
      <manvolnum>1</manvolnum></citerefentry>
 
506
      <manvolnum>8mandos</manvolnum></citerefentry>
582
507
    </para>
583
508
  </refsect1>
584
509