1
1
<?xml version="1.0" encoding="UTF-8"?>
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
<!ENTITY VERSION "1.0">
5
4
<!ENTITY COMMANDNAME "mandos-keygen">
6
<!ENTITY TIMESTAMP "2008-08-29">
5
<!ENTITY TIMESTAMP "2017-02-23">
6
<!ENTITY % common SYSTEM "common.ent">
9
10
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
11
<title>&COMMANDNAME;</title>
12
<title>Mandos Manual</title>
12
13
<!-- NWalsh’s docbook scripts use this to generate the footer: -->
13
<productname>&COMMANDNAME;</productname>
14
<productnumber>&VERSION;</productnumber>
14
<productname>Mandos</productname>
15
<productnumber>&version;</productnumber>
15
16
<date>&TIMESTAMP;</date>
18
19
<firstname>Björn</firstname>
19
20
<surname>Påhlsson</surname>
21
<email>belorn@fukt.bsnet.se</email>
22
<email>belorn@recompile.se</email>
25
26
<firstname>Teddy</firstname>
26
27
<surname>Hogeborn</surname>
28
<email>teddy@fukt.bsnet.se</email>
29
<email>teddy@recompile.se</email>
34
44
<holder>Teddy Hogeborn</holder>
35
45
<holder>Björn Påhlsson</holder>
39
This manual page is free software: you can redistribute it
40
and/or modify it under the terms of the GNU General Public
41
License as published by the Free Software Foundation,
42
either version 3 of the License, or (at your option) any
47
This manual page is distributed in the hope that it will
48
be useful, but WITHOUT ANY WARRANTY; without even the
49
implied warranty of MERCHANTABILITY or FITNESS FOR A
50
PARTICULAR PURPOSE. See the GNU General Public License
55
You should have received a copy of the GNU General Public
56
License along with this program; If not, see
57
<ulink url="http://www.gnu.org/licenses/"/>.
47
<xi:include href="legalnotice.xml"/>
63
51
<refentrytitle>&COMMANDNAME;</refentrytitle>
64
52
<manvolnum>8</manvolnum>
68
56
<refname><command>&COMMANDNAME;</command></refname>
70
Generate keys for <citerefentry><refentrytitle>password-request
71
</refentrytitle><manvolnum>8mandos</manvolnum></citerefentry>
58
Generate key and password for Mandos client and server.
77
64
<command>&COMMANDNAME;</command>
79
<arg choice="plain"><option>--dir</option>
80
<replaceable>directory</replaceable></arg>
83
<arg choice="plain"><option>--type</option>
84
<replaceable>type</replaceable></arg>
87
<arg choice="plain"><option>--length</option>
88
<replaceable>bits</replaceable></arg>
91
<arg choice="plain"><option>--subtype</option>
92
<replaceable>type</replaceable></arg>
95
<arg choice="plain"><option>--sublength</option>
96
<replaceable>bits</replaceable></arg>
99
<arg choice="plain"><option>--name</option>
100
<replaceable>NAME</replaceable></arg>
103
<arg choice="plain"><option>--email</option>
104
<replaceable>EMAIL</replaceable></arg>
107
<arg choice="plain"><option>--comment</option>
108
<replaceable>COMMENT</replaceable></arg>
111
<arg choice="plain"><option>--expire</option>
112
<replaceable>TIME</replaceable></arg>
66
<arg choice="plain"><option>--dir
67
<replaceable>DIRECTORY</replaceable></option></arg>
68
<arg choice="plain"><option>-d
69
<replaceable>DIRECTORY</replaceable></option></arg>
73
<arg choice="plain"><option>--type
74
<replaceable>KEYTYPE</replaceable></option></arg>
75
<arg choice="plain"><option>-t
76
<replaceable>KEYTYPE</replaceable></option></arg>
80
<arg choice="plain"><option>--length
81
<replaceable>BITS</replaceable></option></arg>
82
<arg choice="plain"><option>-l
83
<replaceable>BITS</replaceable></option></arg>
87
<arg choice="plain"><option>--subtype
88
<replaceable>KEYTYPE</replaceable></option></arg>
89
<arg choice="plain"><option>-s
90
<replaceable>KEYTYPE</replaceable></option></arg>
94
<arg choice="plain"><option>--sublength
95
<replaceable>BITS</replaceable></option></arg>
96
<arg choice="plain"><option>-L
97
<replaceable>BITS</replaceable></option></arg>
101
<arg choice="plain"><option>--name
102
<replaceable>NAME</replaceable></option></arg>
103
<arg choice="plain"><option>-n
104
<replaceable>NAME</replaceable></option></arg>
108
<arg choice="plain"><option>--email
109
<replaceable>ADDRESS</replaceable></option></arg>
110
<arg choice="plain"><option>-e
111
<replaceable>ADDRESS</replaceable></option></arg>
115
<arg choice="plain"><option>--comment
116
<replaceable>TEXT</replaceable></option></arg>
117
<arg choice="plain"><option>-c
118
<replaceable>TEXT</replaceable></option></arg>
122
<arg choice="plain"><option>--expire
123
<replaceable>TIME</replaceable></option></arg>
124
<arg choice="plain"><option>-x
125
<replaceable>TIME</replaceable></option></arg>
115
129
<arg choice="plain"><option>--force</option></arg>
119
<command>&COMMANDNAME;</command>
121
<arg choice="plain"><option>-d</option>
122
<replaceable>directory</replaceable></arg>
125
<arg choice="plain"><option>-t</option>
126
<replaceable>type</replaceable></arg>
129
<arg choice="plain"><option>-l</option>
130
<replaceable>bits</replaceable></arg>
133
<arg choice="plain"><option>-s</option>
134
<replaceable>type</replaceable></arg>
137
<arg choice="plain"><option>-L</option>
138
<replaceable>bits</replaceable></arg>
141
<arg choice="plain"><option>-n</option>
142
<replaceable>NAME</replaceable></arg>
145
<arg choice="plain"><option>-e</option>
146
<replaceable>EMAIL</replaceable></arg>
149
<arg choice="plain"><option>-c</option>
150
<replaceable>COMMENT</replaceable></arg>
153
<arg choice="plain"><option>-x</option>
154
<replaceable>TIME</replaceable></arg>
157
130
<arg choice="plain"><option>-f</option></arg>
161
134
<command>&COMMANDNAME;</command>
162
135
<group choice="req">
136
<arg choice="plain"><option>--password</option></arg>
163
137
<arg choice="plain"><option>-p</option></arg>
164
<arg choice="plain"><option>--password</option></arg>
167
<arg choice="plain"><option>--dir</option>
168
<replaceable>directory</replaceable></arg>
171
<arg choice="plain"><option>--name</option>
172
<replaceable>NAME</replaceable></arg>
138
<arg choice="plain"><option>--passfile
139
<replaceable>FILE</replaceable></option></arg>
140
<arg choice="plain"><option>-F</option>
141
<replaceable>FILE</replaceable></arg>
145
<arg choice="plain"><option>--dir
146
<replaceable>DIRECTORY</replaceable></option></arg>
147
<arg choice="plain"><option>-d
148
<replaceable>DIRECTORY</replaceable></option></arg>
152
<arg choice="plain"><option>--name
153
<replaceable>NAME</replaceable></option></arg>
154
<arg choice="plain"><option>-n
155
<replaceable>NAME</replaceable></option></arg>
158
<arg choice="plain"><option>--no-ssh</option></arg>
159
<arg choice="plain"><option>-S</option></arg>
176
163
<command>&COMMANDNAME;</command>
177
164
<group choice="req">
165
<arg choice="plain"><option>--help</option></arg>
178
166
<arg choice="plain"><option>-h</option></arg>
179
<arg choice="plain"><option>--help</option></arg>
183
170
<command>&COMMANDNAME;</command>
184
171
<group choice="req">
172
<arg choice="plain"><option>--version</option></arg>
185
173
<arg choice="plain"><option>-v</option></arg>
186
<arg choice="plain"><option>--version</option></arg>
189
176
</refsynopsisdiv>
191
178
<refsect1 id="description">
192
179
<title>DESCRIPTION</title>
194
181
<command>&COMMANDNAME;</command> is a program to generate the
196
<citerefentry><refentrytitle>password-request</refentrytitle>
197
<manvolnum>8mandos</manvolnum></citerefentry>. The keys are
183
<citerefentry><refentrytitle>mandos-client</refentrytitle>
184
<manvolnum>8mandos</manvolnum></citerefentry>. The key is
198
185
normally written to /etc/mandos for later installation into the
199
initrd image, but this, like most things, can be changed with
200
command line options.
186
initrd image, but this, and most other things, can be changed
187
with command line options.
203
It can also be used to generate ready-made sections for
190
This program can also be used with the
191
<option>--password</option> or <option>--passfile</option>
192
options to generate a ready-made section for
193
<filename>clients.conf</filename> (see
204
194
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
205
<manvolnum>5</manvolnum></citerefentry> using the
206
<option>--password</option> option.
195
<manvolnum>5</manvolnum></citerefentry>).
210
199
<refsect1 id="purpose">
211
200
<title>PURPOSE</title>
214
202
The purpose of this is to enable <emphasis>remote and unattended
215
203
rebooting</emphasis> of client host computer with an
216
204
<emphasis>encrypted root file system</emphasis>. See <xref
217
205
linkend="overview"/> for details.
222
209
<refsect1 id="options">
223
210
<title>OPTIONS</title>
227
<term><literal>-h</literal>, <literal>--help</literal></term>
214
<term><option>--help</option></term>
215
<term><option>-h</option></term>
230
218
Show a help message and exit
236
<term><literal>-d</literal>, <literal>--dir
237
<replaceable>directory</replaceable></literal></term>
225
<replaceable>DIRECTORY</replaceable></option></term>
227
<replaceable>DIRECTORY</replaceable></option></term>
240
230
Target directory for key files. Default is
241
<filename>/etc/mandos</filename>.
247
<term><literal>-t</literal>, <literal>--type
248
<replaceable>type</replaceable></literal></term>
251
Key type. Default is <quote>DSA</quote>.
257
<term><literal>-l</literal>, <literal>--length
258
<replaceable>bits</replaceable></literal></term>
261
Key length in bits. Default is 2048.
267
<term><literal>-s</literal>, <literal>--subtype
268
<replaceable>type</replaceable></literal></term>
271
Subkey type. Default is <quote>ELG-E</quote> (Elgamal
231
<filename class="directory">/etc/mandos</filename>.
238
<replaceable>TYPE</replaceable></option></term>
240
<replaceable>TYPE</replaceable></option></term>
243
Key type. Default is <quote>RSA</quote>.
249
<term><option>--length
250
<replaceable>BITS</replaceable></option></term>
252
<replaceable>BITS</replaceable></option></term>
255
Key length in bits. Default is 4096.
261
<term><option>--subtype
262
<replaceable>KEYTYPE</replaceable></option></term>
264
<replaceable>KEYTYPE</replaceable></option></term>
267
Subkey type. Default is <quote>RSA</quote> (Elgamal
272
268
encryption-only).
278
<term><literal>-L</literal>, <literal>--sublength
279
<replaceable>bits</replaceable></literal></term>
274
<term><option>--sublength
275
<replaceable>BITS</replaceable></option></term>
277
<replaceable>BITS</replaceable></option></term>
282
Subkey length in bits. Default is 2048.
280
Subkey length in bits. Default is 4096.
288
<term><literal>-e</literal>, <literal>--email</literal>
289
<replaceable>address</replaceable></term>
286
<term><option>--email
287
<replaceable>ADDRESS</replaceable></option></term>
289
<replaceable>ADDRESS</replaceable></option></term>
292
292
Email address of key. Default is empty.
298
<term><literal>-c</literal>, <literal>--comment</literal>
299
<replaceable>comment</replaceable></term>
298
<term><option>--comment
299
<replaceable>TEXT</replaceable></option></term>
301
<replaceable>TEXT</replaceable></option></term>
302
Comment field for key. The default value is
303
<quote><literal>Mandos client key</literal></quote>.
304
Comment field for key. Default is empty.
309
<term><literal>-x</literal>, <literal>--expire</literal>
310
<replaceable>time</replaceable></term>
310
<term><option>--expire
311
<replaceable>TIME</replaceable></option></term>
313
<replaceable>TIME</replaceable></option></term>
313
316
Key expire time. Default is no expiration. See
431
463
Normal invocation needs no options:
434
<userinput>mandos-keygen</userinput>
466
<userinput>&COMMANDNAME;</userinput>
436
468
</informalexample>
437
469
<informalexample>
439
Create keys in another directory and of another type. Force
471
Create key in another directory and of another type. Force
440
472
overwriting old key files:
444
476
<!-- do not wrap this line -->
445
<userinput>mandos-keygen --dir ~/keydir --type RSA --force</userinput>
477
<userinput>&COMMANDNAME; --dir ~/keydir --type RSA --force</userinput>
483
Prompt for a password, encrypt it with the key in <filename
484
class="directory">/etc/mandos</filename> and output a section
485
suitable for <filename>clients.conf</filename>.
488
<userinput>&COMMANDNAME; --password</userinput>
493
Prompt for a password, encrypt it with the key in the
494
<filename>client-key</filename> directory and output a section
495
suitable for <filename>clients.conf</filename>.
499
<!-- do not wrap this line -->
500
<userinput>&COMMANDNAME; --password --dir client-key</userinput>
448
503
</informalexample>
451
506
<refsect1 id="security">
452
507
<title>SECURITY</title>
454
509
The <option>--type</option>, <option>--length</option>,
455
510
<option>--subtype</option>, and <option>--sublength</option>
456
options can be used to create keys of insufficient security. If
457
in doubt, leave them to the default values.
511
options can be used to create keys of low security. If in
512
doubt, leave them to the default values.
460
The key expire time is not guaranteed to be honored by
461
<citerefentry><refentrytitle>mandos</refentrytitle>
515
The key expire time is <emphasis>not</emphasis> guaranteed to be
516
honored by <citerefentry><refentrytitle>mandos</refentrytitle>
462
517
<manvolnum>8</manvolnum></citerefentry>.
466
521
<refsect1 id="see_also">
467
522
<title>SEE ALSO</title>
469
<citerefentry><refentrytitle>password-request</refentrytitle>
524
<citerefentry><refentrytitle>intro</refentrytitle>
470
525
<manvolnum>8mandos</manvolnum></citerefentry>,
526
<citerefentry><refentrytitle>gpg</refentrytitle>
527
<manvolnum>1</manvolnum></citerefentry>,
528
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
529
<manvolnum>5</manvolnum></citerefentry>,
471
530
<citerefentry><refentrytitle>mandos</refentrytitle>
472
531
<manvolnum>8</manvolnum></citerefentry>,
473
<citerefentry><refentrytitle>gpg</refentrytitle>
532
<citerefentry><refentrytitle>mandos-client</refentrytitle>
533
<manvolnum>8mandos</manvolnum></citerefentry>,
534
<citerefentry><refentrytitle>ssh-keyscan</refentrytitle>
474
535
<manvolnum>1</manvolnum></citerefentry>