1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4
<!ENTITY VERSION "1.0">
5
<!ENTITY COMMANDNAME "mandos-keygen">
6
<!ENTITY TIMESTAMP "2008-09-20">
9
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
11
<title>Mandos Manual</title>
12
<!-- NWalsh’s docbook scripts use this to generate the footer: -->
13
<productname>Mandos</productname>
14
<productnumber>&VERSION;</productnumber>
15
<date>&TIMESTAMP;</date>
18
<firstname>Björn</firstname>
19
<surname>Påhlsson</surname>
21
<email>belorn@fukt.bsnet.se</email>
25
<firstname>Teddy</firstname>
26
<surname>Hogeborn</surname>
28
<email>teddy@fukt.bsnet.se</email>
34
<holder>Teddy Hogeborn</holder>
35
<holder>Björn Påhlsson</holder>
37
<xi:include href="legalnotice.xml"/>
41
<refentrytitle>&COMMANDNAME;</refentrytitle>
42
<manvolnum>8</manvolnum>
46
<refname><command>&COMMANDNAME;</command></refname>
48
Generate key and password for Mandos client and server.
54
<command>&COMMANDNAME;</command>
56
<arg choice="plain"><option>--dir
57
<replaceable>DIRECTORY</replaceable></option></arg>
58
<arg choice="plain"><option>-d
59
<replaceable>DIRECTORY</replaceable></option></arg>
63
<arg choice="plain"><option>--type
64
<replaceable>KEYTYPE</replaceable></option></arg>
65
<arg choice="plain"><option>-t
66
<replaceable>KEYTYPE</replaceable></option></arg>
70
<arg choice="plain"><option>--length
71
<replaceable>BITS</replaceable></option></arg>
72
<arg choice="plain"><option>-l
73
<replaceable>BITS</replaceable></option></arg>
77
<arg choice="plain"><option>--subtype
78
<replaceable>KEYTYPE</replaceable></option></arg>
79
<arg choice="plain"><option>-s
80
<replaceable>KEYTYPE</replaceable></option></arg>
84
<arg choice="plain"><option>--sublength
85
<replaceable>BITS</replaceable></option></arg>
86
<arg choice="plain"><option>-L
87
<replaceable>BITS</replaceable></option></arg>
91
<arg choice="plain"><option>--name
92
<replaceable>NAME</replaceable></option></arg>
93
<arg choice="plain"><option>-n
94
<replaceable>NAME</replaceable></option></arg>
98
<arg choice="plain"><option>--email
99
<replaceable>ADDRESS</replaceable></option></arg>
100
<arg choice="plain"><option>-e
101
<replaceable>ADDRESS</replaceable></option></arg>
105
<arg choice="plain"><option>--comment
106
<replaceable>TEXT</replaceable></option></arg>
107
<arg choice="plain"><option>-c
108
<replaceable>TEXT</replaceable></option></arg>
112
<arg choice="plain"><option>--expire
113
<replaceable>TIME</replaceable></option></arg>
114
<arg choice="plain"><option>-x
115
<replaceable>TIME</replaceable></option></arg>
118
<arg><option>--force</option></arg>
121
<command>&COMMANDNAME;</command>
123
<arg choice="plain"><option>--password</option></arg>
124
<arg choice="plain"><option>-p</option></arg>
125
<arg choice="plain"><option>--passfile
126
<replaceable>FILE</replaceable></option></arg>
127
<arg choice="plain"><option>-F</option>
128
<replaceable>FILE</replaceable></arg>
132
<arg choice="plain"><option>--dir
133
<replaceable>DIRECTORY</replaceable></option></arg>
134
<arg choice="plain"><option>-d
135
<replaceable>DIRECTORY</replaceable></option></arg>
139
<arg choice="plain"><option>--name
140
<replaceable>NAME</replaceable></option></arg>
141
<arg choice="plain"><option>-n
142
<replaceable>NAME</replaceable></option></arg>
146
<command>&COMMANDNAME;</command>
148
<arg choice="plain"><option>--help</option></arg>
149
<arg choice="plain"><option>-h</option></arg>
153
<command>&COMMANDNAME;</command>
155
<arg choice="plain"><option>--version</option></arg>
156
<arg choice="plain"><option>-v</option></arg>
161
<refsect1 id="description">
162
<title>DESCRIPTION</title>
164
<command>&COMMANDNAME;</command> is a program to generate the
166
<citerefentry><refentrytitle>mandos-client</refentrytitle>
167
<manvolnum>8mandos</manvolnum></citerefentry>. The key is
168
normally written to /etc/mandos for later installation into the
169
initrd image, but this, and most other things, can be changed
170
with command line options.
173
This program can also be used with the
174
<option>--password</option> or <option>--passfile</option>
175
options to generate a ready-made section for
176
<filename>clients.conf</filename> (see
177
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
178
<manvolnum>5</manvolnum></citerefentry>).
182
<refsect1 id="purpose">
183
<title>PURPOSE</title>
185
The purpose of this is to enable <emphasis>remote and unattended
186
rebooting</emphasis> of client host computer with an
187
<emphasis>encrypted root file system</emphasis>. See <xref
188
linkend="overview"/> for details.
192
<refsect1 id="options">
193
<title>OPTIONS</title>
197
<term><option>--help</option></term>
198
<term><option>-h</option></term>
201
Show a help message and exit
208
<replaceable>DIRECTORY</replaceable></option></term>
210
<replaceable>DIRECTORY</replaceable></option></term>
213
Target directory for key files. Default is
214
<filename>/etc/mandos</filename>.
221
<replaceable>TYPE</replaceable></option></term>
223
<replaceable>TYPE</replaceable></option></term>
226
Key type. Default is <quote>DSA</quote>.
232
<term><option>--length
233
<replaceable>BITS</replaceable></option></term>
235
<replaceable>BITS</replaceable></option></term>
238
Key length in bits. Default is 2048.
244
<term><option>--subtype
245
<replaceable>KEYTYPE</replaceable></option></term>
247
<replaceable>KEYTYPE</replaceable></option></term>
250
Subkey type. Default is <quote>ELG-E</quote> (Elgamal
257
<term><option>--sublength
258
<replaceable>BITS</replaceable></option></term>
260
<replaceable>BITS</replaceable></option></term>
263
Subkey length in bits. Default is 2048.
269
<term><option>--email
270
<replaceable>ADDRESS</replaceable></option></term>
272
<replaceable>ADDRESS</replaceable></option></term>
275
Email address of key. Default is empty.
281
<term><option>--comment
282
<replaceable>TEXT</replaceable></option></term>
284
<replaceable>TEXT</replaceable></option></term>
287
Comment field for key. The default value is
288
<quote><literal>Mandos client key</literal></quote>.
294
<term><option>--expire
295
<replaceable>TIME</replaceable></option></term>
297
<replaceable>TIME</replaceable></option></term>
300
Key expire time. Default is no expiration. See
301
<citerefentry><refentrytitle>gpg</refentrytitle>
302
<manvolnum>1</manvolnum></citerefentry> for syntax.
308
<term><option>--force</option></term>
309
<term><option>-f</option></term>
312
Force overwriting old key.
317
<term><option>--password</option></term>
318
<term><option>-p</option></term>
321
Prompt for a password and encrypt it with the key already
322
present in either <filename>/etc/mandos</filename> or the
323
directory specified with the <option>--dir</option>
324
option. Outputs, on standard output, a section suitable
325
for inclusion in <citerefentry><refentrytitle
326
>mandos-clients.conf</refentrytitle><manvolnum
327
>8</manvolnum></citerefentry>. The host name or the name
328
specified with the <option>--name</option> option is used
329
for the section header. All other options are ignored,
330
and no key is created.
335
<term><option>--passfile
336
<replaceable>FILE</replaceable></option></term>
338
<replaceable>FILE</replaceable></option></term>
341
The same as <option>--password</option>, but read from
342
<replaceable>FILE</replaceable>, not the terminal.
349
<refsect1 id="overview">
350
<title>OVERVIEW</title>
351
<xi:include href="overview.xml"/>
353
This program is a small utility to generate new OpenPGP keys for
354
new Mandos clients, and to generate sections for inclusion in
355
<filename>clients.conf</filename> on the server.
359
<refsect1 id="exit_status">
360
<title>EXIT STATUS</title>
362
The exit status will be 0 if a new key (or password, if the
363
<option>--password</option> option was used) was successfully
364
created, otherwise not.
368
<refsect1 id="environment">
369
<title>ENVIRONMENT</title>
372
<term><envar>TMPDIR</envar></term>
375
If set, temporary files will be created here. See
376
<citerefentry><refentrytitle>mktemp</refentrytitle>
377
<manvolnum>1</manvolnum></citerefentry>.
387
Use the <option>--dir</option> option to change where
388
<command>&COMMANDNAME;</command> will write the key files. The
389
default file names are shown here.
393
<term><filename>/etc/mandos/seckey.txt</filename></term>
396
OpenPGP secret key file which will be created or
402
<term><filename>/etc/mandos/pubkey.txt</filename></term>
405
OpenPGP public key file which will be created or
411
<term><filename>/tmp</filename></term>
414
Temporary files will be written here if
415
<varname>TMPDIR</varname> is not set.
422
<!-- <refsect1 id="bugs"> -->
423
<!-- <title>BUGS</title> -->
428
<refsect1 id="example">
429
<title>EXAMPLE</title>
432
Normal invocation needs no options:
435
<userinput>&COMMANDNAME;</userinput>
440
Create key in another directory and of another type. Force
441
overwriting old key files:
445
<!-- do not wrap this line -->
446
<userinput>&COMMANDNAME; --dir ~/keydir --type RSA --force</userinput>
452
Prompt for a password, encrypt it with the key in
453
<filename>/etc/mandos</filename> and output a section suitable
454
for <filename>clients.conf</filename>.
457
<userinput>&COMMANDNAME; --password</userinput>
462
Prompt for a password, encrypt it with the key in the
463
<filename>client-key</filename> directory and output a section
464
suitable for <filename>clients.conf</filename>.
468
<!-- do not wrap this line -->
469
<userinput>&COMMANDNAME; --password --dir client-key</userinput>
475
<refsect1 id="security">
476
<title>SECURITY</title>
478
The <option>--type</option>, <option>--length</option>,
479
<option>--subtype</option>, and <option>--sublength</option>
480
options can be used to create keys of low security. If in
481
doubt, leave them to the default values.
484
The key expire time is <emphasis>not</emphasis> guaranteed to be
485
honored by <citerefentry><refentrytitle>mandos</refentrytitle>
486
<manvolnum>8</manvolnum></citerefentry>.
490
<refsect1 id="see_also">
491
<title>SEE ALSO</title>
493
<citerefentry><refentrytitle>gpg</refentrytitle>
494
<manvolnum>1</manvolnum></citerefentry>,
495
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
496
<manvolnum>5</manvolnum></citerefentry>,
497
<citerefentry><refentrytitle>mandos</refentrytitle>
498
<manvolnum>8</manvolnum></citerefentry>,
499
<citerefentry><refentrytitle>mandos-client</refentrytitle>
500
<manvolnum>8mandos</manvolnum></citerefentry>
505
<!-- Local Variables: -->
506
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
507
<!-- time-stamp-end: "[\"']>" -->
508
<!-- time-stamp-format: "%:y-%02m-%02d" -->