/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to mandos-monitor.xml

First version of a somewhat complete D-Bus server interface.  Also
change user/group name to "_mandos".

* debian/mandos.postinst: Rename old "mandos" user and group to
                          "_mandos"; create "_mandos" user and group
                          if none exist.
* debian/mandos-client.postinst: - '' -

* initramfs-tools-hook: Try "_mandos" before "mandos" as user and
                        group name.

* mandos (_datetime_to_dbus_struct): New; was previously local.
  (Client.started): Renamed to "last_started".  All users changed.
  (Client.started): New; boolean.
  (Client.dbus_object_path): New.
  (Client.check_command): Renamed to "checker_command".  All users
                          changed.
  (Client.__init__): Set and use "self.dbus_object_path".  Set
                     "self.started".
  (Client.start): Update "self.started".  Emit "self.PropertyChanged"
                  signals for both "started" and "last_started".
  (Client.stop): Update "self.started".  Emit "self.PropertyChanged"
                 signal for "started".
  (Client.checker_callback): Take additional "command" argument.  All
                             callers changed. Emit
                             "self.PropertyChanged" signal.
  (Client.bump_timeout): Emit "self.PropertyChanged" signal for
                         "last_checked_ok".
  (Client.start_checker): Emit "self.PropertyChanged" signal for
                          "checker_running".
  (Client.stop_checker): Emit "self.PropertyChanged" signal for
                         "checker_running".
  (Client.still_valid): Bug fix: use "getattr(self, started, False)"
                        instead of "self.started" in case this client
                        object is so new that the "started" attribute
                        has not been created yet.
  (Client.IntervalChanged, Client.CheckerIsRunning, Client.GetChecker,
  Client.GetCreated, Client.GetFingerprint, Client.GetHost,
  Client.GetInterval, Client.GetName, Client.GetStarted,
  Client.GetTimeout, Client.StateChanged, Client.TimeoutChanged):
  Removed; all callers changed.
  (Client.CheckerCompleted): Add "condition" and "command" arguments.
                             All callers changed.
  (Client.GetAllProperties, Client.PropertyChanged): New.
  (Client.StillValid): Renamed to "IsStillValid".
  (Client.StartChecker): Changed to its own function to avoid the
                         return value from "Client.start_checker()".
  (Client.Stop): Changed to its own function to avoid the return value
                 from "Client.stop()".
  (main): Try "_mandos" before "mandos" as user and group name.
          Removed inner function "remove_from_clients".  New inner
          class "MandosServer".

Show diffs side-by-side

added added

removed removed

Lines of Context:
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-monitor">
5
 
<!ENTITY TIMESTAMP "2019-02-10">
6
 
<!ENTITY % common SYSTEM "common.ent">
7
 
%common;
8
 
]>
9
 
 
10
 
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
11
 
  <refentryinfo>
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>
17
 
    <authorgroup>
18
 
      <author>
19
 
        <firstname>Björn</firstname>
20
 
        <surname>Påhlsson</surname>
21
 
        <address>
22
 
          <email>belorn@recompile.se</email>
23
 
        </address>
24
 
      </author>
25
 
      <author>
26
 
        <firstname>Teddy</firstname>
27
 
        <surname>Hogeborn</surname>
28
 
        <address>
29
 
          <email>teddy@recompile.se</email>
30
 
        </address>
31
 
      </author>
32
 
    </authorgroup>
33
 
    <copyright>
34
 
      <year>2010</year>
35
 
      <year>2011</year>
36
 
      <year>2012</year>
37
 
      <year>2013</year>
38
 
      <year>2014</year>
39
 
      <year>2015</year>
40
 
      <year>2016</year>
41
 
      <year>2017</year>
42
 
      <year>2018</year>
43
 
      <year>2019</year>
44
 
      <holder>Teddy Hogeborn</holder>
45
 
      <holder>Björn Påhlsson</holder>
46
 
    </copyright>
47
 
    <xi:include href="legalnotice.xml"/>
48
 
  </refentryinfo>
49
 
  
50
 
  <refmeta>
51
 
    <refentrytitle>&COMMANDNAME;</refentrytitle>
52
 
    <manvolnum>8</manvolnum>
53
 
  </refmeta>
54
 
  
55
 
  <refnamediv>
56
 
    <refname><command>&COMMANDNAME;</command></refname>
57
 
    <refpurpose>
58
 
      Text-based GUI to control the Mandos server.
59
 
    </refpurpose>
60
 
  </refnamediv>
61
 
  
62
 
  <refsynopsisdiv>
63
 
    <cmdsynopsis>
64
 
      <command>&COMMANDNAME;</command>
65
 
    </cmdsynopsis>
66
 
  </refsynopsisdiv>
67
 
  
68
 
  <refsect1 id="description">
69
 
    <title>DESCRIPTION</title>
70
 
    <para>
71
 
      <command>&COMMANDNAME;</command> is an interactive program to
72
 
      monitor and control the operations of the Mandos server (see
73
 
      <citerefentry><refentrytitle>mandos</refentrytitle><manvolnum
74
 
      >8</manvolnum></citerefentry>).
75
 
    </para>
76
 
  </refsect1>
77
 
  
78
 
  <refsect1 id="purpose">
79
 
    <title>PURPOSE</title>
80
 
    <para>
81
 
      The purpose of this is to enable <emphasis>remote and unattended
82
 
      rebooting</emphasis> of client host computer with an
83
 
      <emphasis>encrypted root file system</emphasis>.  See <xref
84
 
      linkend="overview"/> for details.
85
 
    </para>
86
 
  </refsect1>
87
 
  
88
 
  <refsect1 id="overview">
89
 
    <title>OVERVIEW</title>
90
 
    <xi:include href="overview.xml"/>
91
 
    <para>
92
 
      This program is used to monitor and control the Mandos server.
93
 
      In particular, it can be used to approve Mandos clients which
94
 
      have been configured to require approval.  It also shows all
95
 
      significant events reported by the Mandos server.
96
 
    </para>
97
 
  </refsect1>
98
 
  
99
 
  <refsect1 id="keys">
100
 
    <title>KEYS</title>
101
 
    <para>
102
 
      This program is used to monitor and control the Mandos server.
103
 
      In particular, it can be used to approve Mandos clients which
104
 
      have been configured to require approval.  It also shows all
105
 
      significant events reported by the Mandos server.
106
 
    </para>
107
 
    <table>
108
 
      <title>Global Keys</title><tgroup cols="2"><thead>
109
 
      <row>
110
 
        <entry>Keys</entry>
111
 
        <entry>Function</entry>
112
 
      </row>
113
 
      </thead><tbody>
114
 
      <row>
115
 
        <entry>q, Q</entry>
116
 
        <entry>Quit</entry>
117
 
      </row>
118
 
      <row>
119
 
        <entry>Ctrl-L</entry>
120
 
        <entry>Redraw screen</entry>
121
 
      </row>
122
 
      <row>
123
 
        <entry>?, F1</entry>
124
 
        <entry>Show help</entry>
125
 
      </row>
126
 
      <row>
127
 
        <entry>l, D</entry>
128
 
        <entry>Toggle log window</entry>
129
 
      </row>
130
 
      <row>
131
 
        <entry>TAB</entry>
132
 
        <entry>Switch window</entry>
133
 
      </row>
134
 
      <row>
135
 
        <entry>w, i</entry>
136
 
        <entry>Toggle log window line wrap</entry>
137
 
      </row>
138
 
      <row>
139
 
        <entry>v</entry>
140
 
        <entry>Toggle verbose logging</entry>
141
 
      </row>
142
 
      <row>
143
 
        <entry>Up, Ctrl-P, k</entry>
144
 
        <entry>Move up a line</entry>
145
 
      </row>
146
 
      <row>
147
 
        <entry>Down, Ctrl-N, j</entry>
148
 
        <entry>Move down a line</entry>
149
 
      </row>
150
 
      <row>
151
 
        <entry>PageUp, Meta-V, b</entry>
152
 
        <entry>Move up a page</entry>
153
 
      </row>
154
 
      <row>
155
 
        <entry>PageDown, Ctrl-V, SPACE, f</entry>
156
 
        <entry>Move down a page</entry>
157
 
      </row>
158
 
    </tbody></tgroup></table>
159
 
    <table>
160
 
      <title>Client List Keys</title><tgroup cols="2"><thead>
161
 
      <row>
162
 
        <entry>Keys</entry>
163
 
        <entry>Function</entry>
164
 
      </row>
165
 
      </thead><tbody>
166
 
      <row>
167
 
        <entry>+</entry>
168
 
        <entry>Enable client</entry>
169
 
      </row>
170
 
      <row>
171
 
        <entry>-</entry>
172
 
        <entry>Disable client</entry>
173
 
      </row>
174
 
      <row>
175
 
        <entry>a</entry>
176
 
        <entry>Approve client</entry>
177
 
      </row>
178
 
      <row>
179
 
        <entry>d</entry>
180
 
        <entry>Deny client</entry>
181
 
      </row>
182
 
      <row>
183
 
        <entry>R, _, Ctrl-K</entry>
184
 
        <entry>Remove client</entry>
185
 
      </row>
186
 
      <row>
187
 
        <entry>s</entry>
188
 
        <entry>Start checker for client</entry>
189
 
      </row>
190
 
      <row>
191
 
        <entry>S</entry>
192
 
        <entry>Stop checker for client</entry>
193
 
      </row>
194
 
      <row>
195
 
        <entry>C</entry>
196
 
        <entry>Force a successful check for this client.</entry>
197
 
      </row>
198
 
    </tbody></tgroup></table>
199
 
  </refsect1>
200
 
  
201
 
  <refsect1 id="bugs">
202
 
    <title>BUGS</title>
203
 
    <para>
204
 
      This program can currently only be used to monitor and control a
205
 
      Mandos server with the default D-Bus bus name of
206
 
      <quote>se.recompile.Mandos</quote>.
207
 
    </para>
208
 
    <xi:include href="bugs.xml"/>
209
 
  </refsect1>
210
 
  
211
 
  <refsect1 id="example">
212
 
    <title>EXAMPLE</title>
213
 
    <informalexample>
214
 
      <para>
215
 
        This program takes no options:
216
 
      </para>
217
 
      <para>
218
 
        <userinput>&COMMANDNAME;</userinput>
219
 
      </para>
220
 
    </informalexample>
221
 
  </refsect1>
222
 
  
223
 
  <refsect1 id="security">
224
 
    <title>SECURITY</title>
225
 
    <para>
226
 
      This program must be permitted to access the Mandos server via
227
 
      the D-Bus interface.  This normally requires the root user, but
228
 
      could be configured otherwise by reconfiguring the D-Bus server.
229
 
    </para>
230
 
  </refsect1>
231
 
  
232
 
  <refsect1 id="see_also">
233
 
    <title>SEE ALSO</title>
234
 
    <para>
235
 
      <citerefentry><refentrytitle>intro</refentrytitle>
236
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
237
 
      <citerefentry><refentrytitle>mandos</refentrytitle>
238
 
      <manvolnum>8</manvolnum></citerefentry>,
239
 
      <citerefentry><refentrytitle>mandos-ctl</refentrytitle>
240
 
      <manvolnum>8</manvolnum></citerefentry>
241
 
    </para>
242
 
  </refsect1>
243
 
  
244
 
</refentry>
245
 
<!-- Local Variables: -->
246
 
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
247
 
<!-- time-stamp-end: "[\"']>" -->
248
 
<!-- time-stamp-format: "%:y-%02m-%02d" -->
249
 
<!-- End: -->