/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

merge

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
        "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4
4
<!ENTITY VERSION "1.0">
5
5
<!ENTITY COMMANDNAME "mandos-keygen">
 
6
<!ENTITY TIMESTAMP "2008-08-31">
6
7
]>
7
8
 
8
9
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
9
10
  <refentryinfo>
10
 
    <title>&COMMANDNAME;</title>
 
11
    <title>Mandos Manual</title>
11
12
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
12
 
    <productname>&COMMANDNAME;</productname>
 
13
    <productname>Mandos</productname>
13
14
    <productnumber>&VERSION;</productnumber>
 
15
    <date>&TIMESTAMP;</date>
14
16
    <authorgroup>
15
17
      <author>
16
18
        <firstname>Björn</firstname>
32
34
      <holder>Teddy Hogeborn</holder>
33
35
      <holder>Björn Påhlsson</holder>
34
36
    </copyright>
35
 
    <legalnotice>
36
 
      <para>
37
 
        This manual page is free software: you can redistribute it
38
 
        and/or modify it under the terms of the GNU General Public
39
 
        License as published by the Free Software Foundation,
40
 
        either version 3 of the License, or (at your option) any
41
 
        later version.
42
 
      </para>
43
 
 
44
 
      <para>
45
 
        This manual page is distributed in the hope that it will
46
 
        be useful, but WITHOUT ANY WARRANTY; without even the
47
 
        implied warranty of MERCHANTABILITY or FITNESS FOR A
48
 
        PARTICULAR PURPOSE.  See the GNU General Public License
49
 
        for more details.
50
 
      </para>
51
 
 
52
 
      <para>
53
 
        You should have received a copy of the GNU General Public
54
 
        License along with this program; If not, see
55
 
        <ulink url="http://www.gnu.org/licenses/"/>.
56
 
      </para>
57
 
    </legalnotice>
 
37
    <xi:include href="legalnotice.xml"/>
58
38
  </refentryinfo>
59
39
 
60
40
  <refmeta>
65
45
  <refnamediv>
66
46
    <refname><command>&COMMANDNAME;</command></refname>
67
47
    <refpurpose>
68
 
      Generate keys for <citerefentry><refentrytitle>password-request
69
 
      </refentrytitle><manvolnum>8mandos</manvolnum></citerefentry>
 
48
      Generate key and password for Mandos client and server.
70
49
    </refpurpose>
71
50
  </refnamediv>
72
51
 
73
52
  <refsynopsisdiv>
74
53
    <cmdsynopsis>
75
54
      <command>&COMMANDNAME;</command>
76
 
      <group choice="opt">
77
 
        <arg choice="plain"><option>--dir</option>
78
 
        <replaceable>directory</replaceable></arg>
79
 
      </group>
80
 
      <group choice="opt">
81
 
        <arg choice="plain"><option>--type</option>
82
 
        <replaceable>type</replaceable></arg>
83
 
      </group>
84
 
      <group choice="opt">
85
 
        <arg choice="plain"><option>--length</option>
86
 
        <replaceable>bits</replaceable></arg>
87
 
      </group>
88
 
      <group choice="opt">
89
 
        <arg choice="plain"><option>--subtype</option>
90
 
        <replaceable>type</replaceable></arg>
91
 
      </group>
92
 
      <group choice="opt">
93
 
        <arg choice="plain"><option>--sublength</option>
94
 
        <replaceable>bits</replaceable></arg>
95
 
      </group>
96
 
      <group choice="opt">
97
 
        <arg choice="plain"><option>--name</option>
98
 
        <replaceable>NAME</replaceable></arg>
99
 
      </group>
100
 
      <group choice="opt">
101
 
        <arg choice="plain"><option>--email</option>
102
 
        <replaceable>EMAIL</replaceable></arg>
103
 
      </group>
104
 
      <group choice="opt">
105
 
        <arg choice="plain"><option>--comment</option>
106
 
        <replaceable>COMMENT</replaceable></arg>
107
 
      </group>
108
 
      <group choice="opt">
109
 
        <arg choice="plain"><option>--expire</option>
110
 
        <replaceable>TIME</replaceable></arg>
111
 
      </group>
112
 
      <group choice="opt">
113
 
        <arg choice="plain"><option>--force</option></arg>
114
 
      </group>
115
 
    </cmdsynopsis>
116
 
    <cmdsynopsis>
117
 
      <command>&COMMANDNAME;</command>
118
 
      <group choice="opt">
119
 
        <arg choice="plain"><option>-d</option>
120
 
        <replaceable>directory</replaceable></arg>
121
 
      </group>
122
 
      <group choice="opt">
123
 
        <arg choice="plain"><option>-t</option>
124
 
        <replaceable>type</replaceable></arg>
125
 
      </group>
126
 
      <group choice="opt">
127
 
        <arg choice="plain"><option>-l</option>
128
 
        <replaceable>bits</replaceable></arg>
129
 
      </group>
130
 
      <group choice="opt">
131
 
        <arg choice="plain"><option>-s</option>
132
 
        <replaceable>type</replaceable></arg>
133
 
      </group>
134
 
      <group choice="opt">
135
 
        <arg choice="plain"><option>-L</option>
136
 
        <replaceable>bits</replaceable></arg>
137
 
      </group>
138
 
      <group choice="opt">
139
 
        <arg choice="plain"><option>-n</option>
140
 
        <replaceable>NAME</replaceable></arg>
141
 
      </group>
142
 
      <group choice="opt">
143
 
        <arg choice="plain"><option>-e</option>
144
 
        <replaceable>EMAIL</replaceable></arg>
145
 
      </group>
146
 
      <group choice="opt">
147
 
        <arg choice="plain"><option>-c</option>
148
 
        <replaceable>COMMENT</replaceable></arg>
149
 
      </group>
150
 
      <group choice="opt">
151
 
        <arg choice="plain"><option>-x</option>
152
 
        <replaceable>TIME</replaceable></arg>
153
 
      </group>
154
 
      <group choice="opt">
155
 
        <arg choice="plain"><option>-f</option></arg>
156
 
      </group>
 
55
      <group>
 
56
        <arg choice="plain"><option>--dir
 
57
        <replaceable>DIRECTORY</replaceable></option></arg>
 
58
        <arg choice="plain"><option>-d
 
59
        <replaceable>DIRECTORY</replaceable></option></arg>
 
60
      </group>
 
61
      <sbr/>
 
62
      <group>
 
63
        <arg choice="plain"><option>--type
 
64
        <replaceable>KEYTYPE</replaceable></option></arg>
 
65
        <arg choice="plain"><option>-t
 
66
        <replaceable>KEYTYPE</replaceable></option></arg>
 
67
      </group>
 
68
      <sbr/>
 
69
      <group>
 
70
        <arg choice="plain"><option>--length
 
71
        <replaceable>BITS</replaceable></option></arg>
 
72
        <arg choice="plain"><option>-l
 
73
        <replaceable>BITS</replaceable></option></arg>
 
74
      </group>
 
75
      <sbr/>
 
76
      <group>
 
77
        <arg choice="plain"><option>--subtype
 
78
        <replaceable>KEYTYPE</replaceable></option></arg>
 
79
        <arg choice="plain"><option>-s
 
80
        <replaceable>KEYTYPE</replaceable></option></arg>
 
81
      </group>
 
82
      <sbr/>
 
83
      <group>
 
84
        <arg choice="plain"><option>--sublength
 
85
        <replaceable>BITS</replaceable></option></arg>
 
86
        <arg choice="plain"><option>-L
 
87
        <replaceable>BITS</replaceable></option></arg>
 
88
      </group>
 
89
      <sbr/>
 
90
      <group>
 
91
        <arg choice="plain"><option>--name
 
92
        <replaceable>NAME</replaceable></option></arg>
 
93
        <arg choice="plain"><option>-n
 
94
        <replaceable>NAME</replaceable></option></arg>
 
95
      </group>
 
96
      <sbr/>
 
97
      <group>
 
98
        <arg choice="plain"><option>--email
 
99
        <replaceable>ADDRESS</replaceable></option></arg>
 
100
        <arg choice="plain"><option>-e
 
101
        <replaceable>ADDRESS</replaceable></option></arg>
 
102
      </group>
 
103
      <sbr/>
 
104
      <group>
 
105
        <arg choice="plain"><option>--comment
 
106
        <replaceable>TEXT</replaceable></option></arg>
 
107
        <arg choice="plain"><option>-c
 
108
        <replaceable>TEXT</replaceable></option></arg>
 
109
      </group>
 
110
      <sbr/>
 
111
      <group>
 
112
        <arg choice="plain"><option>--expire
 
113
        <replaceable>TIME</replaceable></option></arg>
 
114
        <arg choice="plain"><option>-x
 
115
        <replaceable>TIME</replaceable></option></arg>
 
116
      </group>
 
117
      <sbr/>
 
118
      <arg><option>--force</option></arg>
157
119
    </cmdsynopsis>
158
120
    <cmdsynopsis>
159
121
      <command>&COMMANDNAME;</command>
160
122
      <group choice="req">
 
123
        <arg choice="plain"><option>--password</option></arg>
161
124
        <arg choice="plain"><option>-p</option></arg>
162
 
        <arg choice="plain"><option>--password</option></arg>
163
 
      </group>
164
 
      <group choice="opt">
165
 
        <arg choice="plain"><option>--dir</option>
166
 
        <replaceable>directory</replaceable></arg>
167
 
      </group>
168
 
      <group choice="opt">
169
 
        <arg choice="plain"><option>--name</option>
170
 
        <replaceable>NAME</replaceable></arg>
 
125
      </group>
 
126
      <sbr/>
 
127
      <group>
 
128
        <arg choice="plain"><option>--dir
 
129
        <replaceable>DIRECTORY</replaceable></option></arg>
 
130
        <arg choice="plain"><option>-d
 
131
        <replaceable>DIRECTORY</replaceable></option></arg>
 
132
      </group>
 
133
      <sbr/>
 
134
      <group>
 
135
        <arg choice="plain"><option>--name
 
136
        <replaceable>NAME</replaceable></option></arg>
 
137
        <arg choice="plain"><option>-n
 
138
        <replaceable>NAME</replaceable></option></arg>
171
139
      </group>
172
140
    </cmdsynopsis>
173
141
    <cmdsynopsis>
174
142
      <command>&COMMANDNAME;</command>
175
143
      <group choice="req">
 
144
        <arg choice="plain"><option>--help</option></arg>
176
145
        <arg choice="plain"><option>-h</option></arg>
177
 
        <arg choice="plain"><option>--help</option></arg>
178
146
      </group>
179
147
    </cmdsynopsis>
180
148
    <cmdsynopsis>
181
149
      <command>&COMMANDNAME;</command>
182
150
      <group choice="req">
 
151
        <arg choice="plain"><option>--version</option></arg>
183
152
        <arg choice="plain"><option>-v</option></arg>
184
 
        <arg choice="plain"><option>--version</option></arg>
185
153
      </group>
186
154
    </cmdsynopsis>
187
155
  </refsynopsisdiv>
188
 
 
 
156
  
189
157
  <refsect1 id="description">
190
158
    <title>DESCRIPTION</title>
191
159
    <para>
192
160
      <command>&COMMANDNAME;</command> is a program to generate the
193
 
      OpenPGP keys used by
 
161
      OpenPGP key used by
194
162
      <citerefentry><refentrytitle>password-request</refentrytitle>
195
 
      <manvolnum>8mandos</manvolnum></citerefentry>.  The keys are
 
163
      <manvolnum>8mandos</manvolnum></citerefentry>.  The key is
196
164
      normally written to /etc/mandos for later installation into the
197
 
      initrd image, but this, like most things, can be changed with
198
 
      command line options.
 
165
      initrd image, but this, and most other things, can be changed
 
166
      with command line options.
199
167
    </para>
200
168
    <para>
201
 
      It can also be used to generate ready-made sections for
 
169
      This program can also be used with the
 
170
      <option>--password</option> option to generate a ready-made
 
171
      section for <filename>clients.conf</filename> (see
202
172
      <citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
203
 
      <manvolnum>5</manvolnum></citerefentry> using the
204
 
      <option>--password</option> option.
 
173
      <manvolnum>5</manvolnum></citerefentry>).
205
174
    </para>
206
175
  </refsect1>
207
176
  
208
177
  <refsect1 id="purpose">
209
178
    <title>PURPOSE</title>
210
 
 
211
179
    <para>
212
180
      The purpose of this is to enable <emphasis>remote and unattended
213
181
      rebooting</emphasis> of client host computer with an
214
182
      <emphasis>encrypted root file system</emphasis>.  See <xref
215
183
      linkend="overview"/> for details.
216
184
    </para>
217
 
 
218
185
  </refsect1>
219
186
  
220
187
  <refsect1 id="options">
221
188
    <title>OPTIONS</title>
222
 
 
 
189
    
223
190
    <variablelist>
224
191
      <varlistentry>
225
 
        <term><literal>-h</literal>, <literal>--help</literal></term>
 
192
        <term><option>--help</option></term>
 
193
        <term><option>-h</option></term>
226
194
        <listitem>
227
195
          <para>
228
196
            Show a help message and exit
231
199
      </varlistentry>
232
200
 
233
201
      <varlistentry>
234
 
        <term><literal>-d</literal>, <literal>--dir
235
 
        <replaceable>directory</replaceable></literal></term>
 
202
        <term><option>--dir
 
203
        <replaceable>DIRECTORY</replaceable></option></term>
 
204
        <term><option>-d
 
205
        <replaceable>DIRECTORY</replaceable></option></term>
236
206
        <listitem>
237
207
          <para>
238
208
            Target directory for key files.  Default is
242
212
      </varlistentry>
243
213
 
244
214
      <varlistentry>
245
 
        <term><literal>-t</literal>, <literal>--type
246
 
        <replaceable>type</replaceable></literal></term>
 
215
        <term><option>--type
 
216
        <replaceable>TYPE</replaceable></option></term>
 
217
        <term><option>-t
 
218
        <replaceable>TYPE</replaceable></option></term>
247
219
        <listitem>
248
220
          <para>
249
221
            Key type.  Default is <quote>DSA</quote>.
252
224
      </varlistentry>
253
225
 
254
226
      <varlistentry>
255
 
        <term><literal>-l</literal>, <literal>--length
256
 
        <replaceable>bits</replaceable></literal></term>
 
227
        <term><option>--length
 
228
        <replaceable>BITS</replaceable></option></term>
 
229
        <term><option>-l
 
230
        <replaceable>BITS</replaceable></option></term>
257
231
        <listitem>
258
232
          <para>
259
 
            Key length in bits.  Default is 1024.
 
233
            Key length in bits.  Default is 2048.
260
234
          </para>
261
235
        </listitem>
262
236
      </varlistentry>
263
237
 
264
238
      <varlistentry>
265
 
        <term><literal>-s</literal>, <literal>--subtype
266
 
        <replaceable>type</replaceable></literal></term>
 
239
        <term><option>--subtype
 
240
        <replaceable>KEYTYPE</replaceable></option></term>
 
241
        <term><option>-s
 
242
        <replaceable>KEYTYPE</replaceable></option></term>
267
243
        <listitem>
268
244
          <para>
269
245
            Subkey type.  Default is <quote>ELG-E</quote> (Elgamal
273
249
      </varlistentry>
274
250
 
275
251
      <varlistentry>
276
 
        <term><literal>-L</literal>, <literal>--sublength
277
 
        <replaceable>bits</replaceable></literal></term>
 
252
        <term><option>--sublength
 
253
        <replaceable>BITS</replaceable></option></term>
 
254
        <term><option>-L
 
255
        <replaceable>BITS</replaceable></option></term>
278
256
        <listitem>
279
257
          <para>
280
258
            Subkey length in bits.  Default is 2048.
283
261
      </varlistentry>
284
262
 
285
263
      <varlistentry>
286
 
        <term><literal>-e</literal>, <literal>--email</literal>
287
 
        <replaceable>address</replaceable></term>
 
264
        <term><option>--email
 
265
        <replaceable>ADDRESS</replaceable></option></term>
 
266
        <term><option>-e
 
267
        <replaceable>ADDRESS</replaceable></option></term>
288
268
        <listitem>
289
269
          <para>
290
270
            Email address of key.  Default is empty.
293
273
      </varlistentry>
294
274
 
295
275
      <varlistentry>
296
 
        <term><literal>-c</literal>, <literal>--comment</literal>
297
 
        <replaceable>comment</replaceable></term>
 
276
        <term><option>--comment
 
277
        <replaceable>TEXT</replaceable></option></term>
 
278
        <term><option>-c
 
279
        <replaceable>TEXT</replaceable></option></term>
298
280
        <listitem>
299
281
          <para>
300
282
            Comment field for key.  The default value is
304
286
      </varlistentry>
305
287
 
306
288
      <varlistentry>
307
 
        <term><literal>-x</literal>, <literal>--expire</literal>
308
 
        <replaceable>time</replaceable></term>
 
289
        <term><option>--expire
 
290
        <replaceable>TIME</replaceable></option></term>
 
291
        <term><option>-x
 
292
        <replaceable>TIME</replaceable></option></term>
309
293
        <listitem>
310
294
          <para>
311
295
            Key expire time.  Default is no expiration.  See
316
300
      </varlistentry>
317
301
 
318
302
      <varlistentry>
319
 
        <term><literal>-f</literal>, <literal>--force</literal></term>
 
303
        <term><option>--force</option></term>
 
304
        <term><option>-f</option></term>
320
305
        <listitem>
321
306
          <para>
322
 
            Force overwriting old keys.
 
307
            Force overwriting old key.
323
308
          </para>
324
309
        </listitem>
325
310
      </varlistentry>
326
311
      <varlistentry>
327
 
        <term><literal>-p</literal>, <literal>--password</literal
328
 
        ></term>
 
312
        <term><option>--password</option></term>
 
313
        <term><option>-p</option></term>
329
314
        <listitem>
330
315
          <para>
331
316
            Prompt for a password and encrypt it with the key already
337
322
            >8</manvolnum></citerefentry>.  The host name or the name
338
323
            specified with the <option>--name</option> option is used
339
324
            for the section header.  All other options are ignored,
340
 
            and no keys are created.
 
325
            and no key is created.
341
326
          </para>
342
327
        </listitem>
343
328
      </varlistentry>
349
334
    <xi:include href="overview.xml"/>
350
335
    <para>
351
336
      This program is a small utility to generate new OpenPGP keys for
352
 
      new Mandos clients.
 
337
      new Mandos clients, and to generate sections for inclusion in
 
338
      <filename>clients.conf</filename> on the server.
353
339
    </para>
354
340
  </refsect1>
355
341
 
356
342
  <refsect1 id="exit_status">
357
343
    <title>EXIT STATUS</title>
358
344
    <para>
359
 
      The exit status will be 0 if new keys were successfully created,
360
 
      otherwise not.
 
345
      The exit status will be 0 if a new key (or password, if the
 
346
      <option>--password</option> option was used) was successfully
 
347
      created, otherwise not.
361
348
    </para>
362
349
  </refsect1>
363
350
  
365
352
    <title>ENVIRONMENT</title>
366
353
    <variablelist>
367
354
      <varlistentry>
368
 
        <term><varname>TMPDIR</varname></term>
 
355
        <term><envar>TMPDIR</envar></term>
369
356
        <listitem>
370
357
          <para>
371
358
            If set, temporary files will be created here. See
429
416
        Normal invocation needs no options:
430
417
      </para>
431
418
      <para>
432
 
        <userinput>mandos-keygen</userinput>
 
419
        <userinput>&COMMANDNAME;</userinput>
433
420
      </para>
434
421
    </informalexample>
435
422
    <informalexample>
436
423
      <para>
437
 
        Create keys in another directory and of another type.  Force
 
424
        Create key in another directory and of another type.  Force
438
425
        overwriting old key files:
439
426
      </para>
440
427
      <para>
441
428
 
442
429
<!-- do not wrap this line -->
443
 
<userinput>mandos-keygen --dir ~/keydir --type RSA --force</userinput>
 
430
<userinput>&COMMANDNAME; --dir ~/keydir --type RSA --force</userinput>
 
431
 
 
432
      </para>
 
433
    </informalexample>
 
434
    <informalexample>
 
435
      <para>
 
436
        Prompt for a password, encrypt it with the key in
 
437
        <filename>/etc/mandos</filename> and output a section suitable
 
438
        for <filename>clients.conf</filename>.
 
439
      </para>
 
440
      <para>
 
441
        <userinput>&COMMANDNAME; --password</userinput>
 
442
      </para>
 
443
    </informalexample>
 
444
    <informalexample>
 
445
      <para>
 
446
        Prompt for a password, encrypt it with the key in the
 
447
        <filename>client-key</filename> directory and output a section
 
448
        suitable for <filename>clients.conf</filename>.
 
449
      </para>
 
450
      <para>
 
451
 
 
452
<!-- do not wrap this line -->
 
453
<userinput>&COMMANDNAME; --password --dir client-key</userinput>
444
454
 
445
455
      </para>
446
456
    </informalexample>
451
461
    <para>
452
462
      The <option>--type</option>, <option>--length</option>,
453
463
      <option>--subtype</option>, and <option>--sublength</option>
454
 
      options can be used to create keys of insufficient security.  If
455
 
      in doubt, leave them to the default values.
 
464
      options can be used to create keys of low security.  If in
 
465
      doubt, leave them to the default values.
456
466
    </para>
457
467
    <para>
458
 
      The key expire time is not guaranteed to be honored by
459
 
      <citerefentry><refentrytitle>mandos</refentrytitle>
 
468
      The key expire time is <emphasis>not</emphasis> guaranteed to be
 
469
      honored by <citerefentry><refentrytitle>mandos</refentrytitle>
460
470
      <manvolnum>8</manvolnum></citerefentry>.
461
471
    </para>
462
472
  </refsect1>
464
474
  <refsect1 id="see_also">
465
475
    <title>SEE ALSO</title>
466
476
    <para>
467
 
      <citerefentry><refentrytitle>password-request</refentrytitle>
468
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
 
477
      <citerefentry><refentrytitle>gpg</refentrytitle>
 
478
      <manvolnum>1</manvolnum></citerefentry>,
 
479
      <citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
 
480
      <manvolnum>5</manvolnum></citerefentry>,
469
481
      <citerefentry><refentrytitle>mandos</refentrytitle>
470
482
      <manvolnum>8</manvolnum></citerefentry>,
471
 
      <citerefentry><refentrytitle>gpg</refentrytitle>
472
 
      <manvolnum>1</manvolnum></citerefentry>
 
483
      <citerefentry><refentrytitle>password-request</refentrytitle>
 
484
      <manvolnum>8mandos</manvolnum></citerefentry>
473
485
    </para>
474
486
  </refsect1>
475
487
  
476
488
</refentry>
 
489
<!-- Local Variables: -->
 
490
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
 
491
<!-- time-stamp-end: "[\"']>" -->
 
492
<!-- time-stamp-format: "%:y-%02m-%02d" -->
 
493
<!-- End: -->