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 COMMANDNAME "mandos-ctl">
5
<!ENTITY TIMESTAMP "2011-10-03">
6
<!ENTITY % common SYSTEM "common.ent">
10
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
12
<title>Mandos Manual</title>
13
<!-- NWalsh’s docbook scripts use this to generate the footer: -->
14
<productname>Mandos</productname>
15
<productnumber>&version;</productnumber>
16
<date>&TIMESTAMP;</date>
19
<firstname>Björn</firstname>
20
<surname>Påhlsson</surname>
22
<email>belorn@recompile.se</email>
26
<firstname>Teddy</firstname>
27
<surname>Hogeborn</surname>
29
<email>teddy@recompile.se</email>
36
<holder>Teddy Hogeborn</holder>
37
<holder>Björn Påhlsson</holder>
39
<xi:include href="legalnotice.xml"/>
43
<refentrytitle>&COMMANDNAME;</refentrytitle>
44
<manvolnum>8</manvolnum>
48
<refname><command>&COMMANDNAME;</command></refname>
50
Control the operation of the Mandos server
56
<command>&COMMANDNAME;</command>
58
<arg choice="plain"><option>--enable</option></arg>
59
<arg choice="plain"><option>-e</option></arg>
61
<arg choice="plain"><option>--disable</option></arg>
62
<arg choice="plain"><option>-d</option></arg>
66
<arg choice="plain"><option>--bump-timeout</option></arg>
67
<arg choice="plain"><option>-b</option></arg>
71
<arg choice="plain"><option>--start-checker</option></arg>
75
<arg choice="plain"><option>--stop-checker</option></arg>
79
<arg choice="plain"><option>--remove</option></arg>
80
<arg choice="plain"><option>-r</option></arg>
84
<arg choice="plain"><option>--checker
85
<replaceable>COMMAND</replaceable></option></arg>
86
<arg choice="plain"><option>-c
87
<replaceable>COMMAND</replaceable></option></arg>
91
<arg choice="plain"><option>--timeout
92
<replaceable>TIME</replaceable></option></arg>
93
<arg choice="plain"><option>-t
94
<replaceable>TIME</replaceable></option></arg>
98
<arg choice="plain"><option>--extended-timeout
99
<replaceable>TIME</replaceable></option></arg>
103
<arg choice="plain"><option>--interval
104
<replaceable>TIME</replaceable></option></arg>
105
<arg choice="plain"><option>-i
106
<replaceable>TIME</replaceable></option></arg>
110
<arg choice="plain"><option>--approve-by-default</option
113
<arg choice="plain"><option>--deny-by-default</option></arg>
117
<arg choice="plain"><option>--approval-delay
118
<replaceable>TIME</replaceable></option></arg>
122
<arg choice="plain"><option>--approval-duration
123
<replaceable>TIME</replaceable></option></arg>
127
<arg choice="plain"><option>--interval
128
<replaceable>TIME</replaceable></option></arg>
129
<arg choice="plain"><option>-i
130
<replaceable>TIME</replaceable></option></arg>
134
<arg choice="plain"><option>--host
135
<replaceable>STRING</replaceable></option></arg>
136
<arg choice="plain"><option>-H
137
<replaceable>STRING</replaceable></option></arg>
141
<arg choice="plain"><option>--secret
142
<replaceable>FILENAME</replaceable></option></arg>
143
<arg choice="plain"><option>-s
144
<replaceable>FILENAME</replaceable></option></arg>
148
<arg choice="plain"><option>--approve</option></arg>
149
<arg choice="plain"><option>-A</option></arg>
151
<arg choice="plain"><option>--deny</option></arg>
152
<arg choice="plain"><option>-D</option></arg>
156
<arg choice="plain"><option>--all</option></arg>
157
<arg choice="plain"><option>-a</option></arg>
158
<arg rep='repeat' choice='plain'>
159
<replaceable>CLIENT</replaceable>
164
<command>&COMMANDNAME;</command>
166
<arg choice="plain"><option>--verbose</option></arg>
167
<arg choice="plain"><option>-v</option></arg>
170
<arg rep='repeat' choice='plain'>
171
<replaceable>CLIENT</replaceable>
176
<command>&COMMANDNAME;</command>
178
<arg choice="plain"><option>--is-enabled</option></arg>
179
<arg choice="plain"><option>-V</option></arg>
181
<arg choice='plain'><replaceable>CLIENT</replaceable></arg>
184
<command>&COMMANDNAME;</command>
186
<arg choice="plain"><option>--help</option></arg>
187
<arg choice="plain"><option>-h</option></arg>
191
<command>&COMMANDNAME;</command>
193
<arg choice="plain"><option>--version</option></arg>
194
<arg choice="plain"><option>-v</option></arg>
199
<refsect1 id="description">
200
<title>DESCRIPTION</title>
202
<command>&COMMANDNAME;</command> is a program to control the
203
operation of the Mandos server <citerefentry><refentrytitle
204
>mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
207
This program can be used to change client settings, approve or
208
deny client requests, and to remove clients from the server.
212
<refsect1 id="purpose">
213
<title>PURPOSE</title>
215
The purpose of this is to enable <emphasis>remote and unattended
216
rebooting</emphasis> of client host computer with an
217
<emphasis>encrypted root file system</emphasis>. See <xref
218
linkend="overview"/> for details.
222
<refsect1 id="options">
223
<title>OPTIONS</title>
227
<term><option>--help</option></term>
228
<term><option>-h</option></term>
231
Show a help message and exit
237
<term><option>--enable</option></term>
238
<term><option>-e</option></term>
241
Enable client(s). An enabled client will be eligble to
248
<term><option>--disable</option></term>
249
<term><option>-d</option></term>
252
Disable client(s). A disabled client will not be eligble
253
to receive its secret, and no checkers will be started for
260
<term><option>--bump-timeout</option></term>
263
Bump the timeout of the specified client(s), just as if a
264
checker had completed successfully for it/them.
270
<term><option>--start-checker</option></term>
273
Start a new checker now for the specified client(s).
279
<term><option>--stop-checker</option></term>
282
Stop any running checker for the specified client(s).
288
<term><option>--remove</option></term>
289
<term><option>-r</option></term>
292
Remove the specified client(s) from the server.
298
<term><option>--checker
299
<replaceable>COMMAND</replaceable></option></term>
301
<replaceable>COMMAND</replaceable></option></term>
304
Set the <varname>checker</varname> option of the specified
305
client(s); see <citerefentry><refentrytitle
306
>mandos-clients.conf</refentrytitle><manvolnum
307
>5</manvolnum></citerefentry>.
313
<term><option>--timeout
314
<replaceable>TIME</replaceable></option></term>
316
<replaceable>TIME</replaceable></option></term>
319
Set the <varname>timeout</varname> option of the specified
320
client(s); see <citerefentry><refentrytitle
321
>mandos-clients.conf</refentrytitle><manvolnum
322
>5</manvolnum></citerefentry>.
328
<term><option>--extended-timeout
329
<replaceable>TIME</replaceable></option></term>
332
Set the <varname>extended_timeout</varname> option of the
333
specified client(s); see <citerefentry><refentrytitle
334
>mandos-clients.conf</refentrytitle><manvolnum
335
>5</manvolnum></citerefentry>.
341
<term><option>--interval
342
<replaceable>TIME</replaceable></option></term>
344
<replaceable>TIME</replaceable></option></term>
347
Set the <varname>interval</varname> option of the
348
specified client(s); see <citerefentry><refentrytitle
349
>mandos-clients.conf</refentrytitle><manvolnum
350
>5</manvolnum></citerefentry>.
356
<term><option>--approve-by-default</option></term>
357
<term><option>--deny-by-default</option></term>
360
Set the <varname>approved_by_default</varname> option of
361
the specified client(s) to <literal>True</literal> or
362
<literal>False</literal>, respectively; see
363
<citerefentry><refentrytitle
364
>mandos-clients.conf</refentrytitle><manvolnum
365
>5</manvolnum></citerefentry>.
371
<term><option>--approval-delay
372
<replaceable>TIME</replaceable></option></term>
375
Set the <varname>approval_delay</varname> option of the
376
specified client(s); see <citerefentry><refentrytitle
377
>mandos-clients.conf</refentrytitle><manvolnum
378
>5</manvolnum></citerefentry>.
384
<term><option>--approval-duration
385
<replaceable>TIME</replaceable></option></term>
388
Set the <varname>approval_duration</varname> option of the
389
specified client(s); see <citerefentry><refentrytitle
390
>mandos-clients.conf</refentrytitle><manvolnum
391
>5</manvolnum></citerefentry>.
398
<replaceable>STRING</replaceable></option></term>
400
<replaceable>STRING</replaceable></option></term>
403
Set the <varname>host</varname> option of the specified
404
client(s); see <citerefentry><refentrytitle
405
>mandos-clients.conf</refentrytitle><manvolnum
406
>5</manvolnum></citerefentry>.
412
<term><option>--secret
413
<replaceable>FILENAME</replaceable></option></term>
415
<replaceable>FILENAME</replaceable></option></term>
418
Set the <varname>secfile</varname> option of the specified
419
client(s); see <citerefentry><refentrytitle
420
>mandos-clients.conf</refentrytitle><manvolnum
421
>5</manvolnum></citerefentry>.
427
<term><option>--approve</option></term>
428
<term><option>-A</option></term>
431
Approve client(s) if currently waiting for approval.
437
<term><option>--deny</option></term>
438
<term><option>-D</option></term>
441
Deny client(s) if currently waiting for approval.
447
<term><option>--all</option></term>
448
<term><option>-a</option></term>
451
Make the client-modifying options modify <emphasis
452
>all</emphasis> clients.
458
<term><option>--verbose</option></term>
459
<term><option>-v</option></term>
462
Show all client settings, not just a subset.
468
<term><option>--is-enabled</option></term>
469
<term><option>-V</option></term>
472
Check if a single client is enabled or not, and exit with
473
a successful exit status only if the client is enabled.
481
<refsect1 id="overview">
482
<title>OVERVIEW</title>
483
<xi:include href="overview.xml"/>
485
This program is a small utility to generate new OpenPGP keys for
486
new Mandos clients, and to generate sections for inclusion in
487
<filename>clients.conf</filename> on the server.
491
<refsect1 id="exit_status">
492
<title>EXIT STATUS</title>
494
If the <option>--is-enabled</option> option is used, the exit
495
status will be 0 only if the specified client is enabled.
499
<!-- <refsect1 id="bugs"> -->
500
<!-- <title>BUGS</title> -->
505
<refsect1 id="example">
506
<title>EXAMPLE</title>
512
<userinput>&COMMANDNAME;</userinput>
518
To list <emphasis>all</emphasis> settings for the clients
519
named <quote>foo1.example.org</quote> and <quote
520
>foo2.example.org</quote>:
524
<!-- do not wrap this line -->
525
<userinput>&COMMANDNAME; --verbose foo1.example.org foo2.example.org</userinput>
532
To enable all clients:
535
<userinput>&COMMANDNAME; --enable --all</userinput>
541
To change timeout and interval value for the clients
542
named <quote>foo1.example.org</quote> and <quote
543
>foo2.example.org</quote>:
547
<!-- do not wrap this line -->
548
<userinput>&COMMANDNAME; --timeout="5m" --interval="1m" foo1.example.org foo2.example.org</userinput>
555
To approve all clients currently waiting for it:
558
<userinput>&COMMANDNAME; --approve --all</userinput>
563
<refsect1 id="security">
564
<title>SECURITY</title>
566
This program must be permitted to access the Mandos server via
567
the D-Bus interface. This normally requires the root user, but
568
could be configured otherwise by reconfiguring the D-Bus server.
572
<refsect1 id="see_also">
573
<title>SEE ALSO</title>
575
<citerefentry><refentrytitle>intro</refentrytitle>
576
<manvolnum>8mandos</manvolnum></citerefentry>,
577
<citerefentry><refentrytitle>mandos</refentrytitle>
578
<manvolnum>8</manvolnum></citerefentry>,
579
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
580
<manvolnum>5</manvolnum></citerefentry>,
581
<citerefentry><refentrytitle>mandos-monitor</refentrytitle>
582
<manvolnum>8</manvolnum></citerefentry>
587
<!-- Local Variables: -->
588
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
589
<!-- time-stamp-end: "[\"']>" -->
590
<!-- time-stamp-format: "%:y-%02m-%02d" -->