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 "2018-02-08">
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
45
<holder>Teddy Hogeborn</holder>
35
46
<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/"/>.
48
<xi:include href="legalnotice.xml"/>
63
52
<refentrytitle>&COMMANDNAME;</refentrytitle>
64
53
<manvolnum>8</manvolnum>
68
57
<refname><command>&COMMANDNAME;</command></refname>
70
Generate keys for <citerefentry><refentrytitle>password-request
71
</refentrytitle><manvolnum>8mandos</manvolnum></citerefentry>
59
Generate key and password for Mandos client and server.
77
65
<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>
67
<arg choice="plain"><option>--dir
68
<replaceable>DIRECTORY</replaceable></option></arg>
69
<arg choice="plain"><option>-d
70
<replaceable>DIRECTORY</replaceable></option></arg>
74
<arg choice="plain"><option>--type
75
<replaceable>KEYTYPE</replaceable></option></arg>
76
<arg choice="plain"><option>-t
77
<replaceable>KEYTYPE</replaceable></option></arg>
81
<arg choice="plain"><option>--length
82
<replaceable>BITS</replaceable></option></arg>
83
<arg choice="plain"><option>-l
84
<replaceable>BITS</replaceable></option></arg>
88
<arg choice="plain"><option>--subtype
89
<replaceable>KEYTYPE</replaceable></option></arg>
90
<arg choice="plain"><option>-s
91
<replaceable>KEYTYPE</replaceable></option></arg>
95
<arg choice="plain"><option>--sublength
96
<replaceable>BITS</replaceable></option></arg>
97
<arg choice="plain"><option>-L
98
<replaceable>BITS</replaceable></option></arg>
102
<arg choice="plain"><option>--name
103
<replaceable>NAME</replaceable></option></arg>
104
<arg choice="plain"><option>-n
105
<replaceable>NAME</replaceable></option></arg>
109
<arg choice="plain"><option>--email
110
<replaceable>ADDRESS</replaceable></option></arg>
111
<arg choice="plain"><option>-e
112
<replaceable>ADDRESS</replaceable></option></arg>
116
<arg choice="plain"><option>--comment
117
<replaceable>TEXT</replaceable></option></arg>
118
<arg choice="plain"><option>-c
119
<replaceable>TEXT</replaceable></option></arg>
123
<arg choice="plain"><option>--expire
124
<replaceable>TIME</replaceable></option></arg>
125
<arg choice="plain"><option>-x
126
<replaceable>TIME</replaceable></option></arg>
115
130
<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
131
<arg choice="plain"><option>-f</option></arg>
161
135
<command>&COMMANDNAME;</command>
162
136
<group choice="req">
137
<arg choice="plain"><option>--password</option></arg>
163
138
<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>
139
<arg choice="plain"><option>--passfile
140
<replaceable>FILE</replaceable></option></arg>
141
<arg choice="plain"><option>-F</option>
142
<replaceable>FILE</replaceable></arg>
146
<arg choice="plain"><option>--dir
147
<replaceable>DIRECTORY</replaceable></option></arg>
148
<arg choice="plain"><option>-d
149
<replaceable>DIRECTORY</replaceable></option></arg>
153
<arg choice="plain"><option>--name
154
<replaceable>NAME</replaceable></option></arg>
155
<arg choice="plain"><option>-n
156
<replaceable>NAME</replaceable></option></arg>
159
<arg choice="plain"><option>--no-ssh</option></arg>
160
<arg choice="plain"><option>-S</option></arg>
176
164
<command>&COMMANDNAME;</command>
177
165
<group choice="req">
166
<arg choice="plain"><option>--help</option></arg>
178
167
<arg choice="plain"><option>-h</option></arg>
179
<arg choice="plain"><option>--help</option></arg>
183
171
<command>&COMMANDNAME;</command>
184
172
<group choice="req">
173
<arg choice="plain"><option>--version</option></arg>
185
174
<arg choice="plain"><option>-v</option></arg>
186
<arg choice="plain"><option>--version</option></arg>
189
177
</refsynopsisdiv>
191
179
<refsect1 id="description">
192
180
<title>DESCRIPTION</title>
194
182
<command>&COMMANDNAME;</command> is a program to generate the
196
<citerefentry><refentrytitle>password-request</refentrytitle>
197
<manvolnum>8mandos</manvolnum></citerefentry>. The keys are
184
<citerefentry><refentrytitle>mandos-client</refentrytitle>
185
<manvolnum>8mandos</manvolnum></citerefentry>. The key is
198
186
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.
187
initrd image, but this, and most other things, can be changed
188
with command line options.
203
It can also be used to generate ready-made sections for
191
This program can also be used with the
192
<option>--password</option> or <option>--passfile</option>
193
options to generate a ready-made section for
194
<filename>clients.conf</filename> (see
204
195
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
205
<manvolnum>5</manvolnum></citerefentry> using the
206
<option>--password</option> option.
196
<manvolnum>5</manvolnum></citerefentry>).
210
200
<refsect1 id="purpose">
211
201
<title>PURPOSE</title>
214
203
The purpose of this is to enable <emphasis>remote and unattended
215
204
rebooting</emphasis> of client host computer with an
216
205
<emphasis>encrypted root file system</emphasis>. See <xref
217
206
linkend="overview"/> for details.
222
210
<refsect1 id="options">
223
211
<title>OPTIONS</title>
227
<term><literal>-h</literal>, <literal>--help</literal></term>
215
<term><option>--help</option></term>
216
<term><option>-h</option></term>
230
219
Show a help message and exit
236
<term><literal>-d</literal>, <literal>--dir
237
<replaceable>directory</replaceable></literal></term>
226
<replaceable>DIRECTORY</replaceable></option></term>
228
<replaceable>DIRECTORY</replaceable></option></term>
240
231
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
232
<filename class="directory">/etc/mandos</filename>.
239
<replaceable>TYPE</replaceable></option></term>
241
<replaceable>TYPE</replaceable></option></term>
244
Key type. Default is <quote>RSA</quote>.
250
<term><option>--length
251
<replaceable>BITS</replaceable></option></term>
253
<replaceable>BITS</replaceable></option></term>
256
Key length in bits. Default is 4096.
262
<term><option>--subtype
263
<replaceable>KEYTYPE</replaceable></option></term>
265
<replaceable>KEYTYPE</replaceable></option></term>
268
Subkey type. Default is <quote>RSA</quote> (Elgamal
272
269
encryption-only).
278
<term><literal>-L</literal>, <literal>--sublength
279
<replaceable>bits</replaceable></literal></term>
275
<term><option>--sublength
276
<replaceable>BITS</replaceable></option></term>
278
<replaceable>BITS</replaceable></option></term>
282
Subkey length in bits. Default is 2048.
281
Subkey length in bits. Default is 4096.
288
<term><literal>-e</literal>, <literal>--email</literal>
289
<replaceable>address</replaceable></term>
287
<term><option>--email
288
<replaceable>ADDRESS</replaceable></option></term>
290
<replaceable>ADDRESS</replaceable></option></term>
292
293
Email address of key. Default is empty.
298
<term><literal>-c</literal>, <literal>--comment</literal>
299
<replaceable>comment</replaceable></term>
299
<term><option>--comment
300
<replaceable>TEXT</replaceable></option></term>
302
<replaceable>TEXT</replaceable></option></term>
302
Comment field for key. The default value is
303
<quote><literal>Mandos client key</literal></quote>.
305
Comment field for key. Default is empty.
309
<term><literal>-x</literal>, <literal>--expire</literal>
310
<replaceable>time</replaceable></term>
311
<term><option>--expire
312
<replaceable>TIME</replaceable></option></term>
314
<replaceable>TIME</replaceable></option></term>
313
317
Key expire time. Default is no expiration. See
431
464
Normal invocation needs no options:
434
<userinput>mandos-keygen</userinput>
467
<userinput>&COMMANDNAME;</userinput>
436
469
</informalexample>
437
470
<informalexample>
439
Create keys in another directory and of another type. Force
472
Create key in another directory and of another type. Force
440
473
overwriting old key files:
444
477
<!-- do not wrap this line -->
445
<userinput>mandos-keygen --dir ~/keydir --type RSA --force</userinput>
478
<userinput>&COMMANDNAME; --dir ~/keydir --type RSA --force</userinput>
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>.
489
<userinput>&COMMANDNAME; --password</userinput>
494
Prompt for a password, encrypt it with the key in the
495
<filename>client-key</filename> directory and output a section
496
suitable for <filename>clients.conf</filename>.
500
<!-- do not wrap this line -->
501
<userinput>&COMMANDNAME; --password --dir client-key</userinput>
448
504
</informalexample>
451
507
<refsect1 id="security">
452
508
<title>SECURITY</title>
454
510
The <option>--type</option>, <option>--length</option>,
455
511
<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.
512
options can be used to create keys of low security. If in
513
doubt, leave them to the default values.
460
The key expire time is not guaranteed to be honored by
461
<citerefentry><refentrytitle>mandos</refentrytitle>
516
The key expire time is <emphasis>not</emphasis> guaranteed to be
517
honored by <citerefentry><refentrytitle>mandos</refentrytitle>
462
518
<manvolnum>8</manvolnum></citerefentry>.
466
522
<refsect1 id="see_also">
467
523
<title>SEE ALSO</title>
469
<citerefentry><refentrytitle>password-request</refentrytitle>
525
<citerefentry><refentrytitle>intro</refentrytitle>
470
526
<manvolnum>8mandos</manvolnum></citerefentry>,
527
<citerefentry><refentrytitle>gpg</refentrytitle>
528
<manvolnum>1</manvolnum></citerefentry>,
529
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
530
<manvolnum>5</manvolnum></citerefentry>,
471
531
<citerefentry><refentrytitle>mandos</refentrytitle>
472
532
<manvolnum>8</manvolnum></citerefentry>,
473
<citerefentry><refentrytitle>gpg</refentrytitle>
533
<citerefentry><refentrytitle>mandos-client</refentrytitle>
534
<manvolnum>8mandos</manvolnum></citerefentry>,
535
<citerefentry><refentrytitle>ssh-keyscan</refentrytitle>
474
536
<manvolnum>1</manvolnum></citerefentry>