bzr branch
http://bzr.recompile.se/loggerhead/mandos/trunk
129
by Teddy Hogeborn
* mandos-clients.conf.xml: Changed all single quotes to double quotes |
1 |
<?xml version="1.0" encoding="UTF-8"?>
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
2 |
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
3 |
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
171
by Teddy Hogeborn
Renamed "password-request" to "mandos-client". |
4 |
<!ENTITY COMMANDNAME "mandos-client">
|
1277
by Teddy Hogeborn
Improve documentation |
5 |
<!ENTITY TIMESTAMP "2023-10-21">
|
217
by Teddy Hogeborn
* .bzrignore: Added "man" directory (created by "make install-html"). |
6 |
<!ENTITY % common SYSTEM "../common.ent">
|
7 |
%common; |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
8 |
]> |
9 |
||
131
by Teddy Hogeborn
* Makefile: Make all DocBook rules include legalnotice.xml as a |
10 |
<refentry xmlns:xi="http://www.w3.org/2001/XInclude"> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
11 |
<refentryinfo> |
112
by Teddy Hogeborn
* mandos-clients.conf.xml (/refentry/refentryinfo/title): Changed to |
12 |
<title>Mandos Manual</title> |
217
by Teddy Hogeborn
* .bzrignore: Added "man" directory (created by "make install-html"). |
13 |
<!-- NWalsh’s docbook scripts use this to generate the footer: --> |
112
by Teddy Hogeborn
* mandos-clients.conf.xml (/refentry/refentryinfo/title): Changed to |
14 |
<productname>Mandos</productname> |
217
by Teddy Hogeborn
* .bzrignore: Added "man" directory (created by "make install-html"). |
15 |
<productnumber>&version;</productnumber> |
111
by Teddy Hogeborn
* mandos-clients.conf.xml (ENTITY TIMESTAMP): New. Automatically |
16 |
<date>&TIMESTAMP;</date> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
17 |
<authorgroup> |
18 |
<author> |
|
19 |
<firstname>Björn</firstname> |
|
20 |
<surname>Påhlsson</surname> |
|
21 |
<address> |
|
505.1.2
by Teddy Hogeborn
Change "fukt.bsnet.se" to "recompile.se" throughout. |
22 |
<email>belorn@recompile.se</email> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
23 |
</address> |
24 |
</author> |
|
25 |
<author> |
|
26 |
<firstname>Teddy</firstname> |
|
27 |
<surname>Hogeborn</surname> |
|
28 |
<address> |
|
505.1.2
by Teddy Hogeborn
Change "fukt.bsnet.se" to "recompile.se" throughout. |
29 |
<email>teddy@recompile.se</email> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
30 |
</address> |
31 |
</author> |
|
32 |
</authorgroup> |
|
33 |
<copyright> |
|
34 |
<year>2008</year> |
|
246
by Teddy Hogeborn
* README: Update copyright year; add "2009". |
35 |
<year>2009</year> |
778
by Teddy Hogeborn
Update copyright year. |
36 |
<year>2010</year> |
37 |
<year>2011</year> |
|
544
by Teddy Hogeborn
Updated year in copyright notices. |
38 |
<year>2012</year> |
626
by Teddy Hogeborn
* Makefile (CFLAGS, LDFLAGS): Keep default flags from environment. |
39 |
<year>2013</year> |
659
by Teddy Hogeborn
* debian/copyright: Change year to "2014". |
40 |
<year>2014</year> |
738.1.2
by Teddy Hogeborn
mandos-client: Try to start a plugin to add and remove a local route. |
41 |
<year>2015</year> |
807
by Teddy Hogeborn
Update copyright year. |
42 |
<year>2016</year> |
899
by Teddy Hogeborn
Update copyright year to 2017 |
43 |
<year>2017</year> |
923
by Teddy Hogeborn
Update copyright year to 2018 |
44 |
<year>2018</year> |
969
by Teddy Hogeborn
Update copyright year to 2019 |
45 |
<year>2019</year> |
128
by Teddy Hogeborn
* plugin-runner.xml (/refentry/refentryinfo/copyright): Split |
46 |
<holder>Teddy Hogeborn</holder> |
47 |
<holder>Björn Påhlsson</holder> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
48 |
</copyright> |
131
by Teddy Hogeborn
* Makefile: Make all DocBook rules include legalnotice.xml as a |
49 |
<xi:include href="../legalnotice.xml"/> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
50 |
</refentryinfo> |
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
51 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
52 |
<refmeta> |
53 |
<refentrytitle>&COMMANDNAME;</refentrytitle> |
|
54 |
<manvolnum>8mandos</manvolnum> |
|
55 |
</refmeta> |
|
56 |
|
|
57 |
<refnamediv> |
|
58 |
<refname><command>&COMMANDNAME;</command></refname> |
|
59 |
<refpurpose> |
|
172
by Teddy Hogeborn
* plugins.d/mandos-client.xml (NAME, OVERVIEW, EXIT STATUS): Improved |
60 |
Client for <application>Mandos</application> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
61 |
</refpurpose> |
62 |
</refnamediv> |
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
63 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
64 |
<refsynopsisdiv> |
65 |
<cmdsynopsis> |
|
66 |
<command>&COMMANDNAME;</command> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
67 |
<group> |
68 |
<arg choice="plain"><option>--connect |
|
156
by Teddy Hogeborn
* mandos-clients.conf.xml (OPTIONS): Improved spelling. |
69 |
<replaceable>ADDRESS</replaceable><literal>:</literal |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
70 |
><replaceable>PORT</replaceable></option></arg> |
71 |
<arg choice="plain"><option>-c |
|
156
by Teddy Hogeborn
* mandos-clients.conf.xml (OPTIONS): Improved spelling. |
72 |
<replaceable>ADDRESS</replaceable><literal>:</literal |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
73 |
><replaceable>PORT</replaceable></option></arg> |
74 |
</group> |
|
75 |
<sbr/> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
76 |
<group rep='repeat'> |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
77 |
<arg choice="plain"><option>--interface |
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
78 |
<replaceable>NAME</replaceable><arg rep='repeat' |
79 |
>,<replaceable>NAME</replaceable></arg></option></arg> |
|
80 |
<arg choice="plain"><option>-i <replaceable>NAME</replaceable |
|
81 |
><arg rep='repeat'>,<replaceable>NAME</replaceable></arg |
|
82 |
></option></arg>
|
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
83 |
</group> |
84 |
<sbr/> |
|
85 |
<group> |
|
86 |
<arg choice="plain"><option>--pubkey |
|
87 |
<replaceable>FILE</replaceable></option></arg> |
|
88 |
<arg choice="plain"><option>-p |
|
89 |
<replaceable>FILE</replaceable></option></arg> |
|
90 |
</group> |
|
91 |
<sbr/> |
|
92 |
<group> |
|
93 |
<arg choice="plain"><option>--seckey |
|
94 |
<replaceable>FILE</replaceable></option></arg> |
|
95 |
<arg choice="plain"><option>-s |
|
96 |
<replaceable>FILE</replaceable></option></arg> |
|
97 |
</group> |
|
98 |
<sbr/> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
99 |
<group> |
100 |
<arg choice="plain"><option>--tls-privkey |
|
101 |
<replaceable>FILE</replaceable></option></arg> |
|
102 |
<arg choice="plain"><option>-t |
|
103 |
<replaceable>FILE</replaceable></option></arg> |
|
104 |
</group> |
|
105 |
<sbr/> |
|
106 |
<group> |
|
107 |
<arg choice="plain"><option>--tls-pubkey |
|
108 |
<replaceable>FILE</replaceable></option></arg> |
|
109 |
<arg choice="plain"><option>-T |
|
110 |
<replaceable>FILE</replaceable></option></arg> |
|
111 |
</group> |
|
112 |
<sbr/> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
113 |
<arg> |
114 |
<option>--priority <replaceable>STRING</replaceable></option> |
|
115 |
</arg> |
|
116 |
<sbr/> |
|
117 |
<arg> |
|
118 |
<option>--dh-bits <replaceable>BITS</replaceable></option> |
|
119 |
</arg> |
|
120 |
<sbr/> |
|
121 |
<arg> |
|
762
by Teddy Hogeborn
mandos-client: Add --dh-params FILE option. |
122 |
<option>--dh-params <replaceable>FILE</replaceable></option> |
123 |
</arg> |
|
124 |
<sbr/> |
|
125 |
<arg> |
|
24.1.124
by Björn Påhlsson
Added lower kernel loglevel to reduce clutter on system console. |
126 |
<option>--delay <replaceable>SECONDS</replaceable></option> |
127 |
</arg> |
|
128 |
<sbr/> |
|
129 |
<arg> |
|
24.1.174
by Björn Påhlsson
* Makefile (CFLAGS): Added "-lrt" to include real time library. |
130 |
<option>--retry <replaceable>SECONDS</replaceable></option> |
131 |
</arg> |
|
132 |
<sbr/> |
|
133 |
<arg> |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
134 |
<option>--network-hook-dir |
135 |
<replaceable>DIR</replaceable></option> |
|
505.3.5
by teddy at bsnet
* plugins.d/mandos-client.c (SYNOPSIS, OPTIONS): Document |
136 |
</arg> |
137 |
<sbr/> |
|
138 |
<arg> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
139 |
<option>--debug</option> |
140 |
</arg> |
|
141 |
</cmdsynopsis> |
|
142 |
<cmdsynopsis> |
|
143 |
<command>&COMMANDNAME;</command> |
|
144 |
<group choice="req"> |
|
129
by Teddy Hogeborn
* mandos-clients.conf.xml: Changed all single quotes to double quotes |
145 |
<arg choice="plain"><option>--help</option></arg> |
146 |
<arg choice="plain"><option>-?</option></arg> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
147 |
</group> |
148 |
</cmdsynopsis> |
|
149 |
<cmdsynopsis> |
|
150 |
<command>&COMMANDNAME;</command> |
|
129
by Teddy Hogeborn
* mandos-clients.conf.xml: Changed all single quotes to double quotes |
151 |
<arg choice="plain"><option>--usage</option></arg> |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
152 |
</cmdsynopsis> |
153 |
<cmdsynopsis> |
|
154 |
<command>&COMMANDNAME;</command> |
|
155 |
<group choice="req"> |
|
129
by Teddy Hogeborn
* mandos-clients.conf.xml: Changed all single quotes to double quotes |
156 |
<arg choice="plain"><option>--version</option></arg> |
157 |
<arg choice="plain"><option>-V</option></arg> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
158 |
</group> |
159 |
</cmdsynopsis> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
160 |
</refsynopsisdiv> |
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
161 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
162 |
<refsect1 id="description"> |
163 |
<title>DESCRIPTION</title> |
|
164 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
165 |
<command>&COMMANDNAME;</command> is a client program that |
166 |
communicates with <citerefentry><refentrytitle |
|
167 |
>mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry> |
|
285
by Teddy Hogeborn
* plugins.d/mandos-client.c (main): Use remove() instead of unlink(), |
168 |
to get a password. In slightly more detail, this client program |
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
169 |
brings up network interfaces, uses the interfaces’ IPv6 |
170 |
link-local addresses to get network connectivity, uses Zeroconf |
|
171 |
to find servers on the local network, and communicates with |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
172 |
servers using TLS with a raw public key to ensure authenticity |
173 |
and confidentiality. This client program keeps running, trying |
|
174 |
all servers on the network, until it receives a satisfactory |
|
175 |
reply or a TERM signal. After all servers have been tried, all |
|
491
by teddy at bsnet
* plugins.d/mandos-client.c (avahi_loop_with_timeout): Fix warning. |
176 |
servers are periodically retried. If no servers are found it |
177 |
will wait indefinitely for new servers to appear. |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
178 |
</para> |
179 |
<para> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
180 |
The network interfaces are selected like this: If any interfaces |
181 |
are specified using the <option>--interface</option> option, |
|
182 |
those interface are used. Otherwise, |
|
183 |
<command>&COMMANDNAME;</command> will use all interfaces that |
|
184 |
are not loopback interfaces, are not point-to-point interfaces, |
|
185 |
are capable of broadcasting and do not have the NOARP flag (see |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
186 |
<citerefentry><refentrytitle>netdevice</refentrytitle> |
187 |
<manvolnum>7</manvolnum></citerefentry>). (If the |
|
188 |
<option>--connect</option> option is used, point-to-point |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
189 |
interfaces and non-broadcast interfaces are accepted.) If any |
190 |
used interfaces are not up and running, they are first taken up |
|
191 |
(and later taken down again on program exit). |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
192 |
</para> |
193 |
<para> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
194 |
Before network interfaces are selected, all <quote>network |
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
195 |
hooks</quote> are run; see <xref linkend="network-hooks"/>. |
196 |
</para> |
|
197 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
198 |
This program is not meant to be run directly; it is really meant |
1277
by Teddy Hogeborn
Improve documentation |
199 |
to be run by other programs in the initial |
200 |
<acronym>RAM</acronym> disk environment; see <xref |
|
201 |
linkend="overview"/>. |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
202 |
</para> |
203 |
</refsect1> |
|
204 |
|
|
205 |
<refsect1 id="purpose"> |
|
206 |
<title>PURPOSE</title> |
|
207 |
<para> |
|
208 |
The purpose of this is to enable <emphasis>remote and unattended |
|
209 |
rebooting</emphasis> of client host computer with an |
|
210 |
<emphasis>encrypted root file system</emphasis>. See <xref |
|
211 |
linkend="overview"/> for details. |
|
212 |
</para> |
|
213 |
</refsect1> |
|
214 |
|
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
215 |
<refsect1 id="options"> |
216 |
<title>OPTIONS</title> |
|
217 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
218 |
This program is commonly not invoked from the command line; it |
1277
by Teddy Hogeborn
Improve documentation |
219 |
is normally started by another program as described in <xref |
220 |
linkend="description"/>. Any command line options this program |
|
221 |
accepts are therefore normally provided by the invoking program, |
|
222 |
and not directly. |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
223 |
</para> |
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
224 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
225 |
<variablelist> |
226 |
<varlistentry> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
227 |
<term><option>--connect=<replaceable |
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
228 |
>ADDRESS</replaceable><literal>:</literal><replaceable |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
229 |
>PORT</replaceable></option></term> |
230 |
<term><option>-c |
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
231 |
<replaceable>ADDRESS</replaceable><literal>:</literal |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
232 |
><replaceable>PORT</replaceable></option></term> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
233 |
<listitem> |
234 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
235 |
Do not use Zeroconf to locate servers. Connect directly |
236 |
to only one specified <application>Mandos</application> |
|
237 |
server. Note that an IPv6 address has colon characters in |
|
238 |
it, so the <emphasis>last</emphasis> colon character is |
|
239 |
assumed to separate the address from the port number. |
|
240 |
</para> |
|
241 |
<para> |
|
651
by Teddy Hogeborn
Documentation change to clarify support of --connect option. |
242 |
Normally, Zeroconf would be used to locate Mandos servers, |
243 |
in which case this option would only be used when testing |
|
244 |
and debugging. |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
245 |
</para> |
246 |
</listitem> |
|
247 |
</varlistentry> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
248 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
249 |
<varlistentry> |
304
by Teddy Hogeborn
Four new interrelated features: |
250 |
<term><option>--interface=<replaceable |
604
by Teddy Hogeborn
* plugins.d/mandos-client (start_mandos_communication): Bug fix; skip |
251 |
>NAME</replaceable><arg rep='repeat'>,<replaceable |
252 |
>NAME</replaceable></arg></option></term> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
253 |
<term><option>-i |
604
by Teddy Hogeborn
* plugins.d/mandos-client (start_mandos_communication): Bug fix; skip |
254 |
<replaceable>NAME</replaceable><arg rep='repeat'>,<replaceable |
255 |
>NAME</replaceable></arg></option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
256 |
<listitem> |
257 |
<para> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
258 |
Comma separated list of network interfaces that will be |
259 |
brought up and scanned for Mandos servers to connect to. |
|
260 |
The default is the empty string, which will automatically |
|
261 |
use all appropriate interfaces. |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
262 |
</para> |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
263 |
<para> |
604
by Teddy Hogeborn
* plugins.d/mandos-client (start_mandos_communication): Bug fix; skip |
264 |
If the <option>--connect</option> option is used, and |
265 |
exactly one interface name is specified (except |
|
266 |
<quote><literal>none</literal></quote>), this specifies |
|
267 |
the interface to use to connect to the address given. |
|
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
268 |
</para> |
285
by Teddy Hogeborn
* plugins.d/mandos-client.c (main): Use remove() instead of unlink(), |
269 |
<para> |
270 |
Note that since this program will normally run in the |
|
271 |
initial RAM disk environment, the interface must be an |
|
272 |
interface which exists at that stage. Thus, the interface |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
273 |
can normally not be a pseudo-interface such as |
274 |
<quote>br0</quote> or <quote>tun0</quote>; such interfaces |
|
275 |
will not exist until much later in the boot process, and |
|
276 |
can not be used by this program, unless created by a |
|
277 |
<quote>network hook</quote> — see <xref |
|
278 |
linkend="network-hooks"/>. |
|
285
by Teddy Hogeborn
* plugins.d/mandos-client.c (main): Use remove() instead of unlink(), |
279 |
</para> |
304
by Teddy Hogeborn
Four new interrelated features: |
280 |
<para> |
237.2.33
by teddy at bsnet
* plugins.d/mandos-client.c: An empty interface name now means to |
281 |
<replaceable>NAME</replaceable> can be the string |
604
by Teddy Hogeborn
* plugins.d/mandos-client (start_mandos_communication): Bug fix; skip |
282 |
<quote><literal>none</literal></quote>; this will make |
666
by Teddy Hogeborn
Bug fix: Free all memory and give better messages when memory is full. |
283 |
<command>&COMMANDNAME;</command> only bring up interfaces |
284 |
specified <emphasis>before</emphasis> this string. This |
|
285 |
is not recommended, and only meant for advanced users. |
|
304
by Teddy Hogeborn
Four new interrelated features: |
286 |
</para> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
287 |
</listitem> |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
288 |
</varlistentry> |
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
289 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
290 |
<varlistentry> |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
291 |
<term><option>--pubkey=<replaceable |
292 |
>FILE</replaceable></option></term> |
|
293 |
<term><option>-p |
|
294 |
<replaceable>FILE</replaceable></option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
295 |
<listitem> |
296 |
<para> |
|
151
by Teddy Hogeborn
* plugins.d/password-request.xml (SYNOPSYS): Removed "--keydir". |
297 |
OpenPGP public key file name. The default name is |
298 |
<quote><filename>/conf/conf.d/mandos/pubkey.txt</filename |
|
299 |
></quote>.
|
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
300 |
</para> |
301 |
</listitem> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
302 |
</varlistentry> |
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
303 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
304 |
<varlistentry> |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
305 |
<term><option>--seckey=<replaceable |
306 |
>FILE</replaceable></option></term> |
|
307 |
<term><option>-s |
|
308 |
<replaceable>FILE</replaceable></option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
309 |
<listitem> |
310 |
<para> |
|
151
by Teddy Hogeborn
* plugins.d/password-request.xml (SYNOPSYS): Removed "--keydir". |
311 |
OpenPGP secret key file name. The default name is |
312 |
<quote><filename>/conf/conf.d/mandos/seckey.txt</filename |
|
313 |
></quote>.
|
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
314 |
</para> |
315 |
</listitem> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
316 |
</varlistentry> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
317 |
|
318 |
<varlistentry> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
319 |
<term><option>--tls-pubkey=<replaceable |
320 |
>FILE</replaceable></option></term> |
|
321 |
<term><option>-T |
|
322 |
<replaceable>FILE</replaceable></option></term> |
|
323 |
<listitem> |
|
324 |
<para> |
|
325 |
TLS raw public key file name. The default name is |
|
326 |
<quote><filename>/conf/conf.d/mandos/tls-pubkey.pem</filename |
|
327 |
></quote>.
|
|
328 |
</para> |
|
329 |
</listitem> |
|
330 |
</varlistentry> |
|
331 |
||
332 |
<varlistentry> |
|
333 |
<term><option>--tls-privkey=<replaceable |
|
334 |
>FILE</replaceable></option></term> |
|
335 |
<term><option>-t |
|
336 |
<replaceable>FILE</replaceable></option></term> |
|
337 |
<listitem> |
|
338 |
<para> |
|
339 |
TLS secret key file name. The default name is |
|
340 |
<quote><filename>/conf/conf.d/mandos/tls-privkey.pem</filename |
|
341 |
></quote>.
|
|
342 |
</para> |
|
343 |
</listitem> |
|
344 |
</varlistentry> |
|
345 |
||
346 |
<varlistentry> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
347 |
<term><option>--priority=<replaceable |
348 |
>STRING</replaceable></option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
349 |
<listitem> |
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
350 |
<xi:include href="../mandos-options.xml" |
351 |
xpointer="priority"/> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
352 |
</listitem> |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
353 |
</varlistentry> |
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
354 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
355 |
<varlistentry> |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
356 |
<term><option>--dh-bits=<replaceable |
357 |
>BITS</replaceable></option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
358 |
<listitem> |
359 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
360 |
Sets the number of bits to use for the prime number in the |
743
by Teddy Hogeborn
Automatically determine the number of DH bits in the TLS handshake. |
361 |
TLS Diffie-Hellman key exchange. The default value is |
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
362 |
selected automatically based on the GnuTLS security |
363 |
profile set in its priority string. Note that if the |
|
364 |
<option>--dh-params</option> option is used, the values |
|
365 |
from that file will be used instead. |
|
762
by Teddy Hogeborn
mandos-client: Add --dh-params FILE option. |
366 |
</para> |
367 |
</listitem> |
|
368 |
</varlistentry> |
|
369 |
|
|
370 |
<varlistentry> |
|
371 |
<term><option>--dh-params=<replaceable |
|
372 |
>FILE</replaceable></option></term> |
|
373 |
<listitem> |
|
374 |
<para> |
|
375 |
Specifies a PEM-encoded PKCS#3 file to read the parameters |
|
376 |
needed by the TLS Diffie-Hellman key exchange from. If |
|
377 |
this option is not given, or if the file for some reason |
|
378 |
could not be used, the parameters will be generated on |
|
379 |
startup, which will take some time and processing power. |
|
380 |
Those using servers running under time, power or processor |
|
381 |
constraints may want to generate such a file in advance |
|
382 |
and use this option. |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
383 |
</para> |
384 |
</listitem> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
385 |
</varlistentry> |
24.1.124
by Björn Påhlsson
Added lower kernel loglevel to reduce clutter on system console. |
386 |
|
387 |
<varlistentry> |
|
388 |
<term><option>--delay=<replaceable |
|
389 |
>SECONDS</replaceable></option></term> |
|
390 |
<listitem> |
|
391 |
<para> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
392 |
After bringing a network interface up, the program waits |
24.1.124
by Björn Påhlsson
Added lower kernel loglevel to reduce clutter on system console. |
393 |
for the interface to arrive in a <quote>running</quote> |
394 |
state before proceeding. During this time, the kernel log |
|
395 |
level will be lowered to reduce clutter on the system |
|
396 |
console, alleviating any other plugins which might be |
|
397 |
using the system console. This option sets the upper |
|
398 |
limit of seconds to wait. The default is 2.5 seconds. |
|
399 |
</para> |
|
400 |
</listitem> |
|
401 |
</varlistentry> |
|
24.1.174
by Björn Påhlsson
* Makefile (CFLAGS): Added "-lrt" to include real time library. |
402 |
|
403 |
<varlistentry> |
|
404 |
<term><option>--retry=<replaceable |
|
405 |
>SECONDS</replaceable></option></term> |
|
406 |
<listitem> |
|
407 |
<para> |
|
491
by teddy at bsnet
* plugins.d/mandos-client.c (avahi_loop_with_timeout): Fix warning. |
408 |
All Mandos servers are tried repeatedly until a password |
409 |
is received. This value specifies, in seconds, how long |
|
410 |
between each successive try <emphasis>for the same |
|
411 |
server</emphasis>. The default is 10 seconds. |
|
24.1.174
by Björn Påhlsson
* Makefile (CFLAGS): Added "-lrt" to include real time library. |
412 |
</para> |
413 |
</listitem> |
|
414 |
</varlistentry> |
|
505.3.5
by teddy at bsnet
* plugins.d/mandos-client.c (SYNOPSIS, OPTIONS): Document |
415 |
|
416 |
<varlistentry> |
|
417 |
<term><option>--network-hook-dir=<replaceable |
|
418 |
>DIR</replaceable></option></term> |
|
419 |
<listitem> |
|
420 |
<para> |
|
421 |
Network hook directory. The default directory is |
|
505.3.7
by teddy at bsnet
* initramfs-tools-hook: Install network hooks (and any required files) |
422 |
<quote><filename class="directory" |
423 |
>/lib/mandos/network-hooks.d</filename></quote>. |
|
505.3.5
by teddy at bsnet
* plugins.d/mandos-client.c (SYNOPSIS, OPTIONS): Document |
424 |
</para> |
425 |
</listitem> |
|
426 |
</varlistentry> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
427 |
|
428 |
<varlistentry> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
429 |
<term><option>--debug</option></term> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
430 |
<listitem> |
431 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
432 |
Enable debug mode. This will enable a lot of output to |
433 |
standard error about what the program is doing. The |
|
434 |
program will still perform all other functions normally. |
|
435 |
</para> |
|
436 |
<para> |
|
437 |
It will also enable debug mode in the Avahi and GnuTLS |
|
438 |
libraries, making them print large amounts of debugging |
|
439 |
output.
|
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
440 |
</para> |
441 |
</listitem> |
|
442 |
</varlistentry> |
|
443 |
|
|
444 |
<varlistentry> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
445 |
<term><option>--help</option></term> |
446 |
<term><option>-?</option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
447 |
<listitem> |
448 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
449 |
Gives a help message about options and their meanings. |
24.1.23
by Björn Påhlsson
Added manual pages for: |
450 |
</para> |
451 |
</listitem> |
|
452 |
</varlistentry> |
|
453 |
|
|
454 |
<varlistentry> |
|
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
455 |
<term><option>--usage</option></term> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
456 |
<listitem> |
457 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
458 |
Gives a short usage message. |
24.1.23
by Björn Påhlsson
Added manual pages for: |
459 |
</para> |
460 |
</listitem> |
|
461 |
</varlistentry> |
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
462 |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
463 |
<varlistentry> |
127
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Make replaceables match |
464 |
<term><option>--version</option></term> |
465 |
<term><option>-V</option></term> |
|
24.1.23
by Björn Påhlsson
Added manual pages for: |
466 |
<listitem> |
467 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
468 |
Prints the program version. |
24.1.23
by Björn Påhlsson
Added manual pages for: |
469 |
</para> |
470 |
</listitem> |
|
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
471 |
</varlistentry> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
472 |
</variablelist> |
473 |
</refsect1> |
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
474 |
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
475 |
<refsect1 id="overview"> |
476 |
<title>OVERVIEW</title> |
|
477 |
<xi:include href="../overview.xml"/> |
|
478 |
<para> |
|
1277
by Teddy Hogeborn
Improve documentation |
479 |
This program is the client part. It is run automatically in an |
480 |
initial <acronym>RAM</acronym> disk environment. |
|
481 |
</para> |
|
482 |
<para> |
|
483 |
In an initial <acronym>RAM</acronym> disk environment using |
|
484 |
<citerefentry><refentrytitle>systemd</refentrytitle> |
|
485 |
<manvolnum>1</manvolnum></citerefentry>, this program is started |
|
486 |
by the <application>Mandos</application> <citerefentry> |
|
487 |
<refentrytitle>password-agent</refentrytitle> |
|
488 |
<manvolnum>8mandos</manvolnum></citerefentry>, which in turn is |
|
489 |
started automatically by the <citerefentry> |
|
490 |
<refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum> |
|
491 |
</citerefentry> <quote>Password Agent</quote> system. |
|
492 |
</para> |
|
493 |
<para> |
|
494 |
In the case of a non-<citerefentry> |
|
495 |
<refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum> |
|
496 |
</citerefentry> environment, this program is started as a plugin |
|
497 |
of the <application>Mandos</application> <citerefentry> |
|
498 |
<refentrytitle>plugin-runner</refentrytitle> |
|
499 |
<manvolnum>8mandos</manvolnum></citerefentry>, which runs in the |
|
500 |
initial <acronym>RAM</acronym> disk environment because it is |
|
501 |
specified as a <quote>keyscript</quote> in the <citerefentry> |
|
502 |
<refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum> |
|
503 |
</citerefentry> file. |
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
504 |
</para> |
505 |
<para> |
|
506 |
This program could, theoretically, be used as a keyscript in |
|
507 |
<filename>/etc/crypttab</filename>, but it would then be |
|
144
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Improved wording. |
508 |
impossible to enter a password for the encrypted root disk at |
509 |
the console, since this program does not read from the console |
|
1277
by Teddy Hogeborn
Improve documentation |
510 |
at all. |
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
511 |
</para> |
512 |
</refsect1> |
|
513 |
|
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
514 |
<refsect1 id="exit_status"> |
515 |
<title>EXIT STATUS</title> |
|
516 |
<para> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
517 |
This program will exit with a successful (zero) exit status if a |
518 |
server could be found and the password received from it could be |
|
519 |
successfully decrypted and output on standard output. The |
|
520 |
program will exit with a non-zero exit status only if a critical |
|
491
by teddy at bsnet
* plugins.d/mandos-client.c (avahi_loop_with_timeout): Fix warning. |
521 |
error occurs. Otherwise, it will forever connect to any |
522 |
discovered <application>Mandos</application> servers, trying to |
|
523 |
get a decryptable password and print it. |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
524 |
</para> |
525 |
</refsect1> |
|
526 |
|
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
527 |
<refsect1 id="environment"> |
528 |
<title>ENVIRONMENT</title> |
|
738.1.2
by Teddy Hogeborn
mandos-client: Try to start a plugin to add and remove a local route. |
529 |
<variablelist> |
530 |
<varlistentry> |
|
531 |
<term><envar>MANDOSPLUGINHELPERDIR</envar></term> |
|
532 |
<listitem> |
|
533 |
<para> |
|
534 |
This environment variable will be assumed to contain the |
|
535 |
directory containing any helper executables. The use and |
|
1113
by Teddy Hogeborn
Grammar and documentation fix |
536 |
nature of these helper executables, if any, is purposely |
537 |
not documented. |
|
738.1.2
by Teddy Hogeborn
mandos-client: Try to start a plugin to add and remove a local route. |
538 |
</para> |
539 |
</listitem> |
|
540 |
</varlistentry> |
|
541 |
</variablelist> |
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
542 |
<para> |
738.1.2
by Teddy Hogeborn
mandos-client: Try to start a plugin to add and remove a local route. |
543 |
This program does not use any other environment variables, not |
544 |
even the ones provided by <citerefentry><refentrytitle |
|
143
by Teddy Hogeborn
* Makefile (mandos.8): Add dependency on "overview.xml" and |
545 |
>cryptsetup</refentrytitle><manvolnum>8</manvolnum> |
546 |
</citerefentry>. |
|
547 |
</para> |
|
548 |
</refsect1> |
|
142
by Teddy Hogeborn
* plugins.d/password-request.c (main): Change default GnuTLS priority |
549 |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
550 |
<refsect1 id="network-hooks"> |
551 |
<title>NETWORK HOOKS</title> |
|
552 |
<para> |
|
553 |
If a network interface like a bridge or tunnel is required to |
|
554 |
find a Mandos server, this requires the interface to be up and |
|
555 |
running before <command>&COMMANDNAME;</command> starts looking |
|
556 |
for Mandos servers. This can be accomplished by creating a |
|
557 |
<quote>network hook</quote> program, and placing it in a special |
|
558 |
directory.
|
|
559 |
</para> |
|
560 |
<para> |
|
561 |
Before the network is used (and again before program exit), any |
|
562 |
runnable programs found in the network hook directory are run |
|
563 |
with the argument <quote><literal>start</literal></quote> or |
|
564 |
<quote><literal>stop</literal></quote>. This should bring up or |
|
565 |
down, respectively, any network interface which |
|
566 |
<command>&COMMANDNAME;</command> should use. |
|
567 |
</para> |
|
568 |
<refsect2 id="hook-requirements"> |
|
569 |
<title>REQUIREMENTS</title> |
|
570 |
<para> |
|
571 |
A network hook must be an executable file, and its name must |
|
572 |
consist entirely of upper and lower case letters, digits, |
|
505.3.14
by teddy at bsnet
Hooks take new "modules" argument, and hook names can contain periods. |
573 |
underscores, periods, and hyphens. |
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
574 |
</para> |
575 |
<para> |
|
576 |
A network hook will receive one argument, which can be one of |
|
577 |
the following: |
|
578 |
</para> |
|
579 |
<variablelist> |
|
580 |
<varlistentry> |
|
581 |
<term><literal>start</literal></term> |
|
582 |
<listitem> |
|
583 |
<para> |
|
584 |
This should make the network hook create (if necessary) |
|
585 |
and bring up a network interface. |
|
586 |
</para> |
|
587 |
</listitem> |
|
588 |
</varlistentry> |
|
589 |
<varlistentry> |
|
590 |
<term><literal>stop</literal></term> |
|
591 |
<listitem> |
|
592 |
<para> |
|
593 |
This should make the network hook take down a network |
|
594 |
interface, and delete it if it did not exist previously. |
|
595 |
</para> |
|
596 |
</listitem> |
|
597 |
</varlistentry> |
|
598 |
<varlistentry> |
|
599 |
<term><literal>files</literal></term> |
|
600 |
<listitem> |
|
601 |
<para> |
|
505.3.14
by teddy at bsnet
Hooks take new "modules" argument, and hook names can contain periods. |
602 |
This should make the network hook print, <emphasis>one |
603 |
file per line</emphasis>, all the files needed for it to |
|
604 |
run. (These files will be copied into the initial RAM |
|
605 |
filesystem.) Typical use is for a network hook which is |
|
606 |
a shell script to print its needed binaries. |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
607 |
</para> |
608 |
<para> |
|
609 |
It is not necessary to print any non-executable files |
|
610 |
already in the network hook directory, these will be |
|
611 |
copied implicitly if they otherwise satisfy the name |
|
613
by Teddy Hogeborn
* plugins.d/mandos-client.xml: Fix minor grammar. |
612 |
requirements.
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
613 |
</para> |
614 |
</listitem> |
|
615 |
</varlistentry> |
|
505.3.14
by teddy at bsnet
Hooks take new "modules" argument, and hook names can contain periods. |
616 |
<varlistentry> |
617 |
<term><literal>modules</literal></term> |
|
618 |
<listitem> |
|
619 |
<para> |
|
620 |
This should make the network hook print, <emphasis>on |
|
621 |
separate lines</emphasis>, all the kernel modules needed |
|
622 |
for it to run. (These modules will be copied into the |
|
623 |
initial RAM filesystem.) For instance, a tunnel |
|
624 |
interface needs the |
|
625 |
<quote><literal>tun</literal></quote> module. |
|
626 |
</para> |
|
627 |
</listitem> |
|
628 |
</varlistentry> |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
629 |
</variablelist> |
630 |
<para> |
|
631 |
The network hook will be provided with a number of environment |
|
632 |
variables:
|
|
633 |
</para> |
|
634 |
<variablelist> |
|
635 |
<varlistentry> |
|
636 |
<term><envar>MANDOSNETHOOKDIR</envar></term> |
|
637 |
<listitem> |
|
638 |
<para> |
|
639 |
The network hook directory, specified to |
|
640 |
<command>&COMMANDNAME;</command> by the |
|
641 |
<option>--network-hook-dir</option> option. Note: this |
|
642 |
should <emphasis>always</emphasis> be used by the |
|
505.3.14
by teddy at bsnet
Hooks take new "modules" argument, and hook names can contain periods. |
643 |
network hook to refer to itself or any files in the hook |
644 |
directory it may require. |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
645 |
</para> |
646 |
</listitem> |
|
647 |
</varlistentry> |
|
648 |
<varlistentry> |
|
649 |
<term><envar>DEVICE</envar></term> |
|
650 |
<listitem> |
|
651 |
<para> |
|
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
652 |
The network interfaces, as specified to |
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
653 |
<command>&COMMANDNAME;</command> by the |
594.1.4
by Teddy Hogeborn
* plugins.d/mandos-client.c (get_flags): Don't clobber errno. |
654 |
<option>--interface</option> option, combined to one |
655 |
string and separated by commas. If this is set, and |
|
656 |
does not contain the interface a hook will bring up, |
|
657 |
there is no reason for a hook to continue. |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
658 |
</para> |
659 |
</listitem> |
|
660 |
</varlistentry> |
|
661 |
<varlistentry> |
|
662 |
<term><envar>MODE</envar></term> |
|
663 |
<listitem> |
|
664 |
<para> |
|
665 |
This will be the same as the first argument; |
|
666 |
i.e. <quote><literal>start</literal></quote>, |
|
505.3.14
by teddy at bsnet
Hooks take new "modules" argument, and hook names can contain periods. |
667 |
<quote><literal>stop</literal></quote>, |
668 |
<quote><literal>files</literal></quote>, or |
|
669 |
<quote><literal>modules</literal></quote>. |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
670 |
</para> |
671 |
</listitem> |
|
672 |
</varlistentry> |
|
673 |
<varlistentry> |
|
674 |
<term><envar>VERBOSITY</envar></term> |
|
675 |
<listitem> |
|
676 |
<para> |
|
677 |
This will be the <quote><literal>1</literal></quote> if |
|
678 |
the <option>--debug</option> option is passed to |
|
679 |
<command>&COMMANDNAME;</command>, otherwise |
|
680 |
<quote><literal>0</literal></quote>. |
|
681 |
</para> |
|
682 |
</listitem> |
|
683 |
</varlistentry> |
|
684 |
<varlistentry> |
|
685 |
<term><envar>DELAY</envar></term> |
|
686 |
<listitem> |
|
687 |
<para> |
|
688 |
This will be the same as the <option>--delay</option> |
|
535.1.1
by teddy at recompile
Add wireless network hook |
689 |
option passed to <command>&COMMANDNAME;</command>. Is |
690 |
only set if <envar>MODE</envar> is |
|
691 |
<quote><literal>start</literal></quote> or |
|
692 |
<quote><literal>stop</literal></quote>. |
|
693 |
</para> |
|
694 |
</listitem> |
|
695 |
</varlistentry> |
|
696 |
<varlistentry> |
|
697 |
<term><envar>CONNECT</envar></term> |
|
698 |
<listitem> |
|
699 |
<para> |
|
700 |
This will be the same as the <option>--connect</option> |
|
701 |
option passed to <command>&COMMANDNAME;</command>. Is |
|
702 |
only set if <option>--connect</option> is passed and |
|
703 |
<envar>MODE</envar> is |
|
704 |
<quote><literal>start</literal></quote> or |
|
705 |
<quote><literal>stop</literal></quote>. |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
706 |
</para> |
707 |
</listitem> |
|
708 |
</varlistentry> |
|
709 |
</variablelist> |
|
710 |
<para> |
|
711 |
A hook may not read from standard input, and should be |
|
712 |
restrictive in printing to standard output or standard error |
|
713 |
unless <varname>VERBOSITY</varname> is |
|
714 |
<quote><literal>1</literal></quote>. |
|
715 |
</para> |
|
716 |
</refsect2> |
|
717 |
</refsect1> |
|
718 |
|
|
224
by Teddy Hogeborn
* mandos-keygen.xml (FILES): Fixed id to be "files", not "file". |
719 |
<refsect1 id="files"> |
24.1.55
by Björn Påhlsson
updated some partial manual pages |
720 |
<title>FILES</title> |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
721 |
<variablelist> |
722 |
<varlistentry> |
|
723 |
<term><filename>/conf/conf.d/mandos/pubkey.txt</filename |
|
724 |
></term>
|
|
725 |
<term><filename>/conf/conf.d/mandos/seckey.txt</filename |
|
726 |
></term>
|
|
727 |
<listitem> |
|
728 |
<para> |
|
729 |
OpenPGP public and private key files, in <quote>ASCII |
|
730 |
Armor</quote> format. These are the default file names, |
|
731 |
they can be changed with the <option>--pubkey</option> and |
|
732 |
<option>--seckey</option> options. |
|
733 |
</para> |
|
734 |
</listitem> |
|
735 |
</varlistentry> |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
736 |
<varlistentry> |
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
737 |
<term><filename>/conf/conf.d/mandos/tls-pubkey.pem</filename |
738 |
></term>
|
|
739 |
<term><filename>/conf/conf.d/mandos/tls-privkey.pem</filename |
|
740 |
></term>
|
|
741 |
<listitem> |
|
742 |
<para> |
|
743 |
Public and private raw key files, in <quote>PEM</quote> |
|
744 |
format. These are the default file names, they can be |
|
745 |
changed with the <option>--tls-pubkey</option> and |
|
746 |
<option>--tls-privkey</option> options. |
|
747 |
</para> |
|
748 |
</listitem> |
|
749 |
</varlistentry> |
|
750 |
<varlistentry> |
|
505.3.13
by Teddy Hogeborn
* debian/mandos-client.README.Debian: Document network hook facility. |
751 |
<term><filename |
752 |
class="directory">/lib/mandos/network-hooks.d</filename></term> |
|
753 |
<listitem> |
|
754 |
<para> |
|
755 |
Directory where network hooks are located. Change this |
|
756 |
with the <option>--network-hook-dir</option> option. See |
|
757 |
<xref linkend="network-hooks"/>. |
|
758 |
</para> |
|
759 |
</listitem> |
|
760 |
</varlistentry> |
|
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
761 |
</variablelist> |
118
by Teddy Hogeborn
* mandos-keygen.xml (SYNOPSIS): Fixed tags. Unify short and long |
762 |
</refsect1> |
24.1.55
by Björn Påhlsson
updated some partial manual pages |
763 |
|
821
by Teddy Hogeborn
Add bug reporting information to manual pages |
764 |
<refsect1 id="bugs"> |
765 |
<title>BUGS</title> |
|
766 |
<xi:include href="../bugs.xml"/> |
|
767 |
</refsect1> |
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
768 |
|
87
by Teddy Hogeborn
* Makefile: Bug fix: fixed creation of man pages in "plugins.d". |
769 |
<refsect1 id="example"> |
770 |
<title>EXAMPLE</title> |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
771 |
<para> |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
772 |
Note that normally, command line options will not be given |
1277
by Teddy Hogeborn
Improve documentation |
773 |
directly, but passed on via the program responsible for starting |
774 |
this program; see <xref linkend="overview"/>. |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
775 |
</para> |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
776 |
<informalexample> |
777 |
<para> |
|
618
by Teddy Hogeborn
* mandos: Bug fix: Make boolean options work from the config file |
778 |
Normal invocation needs no options, if the network interfaces |
592
by Teddy Hogeborn
* plugins.d/mandos-client.xml (EXAMPLE): Doc fix: Network interface is |
779 |
can be automatically determined: |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
780 |
</para> |
781 |
<para> |
|
782 |
<userinput>&COMMANDNAME;</userinput> |
|
783 |
</para> |
|
784 |
</informalexample> |
|
785 |
<informalexample> |
|
786 |
<para> |
|
618
by Teddy Hogeborn
* mandos: Bug fix: Make boolean options work from the config file |
787 |
Search for Mandos servers (and connect to them) using one |
788 |
specific interface: |
|
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
789 |
</para> |
790 |
<para> |
|
791 |
<!-- do not wrap this line --> |
|
792 |
<userinput>&COMMANDNAME; --interface eth1</userinput> |
|
793 |
</para> |
|
794 |
</informalexample> |
|
795 |
<informalexample> |
|
796 |
<para> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
797 |
Run in debug mode, and use custom keys: |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
798 |
</para> |
799 |
<para> |
|
151
by Teddy Hogeborn
* plugins.d/password-request.xml (SYNOPSYS): Removed "--keydir". |
800 |
|
801 |
<!-- do not wrap this line -->
|
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
802 |
<userinput>&COMMANDNAME; --debug --pubkey keydir/pubkey.txt --seckey keydir/seckey.txt --tls-pubkey keydir/tls-pubkey.pem --tls-privkey keydir/tls-privkey.pem</userinput> |
151
by Teddy Hogeborn
* plugins.d/password-request.xml (SYNOPSYS): Removed "--keydir". |
803 |
|
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
804 |
</para> |
805 |
</informalexample> |
|
806 |
<informalexample> |
|
807 |
<para> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
808 |
Run in debug mode, with custom keys, and do not use Zeroconf |
304
by Teddy Hogeborn
Four new interrelated features: |
809 |
to locate a server; connect directly to the IPv6 link-local |
810 |
address <quote><systemitem class="ipaddress" |
|
811 |
>fe80::aede:48ff:fe71:f6f2</systemitem></quote>, port 4711, |
|
812 |
using interface eth2: |
|
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
813 |
</para> |
814 |
<para> |
|
815 |
||
816 |
<!-- do not wrap this line -->
|
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
817 |
<userinput>&COMMANDNAME; --debug --pubkey keydir/pubkey.txt --seckey keydir/seckey.txt --tls-pubkey keydir/tls-pubkey.pem --tls-privkey keydir/tls-privkey.pem --connect fe80::aede:48ff:fe71:f6f2:4711 --interface eth2</userinput> |
146
by Teddy Hogeborn
* plugins.d/password-request.xml (OPTIONS): Improved wording. |
818 |
|
819 |
</para> |
|
820 |
</informalexample> |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
821 |
</refsect1> |
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
822 |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
823 |
<refsect1 id="security"> |
824 |
<title>SECURITY</title> |
|
825 |
<para> |
|
1127
by Teddy Hogeborn
Add dracut(8) support |
826 |
This program assumes that it is set-uid to root, and will switch |
827 |
back to the original (and presumably non-privileged) user and |
|
828 |
group after bringing up the network interface. |
|
147
by Teddy Hogeborn
* plugins.d/password-request.c (init_gnutls_global): Improved wording |
829 |
</para> |
830 |
<para> |
|
831 |
To use this program for its intended purpose (see <xref |
|
832 |
linkend="purpose"/>), the password for the root file system will |
|
833 |
have to be given out to be stored in a server computer, after |
|
834 |
having been encrypted using an OpenPGP key. This encrypted data |
|
835 |
which will be stored in a server can only be decrypted by the |
|
836 |
OpenPGP key, and the data will only be given out to those |
|
837 |
clients who can prove they actually have that key. This key, |
|
838 |
however, is stored unencrypted on the client side in its initial |
|
839 |
<acronym>RAM</acronym> disk image file system. This is normally |
|
840 |
readable by all, but this is normally fixed during installation |
|
841 |
of this program; file permissions are set so that no-one is able |
|
842 |
to read that file. |
|
843 |
</para> |
|
844 |
<para> |
|
845 |
The only remaining weak point is that someone with physical |
|
846 |
access to the client hard drive might turn off the client |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
847 |
computer, read the OpenPGP and TLS keys directly from the hard |
848 |
drive, and communicate with the server. To safeguard against |
|
849 |
this, the server is supposed to notice the client disappearing |
|
850 |
and stop giving out the encrypted data. Therefore, it is |
|
851 |
important to set the timeout and checker interval values tightly |
|
852 |
on the server. See <citerefentry><refentrytitle |
|
147
by Teddy Hogeborn
* plugins.d/password-request.c (init_gnutls_global): Improved wording |
853 |
>mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>. |
854 |
</para> |
|
855 |
<para> |
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
856 |
It will also help if the checker program on the server is |
857 |
configured to request something from the client which can not be |
|
708
by Teddy Hogeborn
mandos-keygen: Generate "checker" option to use SSH fingerprints. |
858 |
spoofed by someone else on the network, like SSH server key |
859 |
fingerprints, and unlike unencrypted <acronym>ICMP</acronym> |
|
860 |
echo (<quote>ping</quote>) replies. |
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
861 |
</para> |
862 |
<para> |
|
863 |
<emphasis>Note</emphasis>: This makes it completely insecure to |
|
864 |
have <application >Mandos</application> clients which dual-boot |
|
865 |
to another operating system which is <emphasis>not</emphasis> |
|
866 |
trusted to keep the initial <acronym>RAM</acronym> disk image |
|
867 |
confidential.
|
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
868 |
</para> |
869 |
</refsect1> |
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
870 |
|
24.1.55
by Björn Påhlsson
updated some partial manual pages |
871 |
<refsect1 id="see_also"> |
872 |
<title>SEE ALSO</title> |
|
114
by Teddy Hogeborn
* mandos-clients.conf.xml (SEE ALSO): Alphabetized, as per |
873 |
<para> |
493
by Teddy Hogeborn
* Makefile (DOCS): Added "intro.8mandos". |
874 |
<citerefentry><refentrytitle>intro</refentrytitle> |
875 |
<manvolnum>8mandos</manvolnum></citerefentry>, |
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
876 |
<citerefentry><refentrytitle>cryptsetup</refentrytitle> |
877 |
<manvolnum>8</manvolnum></citerefentry>, |
|
878 |
<citerefentry><refentrytitle>crypttab</refentrytitle> |
|
879 |
<manvolnum>5</manvolnum></citerefentry>, |
|
114
by Teddy Hogeborn
* mandos-clients.conf.xml (SEE ALSO): Alphabetized, as per |
880 |
<citerefentry><refentrytitle>mandos</refentrytitle> |
881 |
<manvolnum>8</manvolnum></citerefentry>, |
|
1277
by Teddy Hogeborn
Improve documentation |
882 |
<citerefentry><refentrytitle>password-agent</refentrytitle> |
114
by Teddy Hogeborn
* mandos-clients.conf.xml (SEE ALSO): Alphabetized, as per |
883 |
<manvolnum>8mandos</manvolnum></citerefentry>, |
884 |
<citerefentry><refentrytitle>plugin-runner</refentrytitle> |
|
885 |
<manvolnum>8mandos</manvolnum></citerefentry> |
|
886 |
</para> |
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
887 |
<variablelist> |
888 |
<varlistentry> |
|
889 |
<term> |
|
890 |
<ulink url="http://www.zeroconf.org/">Zeroconf</ulink> |
|
891 |
</term> |
|
892 |
<listitem> |
|
893 |
<para> |
|
894 |
Zeroconf is the network protocol standard used for finding |
|
895 |
Mandos servers on the local network. |
|
896 |
</para> |
|
897 |
</listitem> |
|
898 |
</varlistentry> |
|
899 |
<varlistentry> |
|
900 |
<term> |
|
1121
by Teddy Hogeborn
Change URL for Avahi to use HTTPS |
901 |
<ulink url="https://www.avahi.org/">Avahi</ulink> |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
902 |
</term> |
903 |
<listitem> |
|
904 |
<para> |
|
905 |
Avahi is the library this program calls to find Zeroconf |
|
906 |
services.
|
|
907 |
</para> |
|
908 |
</listitem> |
|
909 |
</varlistentry> |
|
910 |
<varlistentry> |
|
911 |
<term> |
|
867
by Teddy Hogeborn
Update old GnuTLS link in mandos-client(8mandos). |
912 |
<ulink url="https://www.gnutls.org/">GnuTLS</ulink> |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
913 |
</term> |
914 |
<listitem> |
|
915 |
<para> |
|
916 |
GnuTLS is the library this client uses to implement TLS for |
|
917 |
communicating securely with the server, and at the same time |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
918 |
send the public key to the server. |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
919 |
</para> |
920 |
</listitem> |
|
921 |
</varlistentry> |
|
922 |
<varlistentry> |
|
923 |
<term> |
|
868
by Teddy Hogeborn
Change all http:// URLs to https:// wherever possible. |
924 |
<ulink url="https://www.gnupg.org/related_software/gpgme/" |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
925 |
>GPGME</ulink> |
926 |
</term> |
|
927 |
<listitem> |
|
928 |
<para> |
|
929 |
GPGME is the library used to decrypt the OpenPGP data sent |
|
930 |
by the server. |
|
931 |
</para> |
|
932 |
</listitem> |
|
933 |
</varlistentry> |
|
934 |
<varlistentry> |
|
935 |
<term> |
|
936 |
RFC 4291: <citetitle>IP Version 6 Addressing |
|
937 |
Architecture</citetitle> |
|
938 |
</term> |
|
939 |
<listitem> |
|
940 |
<variablelist> |
|
941 |
<varlistentry> |
|
942 |
<term>Section 2.2: <citetitle>Text Representation of |
|
943 |
Addresses</citetitle></term> |
|
944 |
<listitem><para/></listitem> |
|
945 |
</varlistentry> |
|
946 |
<varlistentry> |
|
947 |
<term>Section 2.5.5.2: <citetitle>IPv4-Mapped IPv6 |
|
948 |
Address</citetitle></term> |
|
949 |
<listitem><para/></listitem> |
|
950 |
</varlistentry> |
|
951 |
<varlistentry> |
|
952 |
<term>Section 2.5.6, <citetitle>Link-Local IPv6 Unicast |
|
953 |
Addresses</citetitle></term> |
|
954 |
<listitem> |
|
955 |
<para> |
|
956 |
This client uses IPv6 link-local addresses, which are |
|
957 |
immediately usable since a link-local addresses is |
|
613
by Teddy Hogeborn
* plugins.d/mandos-client.xml: Fix minor grammar. |
958 |
automatically assigned to a network interface when it |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
959 |
is brought up. |
960 |
</para> |
|
961 |
</listitem> |
|
962 |
</varlistentry> |
|
963 |
</variablelist> |
|
964 |
</listitem> |
|
965 |
</varlistentry> |
|
966 |
<varlistentry> |
|
967 |
<term> |
|
869
by Teddy Hogeborn
Update RFC references to their modern equivalents. |
968 |
RFC 5246: <citetitle>The Transport Layer Security (TLS) |
969 |
Protocol Version 1.2</citetitle> |
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
970 |
</term> |
971 |
<listitem> |
|
972 |
<para> |
|
869
by Teddy Hogeborn
Update RFC references to their modern equivalents. |
973 |
TLS 1.2 is the protocol implemented by GnuTLS. |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
974 |
</para> |
975 |
</listitem> |
|
976 |
</varlistentry> |
|
977 |
<varlistentry> |
|
978 |
<term> |
|
979 |
RFC 4880: <citetitle>OpenPGP Message Format</citetitle> |
|
980 |
</term> |
|
981 |
<listitem> |
|
982 |
<para> |
|
983 |
The data received from the server is binary encrypted |
|
984 |
OpenPGP data. |
|
985 |
</para> |
|
986 |
</listitem> |
|
987 |
</varlistentry> |
|
988 |
<varlistentry> |
|
989 |
<term> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
990 |
RFC 7250: <citetitle>Using Raw Public Keys in Transport |
991 |
Layer Security (TLS) and Datagram Transport Layer Security |
|
992 |
(DTLS)</citetitle> |
|
993 |
</term> |
|
994 |
<listitem> |
|
995 |
<para> |
|
996 |
This is implemented by GnuTLS in version 3.6.6 and is, if |
|
997 |
present, used by this program so that raw public keys can be |
|
998 |
used.
|
|
999 |
</para> |
|
1000 |
</listitem> |
|
1001 |
</varlistentry> |
|
1002 |
<varlistentry> |
|
1003 |
<term> |
|
869
by Teddy Hogeborn
Update RFC references to their modern equivalents. |
1004 |
RFC 6091: <citetitle>Using OpenPGP Keys for Transport Layer |
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
1005 |
Security</citetitle> |
1006 |
</term> |
|
1007 |
<listitem> |
|
1008 |
<para> |
|
962
by Teddy Hogeborn
Add support for using raw public keys in TLS (RFC 7250) |
1009 |
This is implemented by GnuTLS before version 3.6.0 and is, |
1010 |
if present, used by this program so that OpenPGP keys can be |
|
1011 |
used.
|
|
148
by Teddy Hogeborn
* plugins.d/password-request.xml (OVERVIEW): Refer to |
1012 |
</para> |
1013 |
</listitem> |
|
1014 |
</varlistentry> |
|
1015 |
</variablelist> |
|
81
by Teddy Hogeborn
* Makefile (GNUTLS_CFLAGS, GNUTLS_LIBS, AVAHI_CFLAGS, AVAHI_LIBS, |
1016 |
</refsect1> |
24.1.23
by Björn Påhlsson
Added manual pages for: |
1017 |
</refentry>
|
182
by Teddy Hogeborn
* Makefile (install): Use "install-client-nokey". |
1018 |
|
111
by Teddy Hogeborn
* mandos-clients.conf.xml (ENTITY TIMESTAMP): New. Automatically |
1019 |
<!-- Local Variables: -->
|
1020 |
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
|
|
1021 |
<!-- time-stamp-end: "[\"']>" -->
|
|
1022 |
<!-- time-stamp-format: "%:y-%02m-%02d" -->
|
|
1023 |
<!-- End: -->
|