1
1
This NEWS file records noteworthy changes, very tersely.
2
2
See the manual for detailed information.
4
Version 1.8.18 (2024-11-24)
6
** Detect GPGME version correctly when building initramfs.
8
** Only connect D-Bus when necessary.
9
** If a network socket is externally configured, avoid closing it, and
10
also make it non-inheritable.
11
** mandos-keygen: Support ssh-keyscan from OpenSSH 9.8 or later.
12
** mandos-monitor: Avoid debug messages and deprecation warnings from
15
Version 1.8.17 (2024-09-12)
16
* Improve documentation slightly, especially how to add extra options
17
to mandos-client when using dracut with systemd.
18
* Make life easier for distribution packagers by making sure that
19
"make install" creates all required directories.
21
** When seeing clients.conf entries lacking both fingerprint and
22
key_id, show a warning and ignore them instead of crashing,
24
** Suppress most spurious compiler warnings.
26
** In initramfs-tools-hook, be aware of new name of GPGME library,
28
** In password-agent(8mandos), look for a Plymouth process in
29
alphabetical order, not in reverse alphabetical order. This is
30
technically a user-visible change, but should never matter in
33
Version 1.8.16 (2023-02-08)
35
** Bug fix: Start client checkers after a random delay
37
Version 1.8.15 (2022-04-25)
39
** Bug fix: When running "mandos-keygen --password" to read a password
40
interactively (to save in a section in the clients.conf file),
41
backslashes in the password are no longer interpreted as backslash
43
** GnuTLS debug output no longer has a "b'" prefix.
45
Version 1.8.14 (2021-02-03)
47
** Create /dev/fd symlink (if necessary) in plugin-runner(8mandos) and
48
mandos-client(8mandos) (Workaround for Debian bug #981302)
50
Version 1.8.13 (2020-11-30)
52
** Fix unreliable test in password-agent(8mandos).
54
Version 1.8.12 (2020-07-04)
56
** Fix compatibility with the GNU C Library version 2.31.
57
** In initramfs-tools boots, only use setsid(1) when available.
59
Version 1.8.11 (2020-04-08)
61
** Fix file descriptor leak when adding or removing local routes to
62
unreachable hosts on the local network.
64
Version 1.8.10 (2020-03-21)
66
** Fix bug when setting a client's D-Bus "Secret" property
67
** Start client checkers after a random delay
68
** When using systemd, allow easier modification of server options
69
** Better log messages in mandos-monitor
71
** When using dracut & systemd, allow easier modification of options
73
Version 1.8.9 (2019-09-03)
74
* No user-visible changes
76
Version 1.8.8 (2019-08-18)
77
* No user-visible changes
79
Version 1.8.7 (2019-08-05)
81
** Always compile with LFS (Large File Support) enabled.
83
** Improve intro(8mandos) manual page to cover dracut(8) support.
85
Version 1.8.6 (2019-08-03)
87
** dracut support: In password-agent, properly ignore deleted and
88
renamed question files, and also fix memory alignment issue.
90
Version 1.8.5 (2019-07-30)
92
** Support dracut(8) as well as initramfs-tools(7).
93
** Minor bug fix: Allow the mandos-keygen --passfile option to use
94
passfiles with names starting with "-".
95
** Document known limitation of mandos-keygen --password; it strips
96
white space from start and end of the password.
98
** Bug fix: The server used to fail to restart if the "port" setting
99
was used. This has been fixed.
100
** Minor bug fix: Reap zombies left over from checker runs. (Debian
103
Version 1.8.4 (2019-04-09)
105
** Fix minor memory leak in plugin-runner.
107
** mandos-ctl now has a --debug option to show D-Bus calls.
109
Version 1.8.3 (2019-02-11)
110
* No user-visible changes.
112
Version 1.8.2 (2019-02-10)
114
** In mandos-keygen, ignore failures to remove files in some cases.
116
Version 1.8.1 (2019-02-10)
118
** Only generate TLS keys using GnuTLS' certtool, of sufficient
119
version. Key generation of TLS keys will not happen until a
120
version of GnuTLS is installed with support for raw public keys.
121
** Remove any bad keys created by 1.8.0 and openssl.
123
** On installation, edit clients.conf and remove the same bad key ID
124
which was erroneously reported by all 1.8.0 clients. Also do not
125
trust this key ID in the server.
127
Version 1.8.0 (2019-02-10)
129
** Use new TLS keys for server communication and identification.
130
With GnuTLS 3.6 or later, OpenPGP keys are no longer supported.
131
The client can now use the new "raw public keys" (RFC 7250) API
132
instead, using GnuTLS 3.6.6. Please note: This *requires* new key
133
IDs to be added to server's client.conf file.
134
** New --tls-privkey and --tls-pubkey options to load TLS key files.
135
If GnuTLS is too old, these options do nothing.
137
** Supports either old or new GnuTLS.
138
The server now supports using GnuTLS 3.6.6 and clients connecting
139
with "raw public keys" as identification. The server will read
140
both fingerprints and key IDs from clients.conf file, and will use
141
either one or the other, depending on what is supported by GnuTLS
142
on the system. Please note: both are *not* supported at once; if
143
one type is supported by GnuTLS, all values of the other type from
144
clients.conf are ignored.
146
Version 1.7.20 (2018-08-19)
148
** Fix: Adapt to the Debian cryptsetup package 2.0.3 or later.
149
Important: in that version or later, the plugins "askpass-fifo",
150
"password-prompt", and "plymouth" will no longer be run, since they
151
would conflict with what cryptsetup is doing. Other plugins, such
152
as mandos-client and any user-supplied plugins, will still run.
153
** Better error message if failing to decrypt secret data
154
** Check for (and report) any key import failure from GPGME
155
** Better error message if self-signature verification fails
156
** Set system clock if not set; required by GnuPG for key import
157
** When debugging plugin-runner, it will now show starting plugins
159
Version 1.7.19 (2018-02-22)
161
** Do not print "unlink(...): No such file or directory".
162
** Bug fixes: Fix file descriptor leaks.
163
** Bug fix: Don't use leak sanitizer with leaking libraries.
165
Version 1.7.18 (2018-02-12)
167
** Bug fix: Revert faulty fix for a nonexistent bug in the
170
Version 1.7.17 (2018-02-10)
172
** Bug fix: Fix a memory leak in the plugin-runner
173
** Bug fix: Fix memory leaks in the plymouth plugin
175
Version 1.7.16 (2017-08-20)
177
** Bug fix: ignore "resumedev" entries in initramfs' cryptroot file
178
** Bug fix in plymouth plugin: fix memory leak, avoid warning output
180
Version 1.7.15 (2017-02-23)
182
** Bug fix: Respect the mandos.conf "zeroconf" and "restore" options
184
** Bug fix in mandos-keygen: Handle backslashes in passphrases
186
Version 1.7.14 (2017-01-25)
188
** Use "Requisite" instead of "RequisiteOverridable" in systemd
191
Version 1.7.13 (2016-10-08)
193
** Minor bug fix: Don't ask for passphrase or fail when generating
194
keys using GnuPG 2.1 in a chrooted environment.
196
Version 1.7.12 (2016-10-05)
198
** Bug fix: Don't crash after exit() when using DH parameters file
200
Version 1.7.11 (2016-10-01)
202
** Security fix: Don't compile with AddressSanitizer
204
** Bug fix: Find GnuTLS library when gnutls28-dev is not installed
205
** Bug fix: Include "Expires" and "Last Checker Status" in mandos-ctl
207
** New option for mandos-ctl: --dump-json
209
Version 1.7.10 (2016-06-23)
211
** Security fix: restrict permissions of /etc/mandos/plugin-helpers
213
** Bug fix: Make the --interface flag work with Python 2.7 when "cc"
216
Version 1.7.9 (2016-06-22)
218
** Do not include intro(8mandos) man page
220
Version 1.7.8 (2016-06-21)
222
** Include intro(8mandos) man page
223
** mandos-keygen: Use ECDSA SSH keys by default
224
** Bug fix: Work with GnuPG 2 when booting (Debian bug #819982)
225
by copying /usr/bin/gpg-agent into initramfs
227
** Bug fix: Work with GnuPG 2 (don't use --no-use-agent option)
228
** Bug fix: Make the --interface option work when using Python 2.7
229
by trying harder to find SO_BINDTODEVICE
231
Version 1.7.7 (2016-03-19)
233
** Fix bug in Plymouth client, broken since 1.7.2
235
Version 1.7.6 (2016-03-13)
237
** Fix bug where stopping server would time out
238
** Make server runnable with Python 3
240
Version 1.7.5 (2016-03-08)
242
** Fix security restrictions in systemd service file.
243
** Work around bug where stopping server would time out
245
Version 1.7.4 (2016-03-05)
247
** Bug fix: Tolerate errors from configure_networking (Debian Bug
249
** Compilation: Only use sanitizing options which work with the
250
compiler used when building. This should fix compilation with GCC
251
4.9 on mips, mipsel, and s390x.
253
** Add extra security restrictions in systemd service file.
255
Version 1.7.3 (2016-02-29)
257
** Bug fix: Remove new type of keyring directory user by GnuPG 2.1.
258
** Bug fix: Remove "nonnull" attribute from a function argument, which
259
would otherwise generate a spurious runtime warning.
261
Version 1.7.2 (2016-02-28)
263
** Stop using python-gnutls library; it was not updated to GnuTLS 3.3.
264
** Bug fix: Only send D-Bus signal ClientRemoved if using D-Bus.
265
** Use GnuPG 2 if available.
267
** Compile with various sanitizing flags.
269
Version 1.7.1 (2015-10-24)
271
** Bug fix: Can now really find Mandos server even if the server has
272
an IPv6 address on a network other than the one which the Mandos
275
Version 1.7.0 (2015-08-10)
277
** Bug fix: Handle local Zeroconf service name collisions better.
278
** Bug fix: Finally fix "ERROR: Child process vanished" bug.
279
** Bug fix: Fix systemd service file to start server correctly.
280
** Bug fix: Be compatible with old 2048-bit DSA keys.
281
** The D-Bus API now provides the standard D-Bus ObjectManager
282
interface, and deprecates older functionality. See the DBUS-API
283
file for the currently recommended API. Note: the original API
284
still works, but is deprecated.
286
** Can now find Mandos server even if the server has an IPv6 address
287
on a network without IPv6 Router Advertisment (like if the Mandos
288
client itself is the router, or there is an IPv6 router advertising
289
a network other than the one which the Mandos server is on.)
290
** Use a better value than 1024 for the default number of DH bits.
291
This better value is either provided by a DH parameters file (see
292
below) or an appropriate number of DH bits is determined based on
294
** Bug fix: mandos-keygen now generates correct output for the
295
"Checker" variable even if the SSH server on the Mandos client has
296
multiple SSH key types.
297
** Can now use pre-generated Diffie-Hellman parameters from a file.
299
Version 1.6.9 (2014-10-05)
301
** Changed to emit standard D-Bus signal when D-Bus properties change.
302
(The old signal is still emitted too, but marked as deprecated.)
304
Version 1.6.8 (2014-08-06)
306
** Bug fix: mandos-keygen now generates working SSH checker commands.
308
** Bug fix: "mandos-monitor" now really redraws screen on Ctrl-L.
309
** Now requires Python 2.7.
311
Version 1.6.7 (2014-07-17)
313
** Bug fix: Now compatible with GPGME 1.5.0.
314
** Bug fix: Fixed minor memory leaks.
316
** "mandos-monitor" now has verbose logging, toggleable with "v".
318
Version 1.6.6 (2014-07-13)
320
** If client host has an SSH server, "mandos-keygen --password" now
321
outputs "checker" option which uses "ssh-keyscan"; this is more
322
secure than the default "fping" checker.
323
** Bug fix: allow "." in network hook names, to match documentation.
324
** Better error messages.
326
** New --no-zeroconf option.
327
** Bug fix: Fix --servicename option, broken since 1.6.4.
328
** Bug fix: Fix --socket option work for --socket=0.
330
4
Version 1.6.5 (2014-05-11)
332
6
** Work around bug in GnuPG <http://bugs.g10code.com/gnupg/issue1622>