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 "2012-01-01">
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>
37
<holder>Teddy Hogeborn</holder>
38
<holder>Björn Påhlsson</holder>
40
<xi:include href="legalnotice.xml"/>
44
<refentrytitle>&COMMANDNAME;</refentrytitle>
45
<manvolnum>8</manvolnum>
49
<refname><command>&COMMANDNAME;</command></refname>
51
Control the operation of the Mandos server
57
<command>&COMMANDNAME;</command>
59
<arg choice="plain"><option>--enable</option></arg>
60
<arg choice="plain"><option>-e</option></arg>
62
<arg choice="plain"><option>--disable</option></arg>
63
<arg choice="plain"><option>-d</option></arg>
67
<arg choice="plain"><option>--bump-timeout</option></arg>
68
<arg choice="plain"><option>-b</option></arg>
72
<arg choice="plain"><option>--start-checker</option></arg>
76
<arg choice="plain"><option>--stop-checker</option></arg>
80
<arg choice="plain"><option>--remove</option></arg>
81
<arg choice="plain"><option>-r</option></arg>
85
<arg choice="plain"><option>--checker
86
<replaceable>COMMAND</replaceable></option></arg>
87
<arg choice="plain"><option>-c
88
<replaceable>COMMAND</replaceable></option></arg>
92
<arg choice="plain"><option>--timeout
93
<replaceable>TIME</replaceable></option></arg>
94
<arg choice="plain"><option>-t
95
<replaceable>TIME</replaceable></option></arg>
99
<arg choice="plain"><option>--extended-timeout
100
<replaceable>TIME</replaceable></option></arg>
104
<arg choice="plain"><option>--interval
105
<replaceable>TIME</replaceable></option></arg>
106
<arg choice="plain"><option>-i
107
<replaceable>TIME</replaceable></option></arg>
111
<arg choice="plain"><option>--approve-by-default</option
114
<arg choice="plain"><option>--deny-by-default</option></arg>
118
<arg choice="plain"><option>--approval-delay
119
<replaceable>TIME</replaceable></option></arg>
123
<arg choice="plain"><option>--approval-duration
124
<replaceable>TIME</replaceable></option></arg>
128
<arg choice="plain"><option>--interval
129
<replaceable>TIME</replaceable></option></arg>
130
<arg choice="plain"><option>-i
131
<replaceable>TIME</replaceable></option></arg>
135
<arg choice="plain"><option>--host
136
<replaceable>STRING</replaceable></option></arg>
137
<arg choice="plain"><option>-H
138
<replaceable>STRING</replaceable></option></arg>
142
<arg choice="plain"><option>--secret
143
<replaceable>FILENAME</replaceable></option></arg>
144
<arg choice="plain"><option>-s
145
<replaceable>FILENAME</replaceable></option></arg>
149
<arg choice="plain"><option>--approve</option></arg>
150
<arg choice="plain"><option>-A</option></arg>
152
<arg choice="plain"><option>--deny</option></arg>
153
<arg choice="plain"><option>-D</option></arg>
157
<arg choice="plain"><option>--all</option></arg>
158
<arg choice="plain"><option>-a</option></arg>
159
<arg rep='repeat' choice='plain'>
160
<replaceable>CLIENT</replaceable>
165
<command>&COMMANDNAME;</command>
167
<arg choice="plain"><option>--verbose</option></arg>
168
<arg choice="plain"><option>-v</option></arg>
171
<arg rep='repeat' choice='plain'>
172
<replaceable>CLIENT</replaceable>
177
<command>&COMMANDNAME;</command>
179
<arg choice="plain"><option>--is-enabled</option></arg>
180
<arg choice="plain"><option>-V</option></arg>
182
<arg choice='plain'><replaceable>CLIENT</replaceable></arg>
185
<command>&COMMANDNAME;</command>
187
<arg choice="plain"><option>--help</option></arg>
188
<arg choice="plain"><option>-h</option></arg>
192
<command>&COMMANDNAME;</command>
194
<arg choice="plain"><option>--version</option></arg>
195
<arg choice="plain"><option>-v</option></arg>
200
<refsect1 id="description">
201
<title>DESCRIPTION</title>
203
<command>&COMMANDNAME;</command> is a program to control the
204
operation of the Mandos server <citerefentry><refentrytitle
205
>mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
208
This program can be used to change client settings, approve or
209
deny client requests, and to remove clients from the server.
213
<refsect1 id="purpose">
214
<title>PURPOSE</title>
216
The purpose of this is to enable <emphasis>remote and unattended
217
rebooting</emphasis> of client host computer with an
218
<emphasis>encrypted root file system</emphasis>. See <xref
219
linkend="overview"/> for details.
223
<refsect1 id="options">
224
<title>OPTIONS</title>
228
<term><option>--help</option></term>
229
<term><option>-h</option></term>
232
Show a help message and exit
238
<term><option>--enable</option></term>
239
<term><option>-e</option></term>
242
Enable client(s). An enabled client will be eligble to
249
<term><option>--disable</option></term>
250
<term><option>-d</option></term>
253
Disable client(s). A disabled client will not be eligble
254
to receive its secret, and no checkers will be started for
261
<term><option>--bump-timeout</option></term>
264
Bump the timeout of the specified client(s), just as if a
265
checker had completed successfully for it/them.
271
<term><option>--start-checker</option></term>
274
Start a new checker now for the specified client(s).
280
<term><option>--stop-checker</option></term>
283
Stop any running checker for the specified client(s).
289
<term><option>--remove</option></term>
290
<term><option>-r</option></term>
293
Remove the specified client(s) from the server.
299
<term><option>--checker
300
<replaceable>COMMAND</replaceable></option></term>
302
<replaceable>COMMAND</replaceable></option></term>
305
Set the <varname>checker</varname> option of the specified
306
client(s); see <citerefentry><refentrytitle
307
>mandos-clients.conf</refentrytitle><manvolnum
308
>5</manvolnum></citerefentry>.
314
<term><option>--timeout
315
<replaceable>TIME</replaceable></option></term>
317
<replaceable>TIME</replaceable></option></term>
320
Set the <varname>timeout</varname> option of the specified
321
client(s); see <citerefentry><refentrytitle
322
>mandos-clients.conf</refentrytitle><manvolnum
323
>5</manvolnum></citerefentry>.
329
<term><option>--extended-timeout
330
<replaceable>TIME</replaceable></option></term>
333
Set the <varname>extended_timeout</varname> option of the
334
specified client(s); see <citerefentry><refentrytitle
335
>mandos-clients.conf</refentrytitle><manvolnum
336
>5</manvolnum></citerefentry>.
342
<term><option>--interval
343
<replaceable>TIME</replaceable></option></term>
345
<replaceable>TIME</replaceable></option></term>
348
Set the <varname>interval</varname> option of the
349
specified client(s); see <citerefentry><refentrytitle
350
>mandos-clients.conf</refentrytitle><manvolnum
351
>5</manvolnum></citerefentry>.
357
<term><option>--approve-by-default</option></term>
358
<term><option>--deny-by-default</option></term>
361
Set the <varname>approved_by_default</varname> option of
362
the specified client(s) to <literal>True</literal> or
363
<literal>False</literal>, respectively; see
364
<citerefentry><refentrytitle
365
>mandos-clients.conf</refentrytitle><manvolnum
366
>5</manvolnum></citerefentry>.
372
<term><option>--approval-delay
373
<replaceable>TIME</replaceable></option></term>
376
Set the <varname>approval_delay</varname> option of the
377
specified client(s); see <citerefentry><refentrytitle
378
>mandos-clients.conf</refentrytitle><manvolnum
379
>5</manvolnum></citerefentry>.
385
<term><option>--approval-duration
386
<replaceable>TIME</replaceable></option></term>
389
Set the <varname>approval_duration</varname> option of the
390
specified client(s); see <citerefentry><refentrytitle
391
>mandos-clients.conf</refentrytitle><manvolnum
392
>5</manvolnum></citerefentry>.
399
<replaceable>STRING</replaceable></option></term>
401
<replaceable>STRING</replaceable></option></term>
404
Set the <varname>host</varname> option of the specified
405
client(s); see <citerefentry><refentrytitle
406
>mandos-clients.conf</refentrytitle><manvolnum
407
>5</manvolnum></citerefentry>.
413
<term><option>--secret
414
<replaceable>FILENAME</replaceable></option></term>
416
<replaceable>FILENAME</replaceable></option></term>
419
Set the <varname>secfile</varname> option of the specified
420
client(s); see <citerefentry><refentrytitle
421
>mandos-clients.conf</refentrytitle><manvolnum
422
>5</manvolnum></citerefentry>.
428
<term><option>--approve</option></term>
429
<term><option>-A</option></term>
432
Approve client(s) if currently waiting for approval.
438
<term><option>--deny</option></term>
439
<term><option>-D</option></term>
442
Deny client(s) if currently waiting for approval.
448
<term><option>--all</option></term>
449
<term><option>-a</option></term>
452
Make the client-modifying options modify <emphasis
453
>all</emphasis> clients.
459
<term><option>--verbose</option></term>
460
<term><option>-v</option></term>
463
Show all client settings, not just a subset.
469
<term><option>--is-enabled</option></term>
470
<term><option>-V</option></term>
473
Check if a single client is enabled or not, and exit with
474
a successful exit status only if the client is enabled.
482
<refsect1 id="overview">
483
<title>OVERVIEW</title>
484
<xi:include href="overview.xml"/>
486
This program is a small utility to generate new OpenPGP keys for
487
new Mandos clients, and to generate sections for inclusion in
488
<filename>clients.conf</filename> on the server.
492
<refsect1 id="exit_status">
493
<title>EXIT STATUS</title>
495
If the <option>--is-enabled</option> option is used, the exit
496
status will be 0 only if the specified client is enabled.
500
<!-- <refsect1 id="bugs"> -->
501
<!-- <title>BUGS</title> -->
506
<refsect1 id="example">
507
<title>EXAMPLE</title>
513
<userinput>&COMMANDNAME;</userinput>
519
To list <emphasis>all</emphasis> settings for the clients
520
named <quote>foo1.example.org</quote> and <quote
521
>foo2.example.org</quote>:
525
<!-- do not wrap this line -->
526
<userinput>&COMMANDNAME; --verbose foo1.example.org foo2.example.org</userinput>
533
To enable all clients:
536
<userinput>&COMMANDNAME; --enable --all</userinput>
542
To change timeout and interval value for the clients
543
named <quote>foo1.example.org</quote> and <quote
544
>foo2.example.org</quote>:
548
<!-- do not wrap this line -->
549
<userinput>&COMMANDNAME; --timeout="5m" --interval="1m" foo1.example.org foo2.example.org</userinput>
556
To approve all clients currently waiting for it:
559
<userinput>&COMMANDNAME; --approve --all</userinput>
564
<refsect1 id="security">
565
<title>SECURITY</title>
567
This program must be permitted to access the Mandos server via
568
the D-Bus interface. This normally requires the root user, but
569
could be configured otherwise by reconfiguring the D-Bus server.
573
<refsect1 id="see_also">
574
<title>SEE ALSO</title>
576
<citerefentry><refentrytitle>intro</refentrytitle>
577
<manvolnum>8mandos</manvolnum></citerefentry>,
578
<citerefentry><refentrytitle>mandos</refentrytitle>
579
<manvolnum>8</manvolnum></citerefentry>,
580
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
581
<manvolnum>5</manvolnum></citerefentry>,
582
<citerefentry><refentrytitle>mandos-monitor</refentrytitle>
583
<manvolnum>8</manvolnum></citerefentry>
588
<!-- Local Variables: -->
589
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
590
<!-- time-stamp-end: "[\"']>" -->
591
<!-- time-stamp-format: "%:y-%02m-%02d" -->