Package: xymon-client Version: 4.3.28-2 Severity: important Tag: moreinfo Control: found -1 4.3.28-2+deb9u1 Control: found -1 4.3.28-5+deb10u1 Control: found -1 4.3.30-1
With the recent security updates, but also in Debian Unstable I noticed that some installations did no more report to the correct server or the same list of servers anymore. All those had one or more older server IPs in the debconf database and a different set in /etc/default/xymon-client, either manually edited or via config management like ansible. xymon-client.postinst edits two variables in /etc/default/xymon-client unconditionally and always sets the IP address(es) stored in the debconf database. It though only occurred to me often enough to see the pattern in the past months — and it's unclear to me why not earlier. Because the xymon-client.postinst script hasn't been touched since 2015. And the last changes to the debconf part were in 2014 when the question about automatic migration had been added. And the most recent bigger change was in 2012. There's a though chance that I ran into it more often, because I toyed around with reporting to multiple Xymon servers as well as with Xymon reporting over SSL and IPv6 via stunnel and probably edited /etc/default/xymon-client manually rather often than using "dpkg-reconfigure -plow xymon-client" for it (which is the way to workaround this issue permanently — until the next manual edit of the file ;-). So it overwrites the configure file with local changes by the local admin with a value set by the local admin (earlier). So both are local configurations with two differents systems/styles/methods. They'rejust not kept in sync and any diversion is not reported or cared about. I just reread https://www.debian.org/doc/debian-policy/ch-files.html#behavior (§10.7.3) — but actually both, "must not overwrite or otherwise mangle the user’s configuration without asking" and "must not ask unnecessary questions (particularly during upgrades)" applies and seems to contradict here (a bit at least). I though tend to have the opinion that the current state is not good, especially annoying and potentially a policy violation (§10.7.3) — although it's mostly two local config sources not being in sync, but both are local changes from the local admin. The admin is though likely not aware of it. Potential solutions: * ucf — Potentially complex and error-prone. The function create_sshdconfig() from /var/lib/dpkg/info/openssh-server.postinst could be used as a pattern for a solution based on ucf. * Adding a hint to the file that the values of two variables in the file are maintained via debconf and might be overwritten upon package (security) upgrades if their values are edited manually. (Probably doesn't help much if a configuration management ala Ansible is used.) Suggestions, comments and opinions on this issue are welcome — and actually wanted, hence the moreinfo tag. :-) -- System Information: Debian Release: 10.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-debug'), (500, 'stable'), (400, 'proposed-updates-debug'), (400, 'proposed-updates') Architecture: amd64 (x86_64) Kernel: Linux 4.19.0-6-amd64 (SMP w/4 CPU cores) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) LSM: AppArmor: enabled Versions of packages xymon-client depends on: ii adduser 3.118 ii debconf [debconf-2.0] 1.5.71 ii libc6 2.28-10 ii libssl1.1 1.1.1c-1 ii lsb-base 10.2019051400 ii net-tools 1.60+git20180626.aebd88e-1 ii procps 2:3.3.15-2 xymon-client recommends no packages. Versions of packages xymon-client suggests: ii hobbit-plugins 20190404

