This PR adds a "Binary Logging" page to configure log format, file size and retention, rotate or purge logs, and support restore sessions that do not write back to binary logs.
ⓘ Pass --new-key when the saved key type or RSA size differs from the request. This allows Certbot to replace the key once while keeping key reuse enabled.
Only pass --rsa-key-size for RSA certificates.
https://github.com/webmin/webmin/issues/2822
This PR adds DNF 4 and DNF 5 versionlock support to Package Updates, including listing, holding, unholding, and explicitly updating held packages.
DNF 4 requires the versionlock plugin to be installed, while DNF 5 supports versionlock natively.
Hold controls are shown only when the versionlock command is available.
It also previews DNF transactions before confirmation so users can see which packages will be installed or updated in the table, similar to APT.
This PR adds the ability for the logging pages to hand the Miniserv access and error logs, and the Webmin actions log, to logrotate instead of having Miniserv periodically delete them. The generated section uses copy-truncate rotation, since Miniserv only reopens its error log when the file disappears.
The option only appears when the Log File Rotation module is available and configured correctly.
Add a Logging page to the Usermin Configuration module for the access-log settings, guarded by a new "log" ACL.
Also, Webmin and Usermin logging pages add new an "Error log destination" choice on systemd systems. Selecting the journal sets errorlog=- and installs a local StandardError=journal drop-in, leaving the packaged unit untouched.
https://forum.virtualmin.com/t/miniserv-webserver-log-growing-too-big-should-be-rotated/136562/10?u=ilia
ⓘ Do not return a short name from /etc/hostname when the full name is requested; resolve it with hostname -f first, honoring the no_hostname_f option, and otherwise fall back to the existing file-based logic.
Also check for /run/systemd/system instead of reading /proc/1/comm as it's much cheaper.
Fixes#2054
ⓘ Only the .htaccess path was checked against the allowed directories. The users and groups file paths could be absolute and were saved unchecked, then written to later.
V2
ⓘ The password file path was taken from the request without any check, so it could point at any file on the system, which was then read or written.
It is now checked against the allowed directories, the same way it already is when the path is first set.
W1 and V4
This small PR fixes deletion of bridges with arbitrary names, like vmbr0, by honoring the boot config bridge flag instead of relying only on name patterns.
It also makes the Debian config parser treat any interface with bridge_ports as a bridge, which previously caused bridge options to be lost on re-save.
This PR fixes the Users and Groups module to honor the "Unix users who can be edited" ACL when editing group members.
Before, the group edit form listed all system users in the members chooser and accepted any user on save, regardless of the ACL.
Now only editable users are offered, and adding or removing a non-editable user is rejected.
Fixes#2464