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-08-08">
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@fukt.bsnet.se</email>
26
<firstname>Teddy</firstname>
27
<surname>Hogeborn</surname>
29
<email>teddy@fukt.bsnet.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>--interval
99
<replaceable>TIME</replaceable></option></arg>
100
<arg choice="plain"><option>-i
101
<replaceable>TIME</replaceable></option></arg>
105
<arg choice="plain"><option>--approve-by-default</option
108
<arg choice="plain"><option>--deny-by-default</option></arg>
112
<arg choice="plain"><option>--approval-delay
113
<replaceable>TIME</replaceable></option></arg>
117
<arg choice="plain"><option>--approval-duration
118
<replaceable>TIME</replaceable></option></arg>
122
<arg choice="plain"><option>--interval
123
<replaceable>TIME</replaceable></option></arg>
124
<arg choice="plain"><option>-i
125
<replaceable>TIME</replaceable></option></arg>
129
<arg choice="plain"><option>--host
130
<replaceable>STRING</replaceable></option></arg>
131
<arg choice="plain"><option>-H
132
<replaceable>STRING</replaceable></option></arg>
136
<arg choice="plain"><option>--secret
137
<replaceable>FILENAME</replaceable></option></arg>
138
<arg choice="plain"><option>-s
139
<replaceable>FILENAME</replaceable></option></arg>
143
<arg choice="plain"><option>--approve</option></arg>
144
<arg choice="plain"><option>-A</option></arg>
146
<arg choice="plain"><option>--deny</option></arg>
147
<arg choice="plain"><option>-D</option></arg>
151
<arg choice="plain"><option>--all</option></arg>
152
<arg choice="plain"><option>-a</option></arg>
153
<arg rep='repeat' choice='plain'>
154
<replaceable>CLIENT</replaceable>
159
<command>&COMMANDNAME;</command>
161
<arg choice="plain"><option>--verbose</option></arg>
162
<arg choice="plain"><option>-v</option></arg>
165
<arg rep='repeat' choice='plain'>
166
<replaceable>CLIENT</replaceable>
171
<command>&COMMANDNAME;</command>
173
<arg choice="plain"><option>--is-enabled</option></arg>
174
<arg choice="plain"><option>-V</option></arg>
176
<arg choice='plain'><replaceable>CLIENT</replaceable></arg>
179
<command>&COMMANDNAME;</command>
181
<arg choice="plain"><option>--help</option></arg>
182
<arg choice="plain"><option>-h</option></arg>
186
<command>&COMMANDNAME;</command>
188
<arg choice="plain"><option>--version</option></arg>
189
<arg choice="plain"><option>-v</option></arg>
194
<refsect1 id="description">
195
<title>DESCRIPTION</title>
197
<command>&COMMANDNAME;</command> is a program to control the
198
operation of the Mandos server <citerefentry><refentrytitle
199
>mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
202
This program can be used to change client settings, approve or
203
deny client requests, and to remove clients from the server.
207
<refsect1 id="purpose">
208
<title>PURPOSE</title>
210
The purpose of this is to enable <emphasis>remote and unattended
211
rebooting</emphasis> of client host computer with an
212
<emphasis>encrypted root file system</emphasis>. See <xref
213
linkend="overview"/> for details.
217
<refsect1 id="options">
218
<title>OPTIONS</title>
222
<term><option>--help</option></term>
223
<term><option>-h</option></term>
226
Show a help message and exit
232
<term><option>--enable</option></term>
233
<term><option>-e</option></term>
236
Enable client(s). An enabled client will be eligble to
243
<term><option>--disable</option></term>
244
<term><option>-d</option></term>
247
Disable client(s). A disabled client will not be eligble
248
to receive its secret, and no checkers will be started for
255
<term><option>--bump-timeout</option></term>
258
Bump the timeout of the specified client(s), just as if a
259
checker had completed successfully for it/them.
265
<term><option>--start-checker</option></term>
268
Start a new checker now for the specified client(s).
274
<term><option>--stop-checker</option></term>
277
Stop any running checker for the specified client(s).
283
<term><option>--remove</option></term>
284
<term><option>-r</option></term>
287
Remove the specified client(s) from the server.
293
<term><option>--checker
294
<replaceable>COMMAND</replaceable></option></term>
296
<replaceable>COMMAND</replaceable></option></term>
299
Set the <varname>checker</varname> option of the specified
300
client(s); see <citerefentry><refentrytitle
301
>mandos-clients.conf</refentrytitle><manvolnum
302
>5</manvolnum></citerefentry>.
308
<term><option>--timeout
309
<replaceable>TIME</replaceable></option></term>
311
<replaceable>TIME</replaceable></option></term>
314
Set the <varname>timeout</varname> option of the specified
315
client(s); see <citerefentry><refentrytitle
316
>mandos-clients.conf</refentrytitle><manvolnum
317
>5</manvolnum></citerefentry>.
323
<term><option>--interval
324
<replaceable>TIME</replaceable></option></term>
326
<replaceable>TIME</replaceable></option></term>
329
Set the <varname>interval</varname> option of the
330
specified client(s); see <citerefentry><refentrytitle
331
>mandos-clients.conf</refentrytitle><manvolnum
332
>5</manvolnum></citerefentry>.
338
<term><option>--approve-by-default</option></term>
339
<term><option>--deny-by-default</option></term>
342
Set the <varname>approved_by_default</varname> option of
343
the specified client(s) to <literal>True</literal> or
344
<literal>False</literal>, respectively; see
345
<citerefentry><refentrytitle
346
>mandos-clients.conf</refentrytitle><manvolnum
347
>5</manvolnum></citerefentry>.
353
<term><option>--approval-delay
354
<replaceable>TIME</replaceable></option></term>
357
Set the <varname>approval_delay</varname> option of the
358
specified client(s); see <citerefentry><refentrytitle
359
>mandos-clients.conf</refentrytitle><manvolnum
360
>5</manvolnum></citerefentry>.
366
<term><option>--approval-duration
367
<replaceable>TIME</replaceable></option></term>
370
Set the <varname>approval_duration</varname> option of the
371
specified client(s); see <citerefentry><refentrytitle
372
>mandos-clients.conf</refentrytitle><manvolnum
373
>5</manvolnum></citerefentry>.
380
<replaceable>STRING</replaceable></option></term>
382
<replaceable>STRING</replaceable></option></term>
385
Set the <varname>host</varname> option of the specified
386
client(s); see <citerefentry><refentrytitle
387
>mandos-clients.conf</refentrytitle><manvolnum
388
>5</manvolnum></citerefentry>.
394
<term><option>--secret
395
<replaceable>FILENAME</replaceable></option></term>
397
<replaceable>FILENAME</replaceable></option></term>
400
Set the <varname>secfile</varname> option of the specified
401
client(s); see <citerefentry><refentrytitle
402
>mandos-clients.conf</refentrytitle><manvolnum
403
>5</manvolnum></citerefentry>.
409
<term><option>--approve</option></term>
410
<term><option>-A</option></term>
413
Approve client(s) if currently waiting for approval.
419
<term><option>--deny</option></term>
420
<term><option>-D</option></term>
423
Deny client(s) if currently waiting for approval.
429
<term><option>--all</option></term>
430
<term><option>-a</option></term>
433
Make the client-modifying options modify <emphasis
434
>all</emphasis> clients.
440
<term><option>--verbose</option></term>
441
<term><option>-v</option></term>
444
Show all client settings, not just a subset.
450
<term><option>--is-enabled</option></term>
451
<term><option>-V</option></term>
454
Check if a single client is enabled or not, and exit with
455
a successful exit status only if the client is enabled.
463
<refsect1 id="overview">
464
<title>OVERVIEW</title>
465
<xi:include href="overview.xml"/>
467
This program is a small utility to generate new OpenPGP keys for
468
new Mandos clients, and to generate sections for inclusion in
469
<filename>clients.conf</filename> on the server.
473
<refsect1 id="exit_status">
474
<title>EXIT STATUS</title>
476
If the <option>--is-enabled</option> option is used, the exit
477
status will be 0 only if the specified client is enabled.
481
<!-- <refsect1 id="bugs"> -->
482
<!-- <title>BUGS</title> -->
487
<refsect1 id="example">
488
<title>EXAMPLE</title>
494
<userinput>&COMMANDNAME;</userinput>
500
To list <emphasis>all</emphasis> settings for the clients
501
named <quote>foo1.example.org</quote> and <quote
502
>foo2.example.org</quote>:
506
<!-- do not wrap this line -->
507
<userinput>&COMMANDNAME; --verbose foo1.example.org foo2.example.org</userinput>
514
To enable all clients:
517
<userinput>&COMMANDNAME; --enable --all</userinput>
523
To change timeout and interval value for the clients
524
named <quote>foo1.example.org</quote> and <quote
525
>foo2.example.org</quote>:
529
<!-- do not wrap this line -->
530
<userinput>&COMMANDNAME; --timeout="5m" --interval="1m" foo1.example.org foo2.example.org</userinput>
537
To approve all clients currently waiting for it:
540
<userinput>&COMMANDNAME; --approve --all</userinput>
545
<refsect1 id="security">
546
<title>SECURITY</title>
548
This program must be permitted to access the Mandos server via
549
the D-Bus interface. This normally requires the root user, but
550
could be configured otherwise by reconfiguring the D-Bus server.
554
<refsect1 id="see_also">
555
<title>SEE ALSO</title>
557
<citerefentry><refentrytitle>intro</refentrytitle>
558
<manvolnum>8mandos</manvolnum></citerefentry>,
559
<citerefentry><refentrytitle>mandos</refentrytitle>
560
<manvolnum>8</manvolnum></citerefentry>,
561
<citerefentry><refentrytitle>mandos-clients.conf</refentrytitle>
562
<manvolnum>5</manvolnum></citerefentry>,
563
<citerefentry><refentrytitle>mandos-monitor</refentrytitle>
564
<manvolnum>8</manvolnum></citerefentry>
569
<!-- Local Variables: -->
570
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
571
<!-- time-stamp-end: "[\"']>" -->
572
<!-- time-stamp-format: "%:y-%02m-%02d" -->